Struct2实验1

本文详细介绍了如何在Window环境下,使用JDK1.8和Tomcat8.5搭建Struts2框架,包括项目目录结构、web.xml配置、struts.xml配置、创建输入视图、业务控制器及结果视图。通过具体示例,展示了用户登录流程,从输入信息到处理逻辑,再到结果显示的全过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

运行环境:window+jdk1.8+tomcat8.5
在这里插入图片描述
在这里插入图片描述
项目目录:
在这里插入图片描述
web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id="WebApp_ID" version="3.0">
<display-name>struct</display-name>
  <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>   
  <welcome-file-list>  
    <welcome-file>input.jsp</welcome-file>  
  </welcome-file-list>  
</web-app> 

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="default" namespace="/" extends="struts-default">
        <action name="user" class="com.struct2.UserAction" >
            <result name="success">/login.jsp</result>
            <result name="error">/error.jsp</result>
        </action>
    </package>
</struts>

创建输入视图:input.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>用户信息采集</title>
</head>
<body>
 <h1 style="text-align:center;color:#43342A;font-family:Arial;font-weight:lighter;margin:0px;font-size:25px;">Login</h1>
	<form method="post" action="user.action">
	<input style="border-radius: 2px;width:100%;height:25px;margin-top:1px;color:#AFACA7;border:1px solid #E1E1E1;" 
	type="text" name="userName" value="UserName"/><br/>
	<input style="border-radius: 2px;width:100%;height:25px;margin-top:15px;color:#AFACA7;border:1px solid #E1E1E1;" 
	type="text" name="userPassword" value="Password"/><br/>
	<input type="checkbox" name="user" value="remember"/><span style="color:#787975;">Remember me</span><br/>
	<input style="width:100%;height:35px;margin-top:5px;background-color:#337BB6;color:#FFFFFF" 
	type="submit" value="Sign in" />
	</form>
</body>
</html>

创建业务控制器

package com.struct2;

public class UserAction {
	private String userName;
	private String userPassword;
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public String getUserPassword() {
		return userPassword;
	}
	public void setUserPassword(String userPassword) {
		this.userPassword = userPassword;
	}
	public String execute() throws Exception{
		if(userName.length()>0 && userPassword.length()>3) {
			return "success";
		}else {
			return "error";
		}
	}
}

创建结果视图:
success.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>显示用户信息</title>
</head>
<body>
     用户名:${param.userName}<br/>
  密码:${param.userPassword}<br/>
</body>
</html>

error.jsp:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>错误页面</title>
</head>
<body>
<h1 style="text-align:center;color:#43342A;font-family:Arial;font-weight:lighter;margin:0px;font-size:25px;">Login</h1>
	<ul>
		<li>密码必须输入</li>
		<li>密码必须输入</li>
		<li>确认密码必须输入</li>
		<li>姓名必须输入</li>
		<li>年龄必须输入</li>
		<li>出生日期必须输入</li>
		<li>邮箱地址必须输入</li>
	</ul>
	
	<form method="post" action="user.action">
	<input style="border-radius: 2px;width:100%;height:25px;margin-top:1px;color:#AFACA7;border:1px solid #E1E1E1;" 
	type="text" name="userName" value="UserName"/><br/>
	<input style="border-radius: 2px;width:100%;height:25px;margin-top:15px;color:#AFACA7;border:1px solid #E1E1E1;" 
	type="text" name="userPassword" value="Password"/><br/>
	<input type="checkbox" name="user" value="remember"/><span style="color:#787975;">Remember me</span><br/>
	<input style="width:100%;height:35px;margin-top:5px;background-color:#337BB6;color:#FFFFFF" 
	type="submit" value="Sign in" />
	</form>
</body>
</html>

运行显示视图:
启动Tomcat服务器,运行此项目,在本机浏览器上输入:http://localhost:8080/struct/
在这里插入图片描述
登陆成功时,显示视图:
在这里插入图片描述
登陆失败时,显示视图:
在这里插入图片描述
运行原理图:
在这里插入图片描述除了上面的方法外,可以使用struct2的标签库使用数据
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值