struts2.0.14在myeclipse下的环境搭建和第一个例子
更新时间:2024-03-30 04:14:01 阅读量: 综合文库 文档下载
struts2.0.14在myeclipse下的环境搭建和第一个例子 注:本文是在看过黎活明老师的视频前2章后写下的。
Struts2是在webwork2基础上发展而来的,struts2属于MVC框架。
Struts2相对于struts1的优点:
1,struts2提供了拦截器,利用拦截器可以进行AOP(Aspect Oriented Programming)编程,实现如权限拦截等功能。
2,struts2提供了类型转换器,我们可以把特殊的请求参数转换成需要的类型。在strut1中,如果要实现同样的功能,就必须向struts1的底层实现BeanUtil注册类型转换器才行。
3,提供了支持多种表现层技术,如jsp,freemarker 4,输入校验可以对指定方法进行校验
5,提供了全局范围,包范围和Action范围的国际化资源文件管理实现
搭建开发环境: 1, 找到所需的jar文件
Jar文件在官网可以下载:http://struts.apache.org/ 根据所需下载相应的版本,下载struts-x.x.x-all.zip即可,解压后,在lib下可以找到以下的jar文件。
struts2-core-2.x.x.jar:struts2框架的核心类库 xwork-2.x.x.jar:xwork类库,struts2在其上构建
ognl-2.6.x.jar:对象图导航语言,struts2框架通过其读写对象的属性 freemarker-2.3.x.jar:struts2的ui标签的模板使用freemarker编写 commons-logging-1.1.x.jar:ASF出品的日志包,struts2框架使用这个日志包来支持log4和jdk1.4+的日志记录
commons-fileupload-1.2.1.jar:文件上传组件,2.1.6版本后必须加入此文件 2,编写配置文件
在src下新建xml文件:struts.xml Xml文件内容如下:
\ \>
3,在web.xml中加入struts2mvc框架启动配置
修改/WebRoot/WEB-INF/web.xml文件:
在struts1中,struts框架是通过servlet启动的,而在struts2中,struts框架是通过filter启动
注意事项:在struts2读取到struts.xml的内容后,以javabean的形式存放在内存中,以后struts对用户的每次请求处理将使用内存中的数据,而不是每次都读取struts.xml
war文件解压:jar xvf *.war(在官网下载的压缩包里面有4个war文件,解压后是4个例子)
通过以上操作,一个struts2的环境就搭建好了。
包的介绍:
struts.xml配置中的包介绍:在struts.xml中是可以配置多个包
使用包来管理action,包的作用和java中的类包是非常相似的,它主要用于管理一组业务功能相关的action,在实际应用中,我们应该把一组业务功能相关的action放在同一个包下。在一个package中,是可以定义多个action的。(这样相对struts1可以减少重复的代码)
配置包时必须制定name属性,该name可以任意取名字,name主要供继承使用
但是必须是唯一的,它不对应java类包。如果其它包要继承该包,必须通过该属性进行引用,包的namespace属性用于定义该包的命名空间,命名空间作为访问该包下action的路径的一部分,如访问上面例子的action,访问路径为:
/test/helloworld.action
namespace属性可以不配置,默认命名空间为\空字符串)
通常每个包都应该继承struts-default包,因为struts2很多核心的功能都是拦截器实现(请求数据的获取,文件上传,数据校验)的,struts-default定义了这些拦截器和result类型,可以这么说,当包继承了struts-default,才能使用struts2提供的核心功能
struts-default包是在struts2-core-2.x.x.jar文件中struts-default.xml中定义 struts-default.xml也是struts2默认配置文件,struts2每次都会自动加载struts-default.xml(抽象包)文件
包还可以通过abstract=“true”定义为抽象包,抽象包中不能包含action 只能被其他包继承
第一个例子:
在struts.xml文件中配置如下的package:
\ \
建的包名为sue,命名空间为test,继承了包struts-default,action名为helloworld,class路径为包com.struts2.action,下的类HelloWorldAction,方法为execute,返回字符串为:success,执行action后跳转的页面是/WEB-INF/page/下的hello.jsp文件。(放在web-inf文件下的原因是:在该路径下,客户端是无法看见的,具体的原因我也不太清楚)
访问此action的路径为:/test/helloworld.action
Package创建好后,在src下创建包,包名为:com.struts2.action,在此包中新建java文件,名字为:HelloWorldAction,文件内容为:
package com.struts2.action;
public class HelloWorldAction { private String message;
public String getMessage() { return message; }
public void setMessage(String message) { this.message = message; }
public String execute(){//action返回值要求必须是String类型 message = \我的第一个struts\; return \; } }
在文件/WEB-INF/下创建page文件夹,在page文件夹下新建jsp,名字为hello: 在
标签中加入一句代码如下:
This is my JSP page.
${message }
将此项目加载到tomcat下,启动tomcat后,在浏览器的访问路径为:
http://localhost:8080/struts2/test/helloworld.action 以上为第一个例子
期间遇到的问题:访问路径最后的后缀为:.action
我在配置好后,一直提示请求路径是无效的,后来才发现少了后缀
正在阅读:
struts2.0.14在myeclipse下的环境搭建和第一个例子03-30
药用高分子复习题03-10
教育行政管理复习题05-26
尔雅钢琴艺术赏析课后答案最全06-17
第四章 练习11-15
保安员个人工作总结08-23
四川省绵阳市高中2017届高三第二次诊断性考试文综历史试题及答案11-15
结核病防治竞赛题库及答案10-10
毕业实习周记30篇02-28
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 建和
- myeclipse
- 例子
- 环境
- struts
- 一个
- 2.0
- 14