部署Struts2到Eclipse全过程

学习资源:https://www.w3cschool.cn/struts_2/

安装Struts2文件库:

在线下载文件库 http://struts.apache.org/download.cgi 

解压得到lib文件

示例 创建一个动态Web项目:

启动Eclipse,File->New->Dynamic Web Project,创建“HelloWorldStruts2”项目
导入jar包
WebContent->WEB-INF->lib

部署Struts2到Eclipse全过程

导入到项目中:

部署Struts2到Eclipse全过程

Add JARs 

部署Struts2到Eclipse全过程

创建Aciton类

Action类是Struts2 应用程序的关键,相当于MVC中的Controller。当用户点击一个URL时,由Action类来响应用户操作。Java Resources->src下创建包cn.HelloWorld.struts2
其下创建HelloWorldAction.java。

关键是execute()方法

部署Struts2到Eclipse全过程

  

创建视图

webContent -> New -> JSP File

主页index.jsp 

form 的action对应相应的action名

部署Struts2到Eclipse全过程

 HelloWorld.jsp

Taglib指令告知Servlet容器这个页面将使用Struts2 标签,并且这些标签会被s放在前面。s:property 标签显示Action类“name”属性的值

部署Struts2到Eclipse全过程

error.jsp 


<s:fielderror fieldName="name"></s:fielderror> 是返回带有<li>样式的标签

<s:property value="fieldErrors.name[0]"/> 不带样式

部署Struts2到Eclipse全过程

配置文件

Java Resources->src下创建struts.xml文件。

常数struts.devMode的值为真意味着修改项目代码后,项目会自动刷新部署到tomcat中的项目代码。

定义一个名为helloworld的数据包。数据包的存在可以区别重名的action

命名action为“hello”,与URL /hello.action或/hello保持一致。HelloWorldAction.classexecute方法就是当URL /hello.action被调用时运行。如果execute方法返回的结果为“success”,进入HelloWorld.jsp如果execute方法返回的结果为“error”,进入error.jsp

部署Struts2到Eclipse全过程

配置web.xml

指定项目初始页,添加struts所需的过滤器

部署Struts2到Eclipse全过程

部署项目到tomcat

部署Struts2到Eclipse全过程

测试项目

部署Struts2到Eclipse全过程

如果输入Apple,提交至hello action,找到HelloWorldAction.java,return success,则对应result success转至HelloWorld.jsp

部署Struts2到Eclipse全过程

输入中国,则用户名不正确,转至error.jsp

部署Struts2到Eclipse全过程

至此,表示strut2可用,示例成功。