Java框架:structs2---介绍 + 搭建

Struts2简介

  1. Struts2是Apache发行的MVC开源框架
  2. 只是表现层web(MVC)框架
  3. 和Struts1没有关系
  4. Struts1的核心控制器就是一个Servlet

Struts2包目录结构 

  1. apps 官方提供的案例Demo
  2. docs 官方提供的文档
  3. lib 官方提供的jar包,需要用到哪个导入哪个
  4. src 源码

Struts2 jar包介绍

  • apps目录中,提供了一个struts2-blank.war 包,导入lib下的所有包即可
1

struts2-core-2.3.33.jar

Struts核心jar包

2

xwork-core-2.3.33.jar

3

ognl-3.0.19.jar

OGNL表达式

4

log4j-core-2.3.jar

开源日志 log for java

5

log4j-api-2.3.jar

6

asm-3.3.jar

基于子类的动态代理

7

asm-tree-3.3.jar

提供其于对象的表现形式

8

asm-commons-3.3.jar

提供基于事件的表现形式

9

commons-fileupload-1.3.2.jar

文件上传所需要的包

10

asm-commons-3.3.jar

11

freemarker-2.3.22.jar

页面 模板框架

12

javassist-3.11.0.GA.jar

对于字节码的支持,jBoss的一个子项目

13

commons-lang3-3.2.jar

对java.lang的扩展

Struts2搭建

第一步:创建Web工程
第二步:导jar包

把struts2-blank.war中的lib下所有的包导入自己创建的工程

第三步:添加配置文件

把struts2-blank里classes目录下的struts.xml配置文件拷贝到自己创建工程的src中

第四步:web.xml中配置struts的过滤器

<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的规则去处理请求,而不是用以前的servlet去处理

第五步:Tomcat运行Web工程

测试:

1.创建jsp页面                                              hello.jsp
2.创建模型类和方法 

         
3.配置structs.xml的    package和action

	<package name="p1" extends="struts-default" namespace="">
		<action name="hello" class="com.web.action.HelloAction" method="sayHello">
			<result name="success">/hello.jsp</result>
		</action>
	</package>

4.访问     http://localhost:8080/项目名/hello 或者http://localhost:8080/项目名/hello.action

Struts2 sstructs.xml部分 :package和action

    package:表示包
            name:包名,在struts.xml文件不能有相同的包名,包名是惟一
            extends:继承,固定struts-default
            namespace:  名称空间,模块开发 区分
            abstract:    把包声明为抽象包,用来被继承的
    action:动作
            name:相当于Servlet的映射路径(@WebServlet)
            class:处理请求的类,相当一个Servlet类
            method:处理请求的方法
    result:结果,写返回的jsp页面

Struts2执行流程图

Struts2配置文件的加载顺序:      后者  覆盖 前者  配置的属性

顺序

配置文件名

所在位置

说明

1

default.properties

struts2-core-2.3.15.3.jar\org\apache\struts2

不能修改:勿动

2

struts-default.xml

struts2-core-2.3.15.3.jar

不能修改:勿动

3

strtuts-plugin.xml

在struts2提供的插件jar包中

不能修改:勿动

4

struts.xml

我们的应用中

可以修改:推荐

5

struts.properties

我们的应用中

可以修改

6

web.xml

我们的应用中

可以修改,可以给过滤器配置参数

  •  1.default.properties默认配置说明:勿动  

struts.i18n.encoding=UTF-8

国际化

struts.action.extension=action,,

默认访问扩展后缀,可以是action,也可以没有后续

struts.devMode = false

是否是开发模式。开发模式:改了配置文件,不需要重启

输出更多的错误信息。开发阶段建议为true。

  • 2.修改struts的访问后缀

第一种:
    在struts.xml的配置文件中添加 
    <constant name="struts.action.extension" value="do"></constant>
第二种:
    在src下创建struts.properties        添加struts.action.extension=htm
    如果这样配置会覆盖struts.xml的配置

第三种:web.xml中配置

Struts2搭建问题

1.struts.xml 没有提示

  • struts-x.x.dtd文件可以从struts2-core-x.3.33.jar包内找到

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值