模組初始化及配置說明
模組初始化
在Web程式中監聽器(Listener)是最早被容器初始化的,所以WebMVC模組是由監聽器負責對YMP框架進行初始化:
監聽器(Listener):net.ymate.platform.webmvc.support.WebAppEventListener
處理瀏覽器請求並與模組中控制器匹配、路由的過程可分別由過濾器(Filter)與服務端程式(Servlet)完成:
過濾器(Filter):net.ymate.platform.webmvc.support.DispatchFilter
#服務端程式(Servlet) :net.ymate.platform.webmvc.support.DispatchServlet
#首先看完整的web.xml設定檔:
<?xml version="1.0" encoding="UTF-8"?> <web-app id="WebApp_ID" version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <listener> <listener-class>net.ymate.platform.webmvc.support.WebAppEventListener</listener-class> </listener> <filter> <filter-name>DispatchFilter</filter-name> <filter-class>net.ymate.platform.webmvc.support.DispatchFilter</filter-class> </filter> <filter-mapping> <filter-name>DispatchFilter</filter-name> <url-pattern>/*</url-pattern> <dispatcher>REQUEST</dispatcher> <dispatcher>FORWARD</dispatcher> </filter-mapping> <!-- <servlet> <servlet-name>DispatchServlet</servlet-name> <servlet-class>net.ymate.platform.webmvc.support.DispatchServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>DispatchServlet</servlet-name> <url-pattern>/service/*</url-pattern> </servlet-mapping> --> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
模組配置
WebMVC模組的基本初始化參數配置:
#
#------------------------------------- # 基本初始化参数 #------------------------------------- # 控制器请求处理器,可选值为已知处理器名称或自定义处理器类名称,自定义类需实现net.ymate.platform.webmvc.IRequestProcessor接口,默认为default,目前支持已知处理器[default|json|xml|...] ymp.configs.webmvc.request_processor_class= # 异常错误处理器,可选参数,此类需实现net.ymate.platform.webmvc.IWebErrorProcessor接口 ymp.configs.webmvc.error_processor_class= # 缓存处理器,可选参数,此类需实现net.ymate.platform.webmvc.IWebCacheProcessor接口 ymp.configs.webmvc.cache_processor_class= # 默认字符编码集设置,可选参数,默认值为UTF-8 ymp.configs.webmvc.default_charset_encoding= # 请求忽略正则表达式,可选参数,默认值为^.+\.(jsp|jspx|png|gif|jpg|jpeg|js|css|swf|ico|htm|html|eot|woff|woff2|ttf|svg)$ ymp.configs.webmvc.request_ignore_regex= # 请求方法参数名称,可选参数, 默认值为_method ymp.configs.webmvc.request_method_param= # 请求路径前缀,可选参数,默认值为空 ymp.configs.webmvc.request_prefix= # 请求参数转义模式是否开启(开启状态时,控制器方法的所有参数将默认支持转义,可针对具体控制器主法或参数设置忽略转义操作),可选参数,默认值为false ymp.configs.webmvc.parameter_escape_mode= # 执行请求参数转义顺序,可选参数,取值范围:before(参数验证之前)和after(参数验证之后),默认值为after ymp.configs.webmvc.parameter_escape_order= # 控制器视图文件基础路径(必须是以 '/' 开始和结尾,默认值为/WEB-INF/templates/) ymp.configs.webmvc.base_view_path=
說明:在服務端程式Servlet方式的請求處理中,請求忽略正規表示式request_ignore_regex
參數無效;