zoukankan      html  css  js  c++  java
  • 团队冲刺--第一阶段(六)

    一、前言

      昨天实现了登录注册功能。

      今天修改了登录注册功能,美化页面。遇到的问题,注册登录成功之后用户id的传递出现问题,对服务端servlet进行了修改。

      明天对页面进行美化。

    二、成果展示

     三、代码

    LoginServlet.java

    package Servlet;
    
    import java.io.IOException;
    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 Dao.UserDao;
    
    @WebServlet("/login")
    public class LoginServlet extends HttpServlet {
        
        private static final long serialVersionUID = 1L;
         public LoginServlet() {
                super();
                // TODO Auto-generated constructor stub
            }
        UserDao dao = new UserDao();
        String table="user";//数据库中的表名
        
        protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            req.setCharacterEncoding("utf-8");
            resp.setContentType("text/html;charset=utf-8");
            String username = req.getParameter("username");
            String password = req.getParameter("password");
            boolean b =dao.login(table,username);
            boolean bb=dao.login2(table,username, password);
            String message="";
            if(b) {
                if(bb) {
                    int t=dao.login3(table, username);
                    message+=t;
                }else {
                    message="密码错误";
                }
            } else {
                message="该用户名不存在";
            }
            try {
                resp.getWriter().println(message);
                System.out.println(message);
                // 将消息传给客户端
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                resp.getWriter().close(); // 关闭这个流,不然会发生错误的
            }
        }
    }
    View Code

    RServlet.java

    package Servlet;
    import java.io.IOException;
    import java.util.regex.Matcher;
    import java.util.regex.Pattern;
    
    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 Dao.UserDao;
    
    @WebServlet("/register")
    public class RServlet extends HttpServlet {
        
        private static final long serialVersionUID = 1L;
         public RServlet() {
                super();
                // TODO Auto-generated constructor stub
            }
        UserDao dao = new UserDao();
        String table="user";//数据库中的表名
        
        protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            req.setCharacterEncoding("utf-8");
            resp.setContentType("text/html;charset=utf-8");
            System.out.println("request--->"+req.getRequestURL()+"===="+req.getParameterMap().toString());
            String username = req.getParameter("username");
            String password = req.getParameter("password");
            String message="";
            if(username!=null||password!=null) {
                boolean b =dao.login(table,username);
                if(!b) {
                    dao.register(table,username,password); 
                    message="注册成功";
                } else {
                    message="该用户名已注册";
                }
                
            }
            
            try {
                resp.getWriter().println(message);
                System.out.println(message);
                // 将消息传给客户端
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                resp.getWriter().close(); // 关闭这个流,不然会发生错误的
            }
        }
            
    }
    View Code

    UserDao.java

    package Dao;
    
    import java.sql.Connection;
    import java.sql.ResultSet;
    import java.sql.Statement;
    
    import util.DBUtil;
    
    public class UserDao {
    
        public void register(String table,String username,String password) {
            String sql = "insert into "+table+" (username,password) values('" + username +"','" + password + "')";
            Connection conn = DBUtil.getConn();
            Statement state = null;
            int a = 0;
            try {
                state = conn.createStatement();
                a=state.executeUpdate(sql);
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                DBUtil.close(state, conn);
            }        
        }
        
        public boolean login(String table,String username) {
            // TODO Auto-generated method stub
            String sql = "select * from "+table+" where username ='" + username + "'";
            Connection conn = DBUtil.getConn();
            Statement state = null;
            ResultSet rs = null;    
            boolean b=false;
            try {
                state = conn.createStatement();
                rs = state.executeQuery(sql);
                while (rs.next()) {
                    b=true;
                }
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                DBUtil.close(rs, state, conn);
            }
            return b;        
        }
        
        public boolean login2(String table,String username, String password) {
            // TODO Auto-generated method stub
            String sql = "select * from "+table+" where username ='" + username + "'";
            Connection conn = DBUtil.getConn();
            Statement state = null;
            ResultSet rs = null;    
            boolean b=false;
            try {
                state = conn.createStatement();
                rs = state.executeQuery(sql);
                while (rs.next()) {
                    if(password.equals(rs.getString("password"))) {
                        b=true;
                    }
                }
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                DBUtil.close(rs, state, conn);
            }
            return b;        
        }
        
        public int login3(String table,String username) {
            // TODO Auto-generated method stub
            String sql = "select * from "+table+" where username ='" + username + "'";
            Connection conn = DBUtil.getConn();
            Statement state = null;
            ResultSet rs = null;    
            int id = 0;
            try {
                state = conn.createStatement();
                rs = state.executeQuery(sql);
                while (rs.next()) {
                    id = rs.getInt("userid");
                }
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                DBUtil.close(rs, state, conn);
            }
            return id;       
        }
    }
    View Code

    四、今日团队链接

    https://www.cnblogs.com/xhj1074376195/p/12741021.html

  • 相关阅读:
    递归--数字黑洞--蓝桥杯
    王、后问题
    递归--简单题--求二项式值
    有问题的题
    LeetCode----994. 腐烂的橘子「深度优先搜索」
    SpringBoot ---- MyBatis Plus 入门
    Spring Boot ---- 整合 MyBatis (注解方式)
    Android笔记
    LeetCode----跳跃游戏Ⅱ「动态规划」
    2020年米哈游秋季招聘程序 B卷编程题
  • 原文地址:https://www.cnblogs.com/xhj1074376195/p/12764379.html
Copyright © 2011-2022 走看看