zoukankan      html  css  js  c++  java
  • ssh中得常用配置

    方便自己记忆

    一、    生成一个地址

    <s:url action="list" id="list"></s:url>
    <s:a 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

    ----------------------------------------------------------------------------

    @Action(interceptorRefs={@InterceptorRef("validation"), @InterceptorRef("defaultStack")})
    @ExceptionMappings({
        @ExceptionMapping(exception = "java.lang.NullPointerException", result = "success", params = {"param1", "val1"})
    })
    @ParentPackage

    六、    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>

  • 相关阅读:
    42. Trapping Rain Water
    223. Rectangle Area
    645. Set Mismatch
    541. Reverse String II
    675. Cut Off Trees for Golf Event
    安装 VsCode 插件安装以及配置
    向上取整 向下取整 四舍五入 产生100以内随机数
    JS 判断是否为数字 数字型特殊值
    移动端初始配置,兼容不同浏览器的渲染内核
    Flex移动布局中单行和双行布局的区别以及使用
  • 原文地址:https://www.cnblogs.com/duanxingxing/p/6550640.html
Copyright © 2011-2022 走看看