基于Struts2框架实现登录案例
一,准备工作
1)新建web项目,并导入Struts2jar文件和配置web.xml文件。
struts2 jar文件

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">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list> 10 <filter>
11 <filter-name>struts2</filter-name>
12 <filter-class>
13 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
14 </filter-class>
15 </filter>
16 <filter-mapping>
17 <filter-name>struts2</filter-name>
18 <url-pattern>/*</url-pattern>
19 </filter-mapping> </web-app>
2)在src文件夹下新建一个struts.xml配置文件。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<package name="mypack" extends="struts-default">
<action name="first">
<result>first.jsp</result>
</action>
</package> 12 <!-- Action必须放在指定的包空间中 -->
13 <package name="struts2" extends="struts-default">
14 <!-- 定义login的action,其实现类为com.mhb.action.LoginAction -->
15 <action name="userlogin" class="com.mhb.action.LoginAction">
16 <!-- 定义处理结果与视图资源之间的关系 -->
17 <result name="success">/login_success.jsp</result>
18 <result name="failure">/login_failure.jsp</result>
19 <result name="input">/login2.jsp</result>
20 </action>
21 </package>
</struts>
3)新建用户登录页面login1.jsp,登录成功页面login_success.jsp,
登录失败页面login_failure.jsp以及业务逻辑组件LoginCheck.java。
login1.jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <html>
<head>
<title>用户登录</title>
</head> <body>
<h3>用户登录</h3>
<form name="form1" action="userlogin.action" method="post">
<table>
<tr>
<td>用户名:</td>
<td><input type="text" name="username"></td>
</tr>
<tr>
<td>密码:</td>
<td><input type="password" name="userpwd"></td>
</tr>
<tr>
<td><input type="submit" value="登录"></td>
<td><input type="reset" value="重置"></td>
</tr>
</table>
</form>
</body>
</html>
login_success.jsp ,login_failure.jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <html>
<body>
<center>
<font color="red">登陆成功!</font>
</center>
</body>
</html> ------------------------------------------------------------------- <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <html>
<body>
<center>
<h3>登陆失败!</h3>
</center>
</body>
</html>
业务逻辑组件LoginCheck.java
package com.mhb.model;
public class LoginCheck {
public boolean UserLoginCheck(String username,String userpwd){
if(username.equals("admin") && userpwd.equals("123456")){
return true;
}else{
return false;
}
}
}
二,新建登录控制器LoginAction.java
package com.mhb.action;
import com.mhb.model.LoginCheck;
//控制类Action
public class LoginAction {
private String username;
private String userpwd;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getUserpwd() {
return userpwd;
}
public void setUserpwd(String userpwd) {
this.userpwd = userpwd;
}
public String execute(){
//new 一个LoginCheck对象
LoginCheck lc = new LoginCheck();
//调用业务逻辑组件的判断功能来判断
if(lc.UserLoginCheck(username, userpwd)){
return "success";
}else{
return "failure";
}
}
}
三,浏览器验证
访问login1.jsp登录页面

输入错误的用户名密码跳转至登录失败页面

输入正确的用户名密码,跳转至成功页面。

基于Struts2框架实现登录案例的更多相关文章
- 基于Struts2框架实现登录案例 之 使用Struts2标签库简化表单+继承ActionSupport完成输入交验
一,使用Struts2标签库简化表单 在文章[基于Struts2框架实现登录案例]的基础上,通过使用Struts标签库可以简化登录页面login2.jsp <%@ page language=& ...
- 基于Struts2框架实现登录案例 之 程序国际化
国际化牵涉的知识非常多,这里只能简单的介绍,程序国际化的一般做法是:在jsp页面时, 不是直接输出信息,而是输出一个key值,该key值在不同语言环境下找到对应资源文件下的 对应信息,因此首先要创建满 ...
- JavaWeb_(Struts2框架)Ognl小案例查询帖子
此系列博文基于同一个项目已上传至github 传送门 JavaWeb_(Struts2框架)Struts创建Action的三种方式 传送门 JavaWeb_(Struts2框架)struts.xml核 ...
- Django框架之登录案例
内容: (1)request.GET和request.POST (2)获取get方法提交和post方法提交的数据 一.登录案例 登录逻辑代码 def login(request): if reques ...
- 基于xml的用户注册登录案例
用户注册登录 要求:3层框架,使用验证码 1 功能分析 l 注册 l 登录 1.1 JSP页面 l regist.jsp 注册表单:用户输入注册信息: 回显错误信息:当注册失败时, ...
- 基于Struts2的用户登录程序
基本步骤: 1.新建Java工程,File>New>Project>Web>Dynamic Web Project,并将工程命名为:Struts2_Demo 2.导入strut ...
- struts2框架的登录制作
首先:我们要建一个web项目 接着: 我们先来导入struts的xml文件 第一步:右击你的项目名,鼠标到MyEclipse会看到一个add struts开头的文件,点开以后看到: 这里我们选择str ...
- 基于Struts2框架的文件下载 --- Struts2
一.Struts2指定类型文件的下载 1.最终功能实现的截图:(点击文件下载链接,下载文件 ) 2.核心代码 index.jsp: <%@ page language="java&qu ...
- 基于struts2框架-自定义身份证号验证器
自定义拦截器的步骤: 1.定义一个验证器的类: > 自定义的验证器都需要实现 Validator接口. > 可以选择继承 ValidatorSupport 或 FieldValidato ...
随机推荐
- python之super()函数
python之super()函数 python的构造器奇特, 使用魔方. 构造器内对基类对象的初始化同样也很奇特, 奇特到没有半点优雅! 在构造器中使用super(class, instance)返回 ...
- Swift学习:闭包(Closures)
/* 闭包(Closures)* 闭包是自包含的功能代码块,可以在代码中使用或者用来作为参数传值.* 在Swift中的闭包与C.OC中的blocks和其它编程语言(如Python)中的lambdas类 ...
- ios7.0结合storyborad实现页面跳转的总结
折腾了一整天,本文总结一下ios7.0页面跳转有关的内容 storyboard的潜规则 我接触ios很晚,环境已经是xcode5+ios7,所以对以前的IOS开发模式并不了解.在网上查阅了很多资料,发 ...
- .NET基础之--C#中判断空字符串的3种方法性能分析
那么为什么if(a.Length==0)最快呢?因为整数判断等于最快,没有经过实例化等复杂的过程. 所以:建议大家判断字符串是否为空用 if(a.Length==0). 对于三种方法的评价: 1.if ...
- [原]项目进阶 之 持续构建环境搭建(三)Maven环境搭建
上次的博文项目进阶 之 持续构建环境搭建(二)Nexus私服器中,我们搭建了一个Nexus的maven私服,这次我们来重点讲解一下Maven的安装和配置.这里说明一下这次的环境搭建,比较基础,但却非常 ...
- 【学习总结】iOS 数据保存几种方式总结
在iOS开发过程中,不管是做什么应用,都会碰到数据保存的问题.将数据保存到本地,能够让程序的运行更加流畅,不会出现让人厌恶的菊花形状,使得用户体验更好.下面介绍一下数据保存的方式: NSKeyedAr ...
- 用 HTML 编写博客栏目
“生活中不是缺少美,而是缺少发现美的眼睛. -----罗丹 在之前阅读师哥师姐们博客的时候,尤其是那些感觉非常优秀博客的时候就注意到了一个东西..... ----------------------- ...
- 【BZOJ 1188】 [HNOI2007]分裂游戏
Description 聪聪和睿睿最近迷上了一款叫做分裂的游戏. 该游戏的规则试: 共有 n 个瓶子, 标号为 0,1,2.....n-1, 第 i 个瓶子中装有 p[i]颗巧克力豆,两个人轮流取豆子 ...
- creating indexing for SQL tunning
1. Not so long time ago, I got a report from customer. It's reported that they had a report getted v ...
- VS2013中设置大小写的快捷键
1.我们在定义头文件时,通常需要定义: #ifndef _MainMenu_H_#define _MainMenu_H_ your code... #endif 我们需要将头文件名设置为大写的: ...