先写一个简单的Struts项目,体验一下Struts是什么样子。
1.新建一个Dynamic Web Project
注意:勾选Generate web.xml deployment descripte。
2.添加jar包
jar下载地址:http://struts.apache.org/download.cgi
可以在build path中添加jar文件,我通常把jar文件复制到WebContent–>WEB-INF–>lib 中即可。
3.新建一个jsp项目
在WebContent下,新建一个JSP File,代码如下:
<%@ page language="java" pageEncoding="UTF-8" %>
<%@ page contentType="text/html; charset=UTF-8" %>
<!DOCTYPE html >
<html>
<head>
<meta charset="UTF-8">
<title>hello,Struts2</title>
</head>
<body>
<form action=" ${ pageContext.request.contextPath}/user/login.do" method="post">
<input type="text" name="username" placeholder="请输入用户名">
<input type="submit" value="提交">
</form>
</body>
</html>
4.写Struts2的配置文件
(1).在src文件夹下新建一个xml文件(Struts2的配置文件)。
注意:
xml文件必须建在src文件下面。
xml文件的名字必须是struts.xml 。
(2).写xml文件:
可以参照 Java resource -->Libraries -->Web App Libraries -->Struts2-core
.jar–> struts-2.5.dtd 去写。
<?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="user" namespace="/user" extends="struts-default">
<action name="login" class="com.lee.action.LoginAction">
<result name="成功" type="dispatcher">/WEB-INF/main.jsp</result>
<result name="失败" type="dispatcher">/index.jsp</result>
</action>
</package>
</struts>
5.Action界面
action负责与Struts进行数据交流,后面会详细说明一下整个程序运行的过程。
package com.lee.action;
import com.opensymphony.xwork2.Action;
public class LoginAction implements Action {
public String username;
@Override
public String execute() throws Exception {
if(username!=null &&username.trim().length()!=0){
return "成功";
}else{
return "失败";
}
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
}
6.成功界面
如果前台界面输入的值通过验证,则会跳转到成功界面。
<%@ page language="java" pageEncoding="UTF-8" %>
<%@ page contentType="text/html; charset=UTF-8" %>
<!DOCTYPE html >
<html>
<head>
<meta charset="UTF-8">
<title>登录成功</title>
</head>
<body>
<h1>欢迎您, ${ username}</h1>
</body>
</html>
7.核心过滤器配置
这一步是Struts的核心,只有配置了过滤器Struts才会跑通。
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
<filter>
<filter-name>ApacheStruts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>ApacheStruts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
8.添加项目到Tomcat
添加完要start一下Tomcat。
9.在浏览器访问
访问:http://localhost:8080/ahelloWorld/
成功页面跳转:
10.总结思路
整理一思路,按照下面步骤写Struts,标记颜色的框框里面必须是对应的,这是他们之间联系的桥梁。
红色:路径名
绿色:实体名
棕色:action的包名和类名
蓝色:过滤器名
1.新建jsp页面
2.Struts界面
3.action界面
4.成功页面
5.过滤器界面