1. 增加必要的jar包
antlr-2.7.2.jar
commons-beanutils-1.7.0.jar
commons-chain-1.1.jar
commons-digester-1.8.jar
commons-logging-1.0.4.jar
commons-validator-1.3.1.jar
oro-2.0.8.jar
struts-core-1.3.8.jar
struts-taglib-1.3.8.jar
struts-tiles-1.3.8.jar
2. 编写相应的视图页面
login.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>用户登录</title>
</head>
<body>
<form id="form1" action="login.do" method="post">
Username: <input type="text" name="username"><br>
Password: <input type="text" name="password"><br>
<input type="submit" value="Submit">
</form>
</body>
</html>
success.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@page import="ch01.formbean.UserForm"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>登录成功</title>
</head>
<body>
<%
UserForm userForm = (UserForm)request.getAttribute("userForm");
%>
用户名:<%=userForm.getUsername()%>
密码:<%=userForm.getPassword()%>
</body>
</html>
error.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>系统错误</title>
</head>
<body>
登录失败!!!
</body>
</html>
3. 编写ActionForm用于封装页面信息,内容如下:
package ch01.formbean;
import org.apache.struts.action.ActionForm;
public class UserForm extends ActionForm {
private String username;
private String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
4. 编写处理用户请求的Action,内容如下:
package ch01.action;
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;
import ch01.formbean.UserForm;
public class LoginAction extends Action {
@Override
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
System.out.println(this.getClass().getName() + " 正在处理用户请求...");
UserForm userForm = (UserForm)form;
if(null == userForm.getUsername() || "".equals(userForm.getUsername())){
return mapping.findForward("error");
}else{
return mapping.findForward("success");
}
}
}
5. 在web.xml增加Struts1核心控制器,内容如下:
<?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>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
6. 在WEB-INF下创建Struts1的配置文件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="userForm" type="ch01.formbean.UserForm"/>
</form-beans>
<action-mappings>
<action path="/login" type="ch01.action.LoginAction" name="userForm" scope="request">
<forward name="success" path="/success.jsp"/>
<forward name="error" path="/error.jsp"/>
</action>
</action-mappings>
</struts-config>
4. 编写完成,发布即可测试。
分享到:
相关推荐
第一个struts框架的完成,使用eclipse写的。第一次写其实是在半年前,现在再重新写,真是错误连篇,最讨厌的是报404错误。首先检查tomcat部署时,有什么错误,针对性解决,大多是因为jar包多了或者少了。有时,jar包...
NULL 博文链接:https://huangminwen.iteye.com/blog/1827985
一个很精简的struts2实例工程,对入门很有用
Struts2学习笔记(二):Servlet、Filer和Struts2作为控制器的实现与对比源代码,希望能帮助大家区分三种方式。
Struts2 入门 — HelloWorld 示例源代码
学Struts2从HelloWorld示例开始
最基础的基于struts2框架的hello world 实现,适合小白。
struts2框架最基本的代码。如果你想看看struts2最基本的样子,你个应该是你不错的选择。但前提是你得学过jsp/servlet
《Struts2 权威指南》第二章 Struts2 下的HelloWorld测程序源码2
新建maven工程,对于Struts2入门单纯使用案例HelloWorld
Struts2的入门小实例helloworld,jar包齐全,可以运行。
最简单的源码,一看就明白的配置,struts2初学者入门
NULL 博文链接:https://hnzhoujunmei.iteye.com/blog/745973
Struts2 Helloworld 源代码
自己做的helloworld 希望可以给你们启发
struts2 annotion helloworld 源代码,适合初学者看看,不懂得看看文档就知道了。
eclipse+Struts 2.3.4.1的HelloWorld 参考我博客
struts2.0开发环境的搭建及HelloWorld的演示
本章完成一个HelloWorld实例开发的演示,目的是使读者可以对struts2有一个整体的认识,熟悉glassfish2的使用,主要讲解了一个简单的Struts2应用的HelloWorld实例,这个例子可以帮助读者快速入门,获得开发Struts2...