MVC案例登录页面

MVC案例登录页面

MVC概念的基本应用,基于MySQL数据库。

1,新建login.jsp页面,也就是首页,代码如下:


<html>

  <head>

    <title>登录</title>

  </head>

  <body>

  <form action="loginServlet" method="post">

    <%--@declare id="uname"--%>

      <%--@declare id="pwd"--%>

      <label for="uname">用户名:</label>

      <input type="text" name="username"><br>

      <label for="pwd">密码</label>

      <input type="password" name="pwd"><br>

    <input type="submit" value="登录">

  </form>

  </body>

</html>

2,新建模型层,处理登录请求。代码如下:


import entity.Login;

import java.sql.*;

//模型层:用于处理登录(查询数据库)

public class LoginDao {

    public static int login(Login login) {

        int flag=-1; //-1:系统异常,0:用户名或密码有误, 1:登陆成功

        int result = -1;

        Connection connection = null;

        PreparedStatement pstmt =null;

        ResultSet rs = null;

        // boolean flag = false;//默认登录失败

        try {

            Class.forName("com.mysql.jdbc.Driver");

            connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb", "root", "root");

            String sql = "select count(*) from login where Uname =? and pwd=? ";

            pstmt = connection.prepareStatement(sql);

            pstmt.setString(1, login.getUname());

            pstmt.setString(2, login.getPwd());

            rs = pstmt.executeQuery();

            if (rs.next()) {

                result = rs.getInt(1);

            }

            if (result > 0) {

                return 1;

            } else {

                return 0;//登录失败

            }

        } catch (Exception e) {

            e.printStackTrace();

            return -1;

        }//系统失败

        finally {

            try{

            if (rs != null) rs.close();

            if (pstmt != null) pstmt.close();

            if (connection != null) connection.close();

        } catch (Exception e){

                e.printStackTrace();

            }

        }

    }

}

3,新建传递数据的类,代码如下:


public class Login {

    private int id;

    private String Uname;

    private String pwd;

    public Login() {

    }

    public Login(String Uname ,String pwd) {

        this.Uname= Uname;

        this.pwd = pwd;

    }

    public Login(int id,String Uname ,String pwd) {

            this.id=id;

            this.Uname= Uname;

            this.pwd = pwd;

    }

    public int getId() {

        return id;

    }

    public void setId(int id) {

        this.id = id;

    }

    public String getUname() {

        return Uname;

    }

    public void setUname(String uname) {

        Uname = uname;

    }

    public String getPwd() {

        return pwd;

    }

    public void setPwd(String pwd) {

        this.pwd = pwd;

    }

}

4,新建成功页面welcome.jsp,代码如下:


public class LoginServlet extends HttpServlet {

    @Override

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {

        //处理登录请求

        request.setCharacterEncoding("utf-8");

        String name = request.getParameter("username");

        String pwd  = request.getParameter("pwd");

        Login login =new Login(name,pwd);//用户名和密码

        //调用模型层登录功能

        int result = LoginDao.login(login);

        if (result > 0){

                response.sendRedirect("welcome.jsp");

        }else{

                response.sendRedirect("index.jsp");

        }

    }

    @Override

    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

      this.doGet(req,resp);

    }

}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容