(1)下载Struts2的架包,下载完后打开找到lib目录,发现里面有很多架包,不是所有架包我们都用得上,因此我们只需要几个架包即可,下载好的文件里面有个文件夹叫apps,这个文件夹里主要放着一些示例程序,我们需要的架包都在这些例子里的lib文件夹中。
apps->web->web-inf->lib打开复制到项目即可
(2) 创建Action
import com.opensymphony.xwork2.Action;
import org.springframework.http.HttpRequest;
public class Actions implements com.opensymphony.xwork2.Action {
private String name;
private Integer age;
private String sex;
private String classs;
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getClasss() {
return classs;
}
public void setClasss(String classs) {
this.classs = classs;
}
Student student=new Student();
public Student getStudent() {
return student;
}
public void setStudent(Student student) {
this.student = student;
}
@Override
public String execute() throws Exception {
return "";
}
public String register(){
student.setName(this.name);
student.setAge(this.age);
student.setClasss(this.classs);
student.setSex(this.sex);
return "gotoRegister";
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
(3) 配置action类访问路径
- 创建Struts2核心配置文件,核心文件名称和位置是固定的,位置必须在src下面,名称struts.xml
- 引入的DTD约束
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
- action配置
<struts>
<!--开启action方法的动态调用-->
<constant name="struts.enable.DynamicMethodInvocation" value="true"/>
<constant name="struts.custom.i18n.resources" value="message"/>
<!--解决中文乱码-->
<constant name="struts.i18n.encoding" value="UTF-8"/>
<constant name="struts.ui.theme" value="simple"/>
<!--包的配置,name是包的名称,默认是default,namespace是浏览器的前缀,没有直接写/,从根目录访问-->
<!--extends默认是一定从struts-default继承,除非有特殊原因-->
<package name="default" namespace="/" extends="struts-default">
<!--配置action name是浏览器地址-->
<action name="hello" class="com.bdqn.action.Actions">
<!--配置方法的返回值到页面-->
<result name="gotoRegister">index.jsp</result>
</action>
</package>
</struts>
(4)访问页面
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>注册</title>
</head>
<h1>注册功能</h1>
<form action="hello!register" method="post">
<h2>
用户名:<input type="text" name="name">
年龄:<input type="text" name="age">
班级:<input type="text" name="classs">
性别:<input type="text" name="sex">
<input type="submit" value="注册">
</h2>
<h2>
用户名:${name}
年龄:${age}
班级:${classs}
性别:${sex}
</h2>
</form>
</body>
</html>