struts2是一个基于MVC模式的Java EE技术Web开发框架。什么是MVC模式呢?MVC模式即model-view-controller模式(模型-视图-控制器模式),一般来说,用JavaBean作为模型,JSP页面作为视图,Servlet作为控制器。
Struts2可以使用Java EE技术的Web项目开发进行代码的分层,有利于维护。Struts2的优点主要体现在解耦(解耦就是用数学方法将两种运动分离开来处理问题,常用解耦方法就是忽略或简化对所研究问题影响较小的一种运动,只分析主要的运动),使用上更加方便快捷,如取消了Struts1的ActionForm及简化了配置文件的代码。
官网http://struts.apache.org可以找到相关资料包括源代码、帮助文档等。
下面就从新建一个工程开始吧。
1.点击菜单File\New\Project,出现如图1所示对话框
图1 新建工程对话框
2.选择Web\Dynamic Web Project,点击Finish。 此步之前需要配置好servlet,tomcat服务器,在此略过。
3.将Struts 2.3.16 lib下的jar文件加到工程的构建路径(build path)即ProjectName\WebContent\WEB-INF\lib路径下
4.将web.xml修改为以下代码。目的是在xml文件中加入过滤器,进而拦截所有请求。具体内容博主会在后续章节中讲解。
5.在src文件中新建struts.xml文件,内容如下。此文件是中心配置文件,要放在classes目录下。
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<include file="struts-default.xml"/>
</struts>
6.在ProjectName\WebContent下建立index.html文件,内容可参考:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Hello World</title>
</head>
<body>
<h3>Hello World!</h3>
</body>
</html>
运行即可看到网页中显示的Hello World字样。
另外在使用JavaBean时,除了规定的参数的get/set方法外,还要有一个execute()方法,这是约定的固定格式:
public String execute() {
……
return string;
}
execute()方法的返回值是一个指向物理文件地址的逻辑名称,在配置文件中进行配置。