模块初始化及配置说明
模块初始化
在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
参数无效;