jsp&servlet初体验——用户登录功能实现

数据库准备—创建db_login数据库  t_user表

1、创建web工程

2、创建用户model   user.java

 1 package com.gxy.model;
 2
 3 public class User {
 4     private int id;
 5     private String userName;
 6     private String password;
 7
 8     public User() {
 9         super();
10     }
11
12
13     public User(String userName, String password) {
14         super();
15         this.userName = userName;
16         this.password = password;
17     }
18
19
20     public int getId() {
21         return id;
22     }
23     public void setId(int id) {
24         this.id = id;
25     }
26     public String getUserName() {
27         return userName;
28     }
29     public void setUserName(String userName) {
30         this.userName = userName;
31     }
32     public String getPassword() {
33         return password;
34     }
35     public void setPassword(String password) {
36         this.password = password;
37     }
38
39 }

3、创建util包 Dbutil.java

 1 package com.gxy.util;
 2
 3 import java.sql.Connection;
 4 import java.sql.DriverManager;
 5
 6 public class Dbutil {
 7     private String dbUrl ="jdbc:mysql://localhost:3306/db_login";
 8     private String jdbcName="com.mysql.jdbc.Driver";
 9     private String dbUserName="root";
10     private String dbpassword="123456";
11
12     public Connection getcon() throws Exception{
13         Class.forName(jdbcName);
14         Connection con=DriverManager.getConnection(dbUrl,dbUserName,dbpassword);
15         return con;
16     }
17
18     public void closeCon(Connection con) throws Exception{
19         con.close();
20     }
21
22 }

4、创建dao包  UserDao.java

 1 package com.gxy.dao;
 2
 3 import java.sql.Connection;
 4 import java.sql.PreparedStatement;
 5 import java.sql.ResultSet;
 6
 7 import com.gxy.model.User;
 8
 9 public class UserDao {
10     public User login(Connection con,User user) throws Exception{
11         User resultUser=null;
12         String sql="select * from t_user where userName=? and passWord=?";
13         PreparedStatement pst=con.prepareStatement(sql);
14         pst.setString(1, user.getUserName());
15         pst.setString(2,user.getPassword());
16         ResultSet rs=pst.executeQuery();
17         if(rs.next()){
18             resultUser=new User();
19             resultUser.setUserName(rs.getString("userName"));
20             resultUser.setPassword(rs.getString("passWord"));
21         }
22         return resultUser;
23     }
24
25 }

5、创建servlet包  loginServlet

 1 package com.gxy.servlet;
 2
 3 import java.io.IOException;
 4 import java.sql.Connection;
 5
 6 import javax.servlet.RequestDispatcher;
 7 import javax.servlet.ServletException;
 8 import javax.servlet.http.HttpServlet;
 9 import javax.servlet.http.HttpServletRequest;
10 import javax.servlet.http.HttpServletResponse;
11 import javax.servlet.http.HttpSession;
12
13 import com.gxy.dao.UserDao;
14 import com.gxy.model.User;
15 import com.gxy.util.Dbutil;
16
17 public class loginServlet extends HttpServlet{
18
19     /**
20      *
21      */
22     private static final long serialVersionUID = 1L;
23
24     Dbutil dbutil=new Dbutil();
25     UserDao userDao=new UserDao();
26     @Override
27     protected void doGet(HttpServletRequest req, HttpServletResponse resp)
28             throws ServletException, IOException {
29         this.doPost(req, resp);
30     }
31
32     @Override
33     protected void doPost(HttpServletRequest req, HttpServletResponse resp)
34             throws ServletException, IOException {
35         String userName=req.getParameter("userName");
36         String passWord=req.getParameter("passWord");
37
38         Connection con=null;
39         try {
40             User user=new User(userName,passWord);
41             con=dbutil.getcon();
42             User resultUser=userDao.login(con, user);
43             if(resultUser==null){
44                 System.out.println("no");
45             }else{
46                 HttpSession session=req.getSession();
47                 session.setAttribute("userName", resultUser.getUserName());
48                 session.setAttribute("passWord", resultUser.getPassword());
49                 resp.sendRedirect("target.jsp");
50             }
51         } catch (Exception e) {
52             // TODO Auto-generated catch block
53             e.printStackTrace();
54         }
55
56     }
57
58 }

6、用户登录界面  login.jsp

 1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
 2 <%
 3 String path = request.getContextPath();
 4 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
 5 %>
 6
 7 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 8 <html>
 9   <head>
10     <base href="<%=basePath%>">
11
12     <title>My JSP ‘login.jsp‘ starting page</title>
13
14     <meta http-equiv="pragma" content="no-cache">
15     <meta http-equiv="cache-control" content="no-cache">
16     <meta http-equiv="expires" content="0">
17     <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
18     <meta http-equiv="description" content="This is my page">
19     <!--
20     <link rel="stylesheet" type="text/css" href="styles.css">
21     -->
22
23   </head>
24
25   <body>
26   <form action="login" method="post">
27     <table>
28         <tr>
29             <td>用户名:</td>
30             <td><input type="text" id="userName" name="userName"></td>
31         </tr>
32         <tr>
33             <td>密码:</td>
34             <td><input type="password" id="passWord" name="passWord"></td>
35         </tr>
36         <tr>
37             <td colspan="2"><input type="submit" value="提交" ></td>
38         </tr>
39     </table>
40    </form>
41   </body>
42 </html>

跳转界面  target.jsp

 1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
 2 <%
 3 String path = request.getContextPath();
 4 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
 5 %>
 6
 7 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 8 <html>
 9   <head>
10     <base href="<%=basePath%>">
11
12     <title>My JSP ‘target.jsp‘ starting page</title>
13
14     <meta http-equiv="pragma" content="no-cache">
15     <meta http-equiv="cache-control" content="no-cache">
16     <meta http-equiv="expires" content="0">
17     <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
18     <meta http-equiv="description" content="This is my page">
19     <!--
20     <link rel="stylesheet" type="text/css" href="styles.css">
21     -->
22
23   </head>
24
25   <body>
26     <h1>用户名:<%=session.getAttribute("userName") %></h1>
27     <h1>密码:<%=session.getAttribute("passWord") %></h1>
28   </body>
29 </html>

7、运行结果

原文地址:https://www.cnblogs.com/guoxiangyue/p/8439856.html

时间: 2024-11-06 07:54:27

jsp&servlet初体验——用户登录功能实现的相关文章

Java Web学习(30): 使用JSP+Servlet+JavaBean实现用户登录

实现用户登录 用户名admin,密码admin,登录成功使用服务器内部跳转到login_success2.jsp页面,并且提示登录成功的用 户名,如果登录失败则跳转到login_failure2.jsp页面. 之前我们使用JSP实现过,也JSP+JavaBean实现过,这一次我们更加细化,使用JSP+Servlet+JavaBean实现用 户登录,好多的源码也是在前面写过. 我们先来看整体的目录结构: 再来看看源代码: 实体类Users.java源代码: package com.entity;

JavaWeb学习记录(六)——用户登录功能

使用JDBC.spring框架.servlet实现一个简单的用户登录功能. 一.mySql数据库 SET FOREIGN_KEY_CHECKS=0; -- ------------------------------ Table structure for user-- ----------------------------DROP TABLE IF EXISTS `user`;CREATE TABLE `user` (  `id` int(11) NOT NULL AUTO_INCREMEN

简单使用JDBC和Servlet实现用户注册和登录功能

简单的浏览了一下Servlet和JDBC方面的知识,于是写了一下简单使用JDBC和Servlet实现用户注册和登录功能,具体实现如下: 一.大体的编码思路 1.1.注册功能 获取注册页面提交的username.password和repeatPassword: 判断password和 repeatPassword是否一致,一致就继续执行程序,不一致则结束程序: 遍历数据库中tb_user,查看数据库中是否存在username,存在则结束程序,不存在则继续进行程序,实现注册功能: 1.2.登录功能

[转]你会做Web上的用户登录功能吗?

转自:http://coolshell.cn/articles/5353.html Web上的用户登录功能应该是最基本的功能了,可是在我看过一些站点的用户登录功能后,我觉得很有必要写一篇文章教大家怎么来做用户登录功能.下面的文章告诉大家这个功能可能并没有你所想像的那么简单,这是一个关系到用户安全的功能,希望大家能从下面的文章中能知道什么样的方法才是一个好的用户登录功能.以下内容,转载时请保持原文一致,并请注明作者和出处. 用户名和口令 首先,我们先来说说用户名和口令的事.这并不是本站第一次谈论这

如何设计安全的用户登录功能

用户登录功能是Web应用系统具备的最基本的功能,关系到用户数据和应用系统数据的安全,设计一个安全的用户登录功能,涉及到以下几个方面的内容. (一) 老生常谈——口令 1. 口令长度与复杂度限制 限制用户输入一些非常容易被破解的口令,比如qwert.asdfg.123456.password之类的,参考twitter和 facebook的设计,为这样的口令做一个黑名单,不允许使用黑名单中的口令.同时,还对用户口令的长度.复杂度进行检查,要求用户设置足够长度,且复 杂度符合安全策略的口令. 在口令安

实现Web上的用户登录功能

你会做Web上的用户登录功能吗? Web上的用户登录功能应该是最基本的功能了,可是在我看过一些站点的用户登录功能后,我觉得很有必要写一篇文章教大家怎么来做用户登录功能.下面 的文章告诉大家这个功能可能并没有你所想像的那么简单,这是一个关系到用户安全的功能,希望大家能从下面的文章中能知道什么样的方法才是一个好的用户登录 功能 用户名和口令 首先,我们先来说说用户名和口令的事.这并不是本站第一次谈论这个事了.如何管理自己的口令让你知道怎么管理自己的口令,破解你的口令让你知道在现代这样速度的计算速度下

你会做Web上的用户登录功能吗?

Web上的用户登录功能应该是最基本的功能了,可是在我看过一些站点的用户登录功能后,我觉得很有必要写一篇文章教大家怎么来做用户登录功能.下面的文章告诉大家这个功能可能并没有你所想像的那么简单,这是一个关系到用户安全的功能,希望大家能从下面的文章中能知道什么样的方法才是一个好的用户登录功能.以下内容,转载时请保持原文一致,并请注明作者和出处. 用户名和口令 首先,我们先来说说用户名和口令的事.这并不是本站第一次谈论这个事了.如何管理自己的口令让你知道怎么管理自己的口令,破解你的口令让你知道在现代这样

Struts+Hibernate+Spring实现用户登录功能

Struts+Hibernate+Spring实现用户登录功能 通过登录案例实现三大框架之间的整合,登录功能是任何系统和软件必不可少的一个模块,然而通过这个模块来认识这些复杂的框架技术,理解数据流向和整个设计思路是相当容易的.只有在掌握了这些小模块的应用后,才能轻松的去研究和设计出更有创意的,更加严密的系统. 本人通过学习,实现了这个小功能,现在将实现思想和过程总结如下.希望各位大神朋友多多审查,有什么不到位的地方,请通过邮件告诉我([email protected]),在此表示感谢:新手朋友,

Javaweb 使用Servlet技术改写用户登录 使用Filter技术解决中文乱码

先把实验3的jsp页面复制过来: WebContent->WEB-INF->lib下面的jar包8.0版本也要记得复制: Java Resources->src下的 cn.edu.henu.bean(User.java 用户数据库操作)和cn.edu.henu.util(DBConnection.java 数据库的连接操作)这两个包 <?xml version="1.0" encoding="UTF-8"?> <web-app x