struts 2 笔记

一、 生成一个地址 <s:url action="list" id="list"></s:url> <s:a href="%{list}" mce_href="%{list}">list</s:a> 二、 struts 常用配置 struts.properties 常用配置文件 <constant name="struts.i18n.encoding" value="UTF-8" />字符集 <constant name="struts.convention.action.packages" value="cn.jingmin.web" /> 只搜索特定package下的Action <constant name="struts.convention.result.path" value="/WEB-INF/context" /> 指定加载页面的目录 <constant name="struts.convention.relative.result.types" value="dispatcher,velocity,freemarker" />返回的页面类型 <constant name="struts.convention.exclude.packages" value="" />忽略某些包 <constant name="struts.convention.package.locators" value="" /> Convention默认的根packages <constant name="struts.convention.classes.reload" value="true" /> <constant name="struts.objectFactory" value="spring" /> 指定spring自动装载 <constant name="struts.action.extension" value="action" /> 指定struts的扩展名 <constant name="struts.devMode" value="true" /> 指定struts的开发模式 <constant name="struts.i18n.reload" value="action" /> 指定struts的资源文件自动重载 <constant name="struts.custom.i18n.resource" value="" /> 指定struts的国际化资源文件 <constant name="struts.configuration.xml.reload" value="" /> 指定struts的配置文件是否自动重载 <constant name="struts.ul.theme" value="xthml" /> 指定struts的模板 三、 convention action与文件的对应关系 public class HelloWorld extends ActionSupport { publicString execute() { if (System.currentTimeMillis() % 2 == 0) { message = "It's 0"; return"zero"; } return SUCCESS; }} SUCCESS 对应 hello-world.jsp zero 对应 hello-world-zero.jsp 四、 convention action对过虑器的调用 @Action(interceptorRefs={@InterceptorRef("validation"), @InterceptorRef("defaultStack")}) @ExceptionMappings({ @ExceptionMapping(exception = "java.lang.NullPointerException", result = "success", params = {"param1", "val1"}) }) @ParentPackage 五、 Convention插件使用REST ---------------------------------------------------------------------------- <constant name="struts.convention.action.suffix" value="Controller"/> <constant name="struts.convention.action.mapAllMatches" value="true"/> <constant name="struts.convention.default.parent.package" value="rest-default"/> 六、 sitemesh 引用变量 在第主个页面之中 <meta name="author" content="test@example.com"> 在模板页中可以引用 <decorator:getProperty property="meta.author" default="staff@example.com" /> 七、 OpenSessionInViewFilter连接设置 <filter> <filter-name>hibernateOpenSessionInViewFilter</filter-name> <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class> </filter> <filter-mapping> <filter-name>hibernateOpenSessionInViewFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> 八、 在WEB中加载spring <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath*:/applicationContext.xml</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> 九、 Spring 刷新Introspector防止内存泄露 <listener> <listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class> </listener> 十、 在sitemesh中使用FreeMarker <filter> <filter-name>sitemesh</filter-name> <filter-class>org.apache.struts2.sitemesh.FreeMarkerPageFilter</filter-class> </filter> 十一、 FreeMarker FreeMarker 扩展名是ftl 十二、 加载sitemesh <filter> <filter-name>strutsCleanup</filter-name> <filter-class>org.apache.struts2.dispatcher.ActionContextCleanUp</filter-class> </filter> <filter> <filter-name>sitemesh</filter-name> <filter-class>com.opensymphony.module.sitemesh.filter.PageFilter</filter-class> </filter> <filter> <filter-name>struts2Filter</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>strutsCleanup</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <filter-mapping> <filter-name>sitemech</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <filter-mapping> <filter-name>struts2Filter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> 十三、 spring字符集转换 -<filter> <filter-name>encodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值