Struts是一个经典的Java Web开发框架。现在我们编写一个简易的helloworld界面。
Struts的环境搭建比较简单,加载相应的jar包即可。
我这里的开发环境是windows7 + Myeclipse10.0
Struts2采用的是2.2.1.1版本
1.加载Struts2的必备jar包,我这里是6个,还有另外的两个jar文件。
这六个分别是:
1.commons_fileupload-1.2.1.jar
2.commons-io_1.3.2.jar
3.commons-logging-1.0.4.jar
4.ognl-3.0.jar
5.struts2-core-2.2.1.1.jar
6.xwork-core-2.2.1.1.jar
此外,还需要freemarker-2.3.16.jar以及javassist-3.7.ga.jar文件
2.编辑web.xml文件
内容为:
struts2 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter struts2 /*
这个xml文档不需要验证,即使上面的网址失效也无妨。
3.在src目录下创建struts.xml文件,内容为:
/helloworld.jsp
这个xml文档是最关键的配置部分。而且需要DTD验证,所以必须保证上面的dtd文件是可用的。
4.创建一个package为com.test.action,创建class为HelloWorldAction。
该class的定义为:
package com.test.action;import com.opensymphony.xwork2.ActionSupport;public class HelloWorldAction extends ActionSupport{ private static final long serialVersionUID = 1L; @Override public String execute() throws Exception { return SUCCESS; }}
这里比较简单,我们也可以不继承ActionSupport类,只要这个类具备execute函数即可。
5.创建一个jsp文件,为helloworld.jsp
内容如下:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%>我的第一个Struts界面 Hello World
现在我们把程序部署到tomcat上,然后启动server,在浏览器中访问:
注意我的项目名称是struts2
就可以看到加粗后的helloworld。
下面分析访问helloworld页面的流程。
1.首先web.xml中,我们为所有的url都配置了一个分配器,所以当我们输入上面的网址时,server接收到的是/helloworld。
2.到了关键的地方,我们看
/helloworld.jsp
他的意思是,对于helloworld,我们去执行HelloWorldAction这个类的execute方法。
如果返回结果为success,那么执行helloworld.jsp页面。
于是我们在浏览器中就看到了helloworld页面。