Webデータベースリンクのログイン登録によるパスワード変更機能を実現

22795 ワード

/**
 * Copyright (C), 2017-2017
 * FileName: User
 * Author:   ichimoku
 * Date:     2017/12/5 14:31
 * version:  7.9.0
 *                     
 *                               
 */
public class User {

    //      -----                    
    public static Boolean CheckUser(String username,String password) {
        int count = 0;
        Connection conn = null;
        PreparedStatement ps = null;
        ResultSet rs = null;
        // 1.    
        try {
            Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            System.out.println("      ");
        }
        // 2.    
        try {
            conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/    ", "   ", "  ");
            /*System.out.println("      !");*/

            String sql = "SELECT id FROM account WHERE name=? AND password=?";
            ps=conn.prepareStatement(sql);
            ps.setString(1,username);
            ps.setString(2,password);
            rs=ps.executeQuery();
while (rs.next()){ count++; } } catch (SQLException e) { System.out.println(" "); } finally { // 3. try { if (null != conn) { conn.close(); } if (null != ps) { ps.close(); } /*System.out.println(" !");*/ } catch (SQLException e) { System.out.println(" "); } } return count>0 ? true:false; } // ----- public static void AddUser(String username,String password) { Connection conn = null; PreparedStatement ps = null; ResultSet rs = null; // 1. try { Class.forName("com.mysql.jdbc.Driver"); } catch (ClassNotFoundException e) { System.out.println(" "); } // 2. try { conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/ ", " ", " "); /*System.out.println(" !");*/ String sql = "INSERT INTO account SET (name,password) VALUE (?,?)"; ps=conn.prepareStatement(sql); ps.setString(1,username); ps.setString(2,password); rs=ps.executeQuery(); } catch (SQLException e) { System.out.println(" "); } finally { // 3. try { if (null != conn) { conn.close(); } if (null != ps) { ps.close(); } System.out.println(" !!!"); } catch (SQLException e) { System.out.println(" "); } } } // --- public static void UpdateUser(String newpassword,String username,String password) { Connection conn = null; PreparedStatement ps = null; ResultSet rs = null; // 1. try { Class.forName("com.mysql.jdbc.Driver"); } catch (ClassNotFoundException e) { System.out.println(" "); } // 2. try { conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/ ", " ", " "); /*System.out.println(" !");*/ String sql = "UPDATE account SET password=? WHERE name=? AND password=?"; ps=conn.prepareStatement(sql); ps.setString(1,newpassword); ps.setString(2,username); ps.setString(3,password); rs=ps.executeQuery(); } catch (SQLException e) { System.out.println(" "); } finally { // 3. try { if (null != conn) { conn.close(); } if (null != ps) { ps.close(); } System.out.println(" !"); } catch (SQLException e) { System.out.println(" "); } } } }

 
/**
 * Copyright (C), 2017-2017
 * FileName: Check
 * Author:   ichimoku
 * Date:     2017/12/5 14:40
 * version:  7.9.0
 *                     
 *                               
 */

@WebServlet(name="CheckUser",urlPatterns="/servlet/CheckUser")
public class CheckUser extends HttpServlet{
    private static final long serialVersionUID = 1L;

    public CheckUser(){
        super();
    }

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doPost(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //              
        String username = new String(req.getParameter("username").getBytes("iso-8859-1"), "utf-8");
        String password = req.getParameter("password");

        //                
        System.out.println(username);

        //            
        if (username!=null && password!=null){
            boolean flag= User.CheckUser(username,password);
            //  flag     true    if,false    else
            if (flag){
                req.getRequestDispatcher("/pages/user/login_success.html").forward(req, resp);
            }else{
                //req.getRequestDispatcher("/pages/user//Welcome.jsp").forward(req, resp);
            }
        }else{
            System.out.println("       ");
        }
    }
}

 
/**
 * Copyright (C), 2017-2017
 * FileName: Add
 * Author:   ichimoku
 * Date:     2017/12/5 16:01
 * version:  7.9.0
 *                     
 *                               
 */
@WebServlet(name="AddUser",urlPatterns="/servlet/AddUser")
public class AddUser extends HttpServlet {
    private static final long serialVersionUID = 1L;

    public AddUser(){
        super();
    }

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doPost(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //              
        String username = new String(req.getParameter("username").getBytes("iso-8859-1"), "utf-8");
        String password = req.getParameter("password");

        //                
        System.out.println(username);

        //            
        if (username!=null && password!=null){
            boolean flag=User.CheckUser(username,password);
            //  flag     true    if,false    else,         ,    ture   
            //          ,           ,    false,            ,    
            // else   AddUser   ,                !
            if (flag){
                //req.getRequestDispatcher("/pages/user//Welcome.jsp").forward(req, resp);
            }else{
                //req.getRequestDispatcher("/pages/user//Welcome.jsp").forward(req, resp);
                User.AddUser(username,password);
                req.getRequestDispatcher("/pages/user/login_success.html").forward(req, resp);
            }
        }else{
            System.out.println("       ");
        }
    }
}

 
/**
 * Copyright (C), 2017-2017
 * FileName: Update
 * Author:   ichimoku
 * Date:     2017/12/5 16:05
 * version:  7.9.0
 *                     
 *                               
 */

@WebServlet(name="UpdateUser",urlPatterns="/servlet/UpdateUser")
public class UpdateUser extends HttpServlet {
    private static final long serialVersionUID = 1L;

    public UpdateUser(){
        super();
    }

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doPost(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //              
        String username = new String(req.getParameter("username").getBytes("iso-8859-1"), "utf-8");
        String password = req.getParameter("password");
        String newpassword = req.getParameter("newpassword");

        //                
        System.out.println(username);

        //            
        if (username!=null && password!=null){
            boolean flag=User.CheckUser(username,password);
            //  flag     true    if,false    else,         ,     true,           
            //         !     if    UpdateUser  ,       !
            if (flag){
                User.UpdateUser(newpassword,username,password);
                req.getRequestDispatcher("/pages/user/login_success.html").forward(req, resp);
            }else{
                //req.getRequestDispatcher("/pages/user//Welcome.jsp").forward(req, resp);
            }
        }else {
            System.out.println("       ");
        }
    }
}

 
転載先:https://www.cnblogs.com/ichimoku/p/7989026.html