前言
好长时间没有写博客了,趁着国企期间的假期,把之前学的做个总结,国庆期间尽量多写一些。
正文
1.所需材料
- idea版本 2020.1
- struts2 版本 (我现在用的版本是拷贝我老师的,所以不知道具体是什么版本,反正最好不要用最新版本的,有很多坑)点我下载
2.直接开始上图
按照上图顺序,选择左侧的Java Enterprise-->在右侧分别勾选Web Application、Struts2-->选择下方的Use library-->点击Create。
之后弹出如下界面,选中所需要的struts2包,点击ok
创建项目完成之后,一次选择File-->Project Structure,或者直接Ctrl+Shift+Alt+S,弹出如下界面。
选择Artifacts-->展开右侧的commonTest(可能名字不一样),然后双击Struts2
双击Struts2之后的效果如下所示,点击ok即可。
web.xml配置如下
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
在web目录下新建index.jsp文件
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>$Title$</title>
</head>
<body>
<form action="test.action">
<input type="text" name="userInput"><br>
<input type="submit" value="确定">
</form>
</body>
</html>
新建success.jsp文件
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
welcome!
</body>
</html>
新建fail.jsp文件
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
fail!
</body>
</html>
src文件下新建一个java package,命名为testPackage,testPackage包下新建testAction.java,内容如下
package testPackage;
public class testAction {
private String userInput;
public String getUserInput(){
return userInput;
}
public void setUserInput(String userInput){
this.userInput=userInput;
}
public String Result(){
if(userInput.equals("hello")){
return "success";
}
return "fail";
}
}
struts.xml配置如下
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
"http://struts.apache.org/dtds/struts-2.5.dtd">
<struts>
<package name="test" extends="struts-default">
<action name="test" class="testPackage.testAction" method="Result">
<result name="success">/welcome.jsp</result>
<result name="fail">/fail.jsp</result>
</action>
</package>
</struts>
package name可以随意起,但不要重复; extens默认为struts-default,不要更改;
action name可以随意起,但不要重复; class为要用的Action的路径,这里是testPackage包下的testAction.java文件的意思,method是要用的方法。