struts2连接数据库实现用户注册与登录
来源:互联网 发布:ftp上传工具 mac版 编辑:程序博客网 时间:2024/05/21 10:21
利用struts2框架连接数据库实现用户注册与登录
工具/原料
eclipse、struts-2.3.16.3
Mysql
方法/步骤
工程目录:
工程用到的jar包有:
数据库用户表tb_user:
web.xml的配置:
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<filter>
<filter-name>struts2</filter-name>
<!-注意新版本的struts要按下面这样来配置-->
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>login.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.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="com" extends="struts-default">
<action name="login" class="com.UserAction" method="login">
<result name="loginout">/error.jsp</result>
<result name="loginin">/welcome.jsp</result>
</action>
<action name="regist" class="com.UserAction" method="regist">
<result name="error">/error.jsp</result>
<result name="success">/welcome.jsp</result>
</action>
</package>
</struts>
数据库Dao.java
package dao;
import java.sql.*;
public class Dao {
Connection con = null;
Statement stat = null;
ResultSet rs = null;
public Dao() {
try {
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/db_vote","root","root");
stat = con.createStatement();
} catch (Exception e) {
// TODO: handle exception
con = null;
}
}
public ResultSet executeQuery(String sql) {
try {
rs = stat.executeQuery(sql);
} catch (Exception e) {
// TODO: handle exception
rs = null;
}
return rs;
}
public int executeUpdate(String sql) {
try {
stat.executeUpdate(sql);
return 0;
} catch (Exception e) {
// TODO: handle exception
}
return -1;
}
}
UserAction.java
package com;
import java.sql.*;
import com.opensymphony.xwork2.ActionSupport;
import dao.Dao;
@SuppressWarnings("serial")
public class UserAction extends ActionSupport{
private Dao dao = new Dao();
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;
}
public String login() {
String sql = "select * from tb_user where username='" + getUsername()+"' and password ='"+getPassword()+"'";
ResultSet rS = dao.executeQuery(sql);
try {
if (rS.next()) {
return "loginin";
}
return "loginout";
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return "loginout";
}
}
public String regist() {
String sql = "insert into tb_user(username,password,isCheck) values('"+getUsername()+"','"+getPassword()+"','0')";
int i = dao.executeUpdate(sql);
if (i > -1) {
return "success";
}
return "error";
}
//通用的执行方法
// public String execute() throws Exception {
// if (getUsername().equals("scott") && getPassword().equals("tiger")) {
// System.out.println("我是success");
// return "success";
// }
//
// else {
// System.out.println("我是error");
// return "error";
// }
// }
}
用户注册界面regist.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>Insert title here</title>
</head>
<body>
<center>
<form action="regist.action" method="post">
<table>
<caption><h2>用户登录</h2></caption>
<tr>
<td>username: </td>
<td><input type="text" name="username" /></td>
</tr>
<tr>
<td>password: </td>
<td><input type="password" name="password" /></td>
</tr>
<tr>
<td><input type="submit" name="submit" /></td>
</tr>
</table>
</form>
</center>
</body>
</html>
登录界面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>Insert title here</title>
</head>
<body>
<form action="login.action" method="post">
<table align="center">
<caption><h2>用户登录</h2></caption>
<tr>
<td>用户名:<input type="text" name="username" /></td>
</tr>
<tr>
<td>密码: <input type="text" name="password"/></td>
</tr>
<tr align="center">
<td colspan="2"><input type="submit"/></td>
</tr>
</table>
</form>
</body>
</html>
操作错误页面error.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@taglib prefix="s" uri="/struts-tags" %>
<!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>Insert title here</title>
</head>
<body>
<center>
执行失败!!
</center>
</body>
</html>
操作成功界面welcome.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>Insert title here</title>
</head>
<body>
您已经执行成功!
</body>
</html>
- struts2连接数据库实现用户注册与登录
- 【J2EE核心开发学习笔记 010】struts2的搭建及连接数据库实现用户注册与登录
- struts2连接数据库实现用户登录
- 用python连接数据库,实现用户注册和用户登录
- python3.6 下连接mysql数据库实现用户登录与注册
- node.js---study2 连接池连接数据库实现登录注册查询用户的功能---
- 实现PHP用户的注册与登录
- 实现PHP用户的注册与登录 .
- 用户注册与登录功能的实现
- Unity C# 连接SQL Server数据库,实现获取和添加登录注册的用户列表
- struts2 注册与登录
- struts2框架+mysql,实现用户登录、注册功能
- Winform连接数据库并实现用户登录
- jsp连接数据库实现用户登录功能
- jsp连接数据库实现用户登录功能
- Java程序连接oracle数据库,并实现注册与登录功能
- 使用Forms Authentication实现用户注册、登录 (二)用户注册与登录
- Servlet实现用户的登录注册+sqlite数据库验证
- linux下使用gdb调试nasm程序
- GVIM: 手把手教你把Vim改装成一个IDE编程环境(图文) -- 续1
- Struts2:通过action标签向页面传值
- java自带dom工具使用实例
- #ifdef __cplusplus 倒底是什么意思?
- struts2连接数据库实现用户注册与登录
- C++函数指针实例详解(篇五)
- 【Leetcode】Sort List JAVA实现
- ArcGIS For Flex报错二
- 考研or就业
- .bashrc文件
- Ping程序
- boost资料
- C++ primer 第五版 中文版 练习 12.24 个人code