自己动手做一个例子,印象会比较深刻。
先到struts官网下载包。形如:struts-1.3.10-all.zip。其中,all.zip表示该包中包含,例子,源文件,jar包等所有相关的东西。下载地址http://struts.apache.org/ 在该页面左侧点击:Prior Releases 链接,这里的Releases 指的是发布,发放的意思,以后在下载其他官方文件时,也要注意这个单词,这样可以快速下载到你想要的东西。
struts-1.3.10-all.zip解压缩后,会有几个文件夹,其中,lib下放的是我们所需的jar包,apps中放的是例子,src下放的是源码(因为它是开源的)。
实践步骤
1.搭建环境
2.建立ActionForm
3.建立Action
4.页面访问
1.搭建环境
(1)导入jar包。使用其中相关的类。
(2)建立一个配置文件:Struts-config.xml
作用:方便Struts用户使用
位置:一般放在WEB_INF下
***如果不方便获得第一个struts-config.xml模版文件,可以先从struts
下载包中找到struts自带的例子程序,从这些例子程序中的WEB-INF目录下
肯定可以找到struts-config.xml文件。
(3)修改Web.xml。
注册struts中心控制器----ActionServlet
注意事项:
struts配置文件的位置;
预先加载控制器;
2.建立ActionForm
建立一个类,继承自ActionForm
注册,修改配置文件struts-config.xml
3.建立Action
建立一个类,继承自Action,覆盖execute方法
注册,修改配置文件struts-config.xml(增加Action标签,添加3个属性:Path,Type,Name)
Path:指明调用者(jsp)能通过中心控制器ActionServlet找到该Action
Type:指明该action类全名
Name:该action引用的form的名称。
下面是各个文件的具体内容:
loginForm.java
///////////////////////////////////
package cn.test;
import org.apache.struts.action.ActionForm;
public class loginForm extends ActionForm {
private String username = null;
private String passsword = null;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPasssword() {
return passsword;
}
public void setPasssword(String passsword) {
this.passsword = passsword;
}
}
//////////////////////////////////
loginAction.java
/////////////////////////////////
package cn.test;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
public class loginAction extends Action {
@Override
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
loginForm logForm = (loginForm)form;
if(logForm.getUsername().equals("zj")){
return mapping.findForward("loginSuccess");
}else{
return mapping.findForward("loginFailure");
}
}
}
////////////////////////////////
struts-config.xml
////////////////////////////////
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
"http://struts.apache.org/dtds/struts-config_1_3.dtd">
<struts-config>
<form-beans>
<form-bean name="loginForm" type="cn.test.loginForm"></form-bean>
</form-beans>
<action-mappings>
<action path="/login" type="cn.test.loginAction" name="loginForm">
<forward name="loginSuccess" path="/loginSuccess.jsp"></forward>
<forward name="loginFailure" path="/loginFailure.jsp"></forward>
</action>
</action-mappings>
</struts-config>
////////////////////////////////
web.xml
/////////////////////////////////
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
</web-app>
/////////////////////////////////
login.jsp
////////////////////////////////
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'login.jsp' starting page</title>
</head>
<body>
<form action="<%= request.getContextPath()%>/login.do" method="post">
username:<input type="text" name="username"><br>
password:<input type="password" name="password"><br>
<input type="submit" value="login">
</form>
</body>
</html>
/////////////////////////////////
启动tomcat,在浏览器中输入相应的地址,这样即可成功发布。
本文介绍如何使用Struts框架创建一个简单的登录示例,包括环境搭建、ActionForm与Action的实现过程,以及配置文件struts-config.xml和web.xml的详细设置。
1640

被折叠的 条评论
为什么被折叠?



