SQL登录注册练习
2024-09-03 14:25:41
/class User
package com.neusoft.bean; public class User {
private int password;
private String name; public User() {
super();
// TODO Auto-generated constructor stub
}
public User(int password, String name) {
super();
this.password = password;
this.name = name;
} public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getPassword() {
return password;
}
public void setPassword(int password) {
this.password = password;
}
@Override
public String toString() {
return "password=" + password + ", name=" + name;
} }
/class LoginDao
package com.neusoft.dao; import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import com.neusoft.bean.User;
import com.neusoft.bean.UserRegist;
import com.neusoft.utils.JDBCUtil; public class LoginDao {
public User getUser(String name,String password){
User user=null;
PreparedStatement ps=null;
ResultSet rs =null;
Connection conn=JDBCUtil.getConnection();
String sql="select * from t_user where password= ? and name =?";
try {
ps = conn.prepareStatement(sql);
ps.setString(1, password);
ps.setString(2, name);
rs = ps.executeQuery();
if (rs.next()) {
String username = rs.getString("name");
int password2 = rs.getInt("password");
user=new User(password2,username);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
JDBCUtil.close(ps, rs, conn);
}
return user; }
public void Add(String name,String password,String email){ PreparedStatement ps=null;
Connection conn=JDBCUtil.getConnection();
String sql="insert into t_user values(?,?,?,?)";
try {
ps = conn.prepareStatement(sql);
ps.setString(1, null);
ps.setString(2, name);
ps.setString(3, password);
ps.setString(4, email);
ps.executeUpdate();
System.out.println(ps.toString());
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally { if (ps !=null) {
try {
ps.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if (conn !=null) {
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
public void Update(String name,String password,String email){ PreparedStatement ps=null;
Connection conn=JDBCUtil.getConnection();
String sql="update t_user set name=?,pasword=?,mail=? where id=?";
try {
ps = conn.prepareStatement(sql);
ps.setString(1, null);
ps.setString(2, name);
ps.setString(3, password);
ps.setString(4, email);
ps.executeUpdate();
System.out.println(ps.toString());
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally { if (ps !=null) {
try {
ps.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if (conn !=null) {
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
/class LoginServlet
package com.neusoft.servlet; import java.io.IOException;
import java.util.ArrayList;
import java.util.List; import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import com.neusoft.bean.User;
import com.neusoft.dao.LoginDao; @WebServlet("/LoginServlet")
public class LoginServlet extends HttpServlet {
private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String name = request.getParameter("username");
String psd = request.getParameter("pwd");
User user=new LoginDao().getUser(name, psd);
if (user !=null) {
List<User>List=new ArrayList<User>();
List.add(user);
request.setAttribute("stuList", List);
//response.sendRedirect("Login-yes.html");//重定向
request.getRequestDispatcher("/login-success.jsp").forward(request, response);//转发
}else {
request.getRequestDispatcher("/Login-no.html").forward(request, response);//转发
}
} protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response);
// request.setCharacterEncoding("utf-8");//第一次传参之前设置编码格式
// response.setContentType("text/html;charset=utf-8");
// response.setHeader("Content-Type", "text/html;charset=utf-8");
// response.getWriter().println("");
} }
/class RegistServlet
package com.neusoft.servlet; import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.neusoft.bean.User;
import com.neusoft.dao.LoginDao;
@WebServlet("/RegistServlet")
public class RegistServlet extends HttpServlet {
private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
String name = request.getParameter("username");
String psd = request.getParameter("pwd");
String psd2 = request.getParameter("pwd2");
String email = request.getParameter("email");
User user=new LoginDao().getUser(name, psd);
if (user != null) {
request.getRequestDispatcher("/Regist-error.html").forward(request, response);//转发
}else if (psd2.equals(psd)) {
response.setHeader("Content-Type", "text/html;charset=utf-8");
new LoginDao().Add( name, psd, email);
response.sendRedirect("/Regist-success.html");//重定向
} } }
/class JDBCUtil
package com.neusoft.utils; import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement; public class JDBCUtil {
private static String driver="com.mysql.jdbc.Driver";
private static String url="jdbc:mysql://localhost:3306/demo";
private static String username="root";
private static String password="123456";
static{ try {
Class.forName(driver);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }
public static Connection getConnection(){
try {
return DriverManager.getConnection(url, username, password);
} catch (SQLException e) {
// TODO Auto-generated catch block
return null;
}
} public static void close(Statement st,ResultSet rs,Connection conn){
if (conn !=null) {
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if (rs !=null) {
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if (st !=null) {
try {
st.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
Login.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="/TestLogin/LoginServlet" method="get">
用户名:<input type="text" name="username"/>
密码:<input type="password" name="pwd"/>
<input type="submit" value="提交"/>
</form>
<a href="Regist.html">去注册</a>
</body>
</html>
/login-success.jsp
<%@page import="com.neusoft.bean.User"%>
<%@page import="java.util.ArrayList"%>
<%@page import="java.util.List"%>
<%@ 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>
<table border="" align="center" width="50%">
<tr>
<th>姓名 </th>
<th>密码 </th>
<th colspan=""> </th>
</tr>
<%
List<User>stuList=new ArrayList<User>();
stuList=(List<User>)request.getAttribute("stuList");
for(int i=;i<stuList.size();i++){
User user=stuList.get(i);
%>
<tr>
<td><%=user.getName() %></td>
<td><%=user.getPassword() %></td>
<td><a href="#">修改</a></td>
<td><a href="#">删除</a></td>
</tr>
<%
}
%> </table>
</body>
</html>
Regist.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="/TestLogin/RegistServlet" method="post">
用户名:<input type="text" name="username"/><br>
密码:<input type="password" name="pwd"/><br>
确认密码:<input type="password" name="pwd2"/><br>
邮箱:<input type="text" name="email"/><br>
<input type="submit" value="提交"/>
</form>
</body>
</html>
其他的就不传了,就一行代码,还有就是导包
这次是在这
最新文章
- 在 SAE 上部署 ThinkPHP 5.0 RC4
- Centos6.x 下安装Jexus独立版
- 重温JSP学习笔记--El函数库
- Unity3D设计原则
- git pull/push项目的时候总是提示要输入用户名密码的解决方案
- swfit中的同步锁
- mysql 配置文件 value
- Bind 跨域名别名解析的问题
- linux查看文件权限
- 【转】SQL常用的语句和函数
- ajax后台处理返回json值
- 初窥Linux 之 区分硬连接和软连接
- 拆开Ceph看队列和线程
- top的用法
- phantomjs集成到scrapy中,并禁用图片,切换UA
- SQL Server遗失管理权限账号密码怎么办?
- Handler的postDelayed的实现方法
- 『TensorFlow』卷积层、池化层详解
- [LeetCode&;Python] Problem 696. Count Binary Substrings
- CSS3----实现毛玻璃完美效果
热门文章
- 066 Plus One
- 程序运行过程中遇到“ORA-03114: not connected to ORACLE”的问题解决
- 滚动条插件mCustomScrollbar
- oo第三单元总结
- Java基础(Java概述、环境变量、注释、关键字、标识符、常量)
- Wrinkles should merely indicate where smiles have been.
- 通过CMD命令行创建和使用Android 模拟器 AVD
- External Pricing in C4C and ERP
- VR/AR软件—Mirra测试(截至2017/11/13),使AR/VR创作更加便捷
- 八数码问题(一) 暴力BFS + STL