struts2 学习笔记

Struts 2简介:

Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。Struts 2Struts的下一代产品,是在 struts 1WebWork的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2体系结构Struts 1的体系结构差别巨大。Struts 2WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts 2可以理解为WebWork的更新产品。虽然从Struts 1Struts 2有着太大的变化,但是相对于WebWorkStruts 2的变化很小。(百度百科)

可以说struts2的基因来自于webwork,webwork的基因来自于xwork

优点:

1.在软件设计上struts2没有像struts1那样跟servlet APIstruts API有着紧密的耦合,struts2的应用可以不依赖于servlet APIstruts APIstruts2的这种设计属于无侵入式设计,而struts1却属于侵入式设计。

2.struts2提供了拦截器,利用拦截器可以进行AOP编程,实现如权限拦截等功能。

3.struts2提供了类型转换器,可以把特殊的请求参数转化成需要的类型。在struts1中,如果我们要实现同样的功能,就必须向struts1的底层实现BeanUtil注册类型转换器才行。

4.struts2提供支持多种表现层技术,如:jspfreemarkervelocity等。

5.struts2的输入校验可以对指定的方法进行校验,解决了struts1长久之痛。

6.提供了全局范围、包范围和Action范围的国际化资源文件实现。(百度百科)

 

Struts2开发环境搭建:

   开发前需搭建环境,这里我用的是struts-2.3.16这个版本总共分三步:

第一步:引入jar

 

 

 

第二步:从struts2的源码示例中复制struts.xml到项目src目录下

 

 

 

 

 

 

第三步:修改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>

 

这样环境就差不多配好了,不过每次写都需要去struts2源码中去找,太麻烦,所以,可以把核心的jar包 配置文件都放在一个文件夹中

 





第一个小程序,先看看结果

 


点登陆后 取到表单的值

 

先写一个index.jsp body 里写一个表单 post提交

 

 

然后写jsp对应的action  LoginAction.java  nameage 是成员变量  生成get set 方法 写一个 execure方法

 返回一个success

 

 

 

最后在struts.xml配置文件中注册

Name的名字随便起  namespace命名空间  result 中拿到LoginAcyion.java中的返回值

把表单提交到welcome.jsp

 

 

 

 

写一个welcome.jsp

EL表达式

E LExpression Language) 目的:为了使JSP写起来更加简单。表达式语言的灵感来自于 ECMAScript XPath 表达式语言,它提供了在 JSP 中简化表达式的方法,让Jsp的代码更加简化

 

 

 

这样就完成了一个简单的struts2 MVC框架

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值