关于Struts的知识总结

一、Struts应用环境搭建

web.xml文件配置

    <filter>

        <filter-name>struts2</filter-name>

        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>

    </filter>

    <filter-mapping>

        <filter-name>struts2</filter-name>

        <url-pattern>/*</url-pattern>

    </filter-mapping>

 

struts.xml文件配置

<struts>

    <!-- 请求参数的编码方式 -->

    <constant name="struts.i18n.encoding" value="UTF-8"/>

    <!-- 指定被struts2处理的请求后缀类型。多个用逗号隔开 -->

    <constant name="struts.action.extension" value="action,do,htm"/>

    <!-- struts.xml改动后,是否重新加载。默认值为false(生产环境下使用),开发阶段最好打开  -->

    <constant name="struts.configuration.xml.reload" value="true"/>

    <!-- 是否使用struts的开发模式。开发模式会有更多的调试信息。默认值为false(生产环境下使用),开发阶段最好打开  -->

    <constant name="struts.devMode" value="true"/>

    <!-- 设置浏览器是否缓存静态内容。默认值为true(生产环境下使用),开发阶段最好关闭  -->

    <constant name="struts.serve.static.browserCache" value="false" />

    <!-- 指定由spring负责action对象的创建

    <constant name="struts.objectFactory" value="spring" />

    -->

    <!-- 是否开启动态方法调用 -->

    <constant name="struts.enable.DynamicMethodInvocation" value="true"/>

 

 

    <package name="feifei" namespace="/feifei" extends="struts-default">

        <action name="helloStruts-*" method="{1}" class="feifei.HelloStrutsAction">

            <result name="success">/welcome.jsp</result>

        </action>

    </package>

 

</struts>

 

Pom.xml文件配置

        <dependency>

            <groupId>org.apache.struts</groupId>

            <artifactId>struts2-core</artifactId>

            <version>2.3.16.1</version>

        </dependency>

 

HelloStrutsAction --Action类文件

public class HelloStrutsAction extends ActionSupport {}

 

主要代码位置

进行表单属性性封装

 

OgnlValueStack.java -- getValuesetValue

OgnlRuntime.java -- getWriteMethod

SimpleNode.java

ObjectPropertyAccessor.java -- setPossibleProperty set值里的方法代理

XWorkBasicConverter.java -- convertValue -- 76 类型转换类,行

 

ExcludedPatterns.java  参数过滤默认值基本类

 

 

 

 

二、关于Tomcat 

%tomcat-home%/conf/web.xml

     设置列文件列表  

 <init-param>

            <param-name>listings</param-name>

            <param-value>false</param-value>

        </init-param>

 

%tomcat-home%/conf/server.xml

 <Host name="localhost"   unpackWARs="true" autoDeploy="true">

     <Context path="" docBase="F:\src\main\webapp" debug="0" reloadable="true"/>

 </Host>

 

class['classLoader']['resources']['dirContext']['docBase']=path/path 

class.classLoader.resources.dirContext.docBase=path/path


docBase参数有三种地址路径部署方式:

1.相对路径:以Tomcat的webapps目录为更目录

2.绝对路径:如,c://web/部署的应用目录

但,还有一种地址配置方式,大家可能不会常用,那就是UNC path(tomcat是支持远程网络路径方式的):

3.UNC path(如,远程共享一个标准的J2EE应用目录)

具体看这里:http://wiki.apache.org/tomcat/FAQ/Windows#Q6




 

 

三、关于resin

类加载器: EnvironmentClassLoader.java

Main函数类:com.caucho.server.resin.Resin.java

启动命令:

java -jar resin.jar [-options] [start | stop | restart]

-conf %RESIN_HOME%/conf/resin.conf

-log-directory %RESIN_HOME%/log/

-resin-home %RESIN_HOME%

-root-directory

-server

-watchdog-port

-verbose

 

 

 <web-app id="" document-directory="F:\workspace\webapp" />


class['classLoader']['loaders'][0]=




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值