利用Java和jsp实现简单的后台登录系统

欢迎关注本人公众号:Bean冷的心,内容包含计算机网络、数据结构与算法、科技资讯和知识扫盲,期待结实各位大佬和对计算机感兴趣的小伙伴~
在这里插入图片描述

一、成品图

第一次写,请大佬们轻喷…最近刚开始学习JavaWeb,学习了两周,实现了简单的后台登录系统,现在做一个回顾,只考虑如何实现登录功能,所以没有做美化,见谅。结果图如下。输入用户名和密码:
输入完用户名和密码之后哦
通过数据库进行比对之后,如果输入正确,则:验证成功界面
如果输入失败,则返回:

在这里插入图片描述

二、实现步骤

功能就是这样,很简单。思路是
1.要有一个表单用来接收从键盘输入的用户名和密码
2.要有数据库存储数据
3.要有验证功能
大致就是这样几点功能,所以首先建立一个Web项目,因为要验证用户的信息,所以创建一个User类,属性有ID,姓名,密码,直接get、set方法:

public class User {
	private int uid;
	private String uname;
	private String password;
	public int getUid() {
		return uid;
	}
	public void setUid(int uid) {
		this.uid = uid;
	}
	public String getUname() {
		return uname;
	}
	public void setUname(String uname) {
		this.uname = uname;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	public String toString() {
		return "User [uid=" + uid + ", uname=" + uname + ", password="
				+ password + "]";
	}
}

数据库直接使用Navicat生成一个user表,添加两个数据即可,我的数据是这样
数据库信息

既然要验证用户名和密码的正确性,所以需要创建一个UserDao,创建相应的方法,我只验证密码,所以只创建了验证功能,代码如下:

public User SelectOne(String name,String pwd) {
		Connection conn = null;
		PreparedStatement ps = null;
		ResultSet rs = null;
		try {
			//1.連接數據庫
			conn = DBUtils.getConn();
			//2.創建語句
			String sql="select * from user where uname = ? and password = ?";
			ps = conn.prepareStatement(sql);
			ps.setString(1, name);
			ps.setString(2, pwd);
			//3.執行語句
			rs = ps.executeQuery();
			if(rs.next()) {
				User user = new User();
				user.setUid(rs.getInt("uid"));
				user.setUname(rs.getString("uname"));
				user.setPassword(rs.getString("password"));
				return user;
			}
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			DBUtils.close(conn, ps, rs);
		}
		return null;
	}

万事俱备,只差Servlet最后一步了,代码如下:

public class LoginServlet extends HttpServlet {
protected void service(HttpServletRequest req, HttpServletResponse resp)
		throws ServletException, IOException {
	//1.設置解決post方式中文亂碼問題
	req.setCharacterEncoding("utf-8");
	//2.獲取表單訊息
	String uname = req.getParameter("uname");
	String pwd = req.getParameter("pwd");
	//3.邏輯判斷
	UserDao ud = new UserDao();
	User user = ud.SelectOne(uname, pwd);
	System.out.println(user);
	if(user!=null) {
		req.setAttribute("user", user);
		req.getRequestDispatcher("welcome.jsp").forward(req, resp);;
	}else {
		req.setAttribute("error", "用戶名或密碼輸入不正確");
		req.getRequestDispatcher("index.jsp").forward(req, resp);
	}
}
}

相关jsp代码太简单了,就不展示了。

欢迎关注本人公众号:Bean冷的心,内容包含计算机网络、数据结构与算法、科技资讯和知识扫盲,期待结实各位大佬和对计算机感兴趣的小伙伴~

发布了54 篇原创文章 · 获赞 82 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/u011679785/article/details/84592404
今日推荐