您的位置:首页 > 其它

MVC模式登陸例子

2017-10-11 12:14 176 查看
一直想寫博客來的,今天開始給大家分享,有疑問的汪評論,大家彼此好好學習QQ374088533

DAO層:

   

package com.ibm.cn.dao;
import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStream;

import java.io.InputStreamReader;
import com.ibm.cn.vo.User;
public class UserDAO {

 public User selectByNamePwd(String username, String password) {

  User user = null;

  InputStream is = UserDAO.class.getResourceAsStream("userstable.txt");

  BufferedReader fbr;

  try {

   fbr = new BufferedReader(new InputStreamReader(is));

   String line = fbr.readLine();

   while (line != null) {

    String[] s = line.split("#");

    if (s[0].equals(username) && s[1].equals(password)) {

     user = new User(s[0], s[1], s[2]);
     break;

    }

    line = fbr.readLine();

   }

  } catch (IOException e) {

   // TODO Auto-generated catch block

   e.printStackTrace();

  }
  return user;
 }
 public static void main(String[] args) {

  UserDAO dao = new UserDAO();

  System.out.println(dao.selectByNamePwd("xiaoming", "123"));

 
}}

Service層:

package com.ibm.cn.service;
import com.ibm.cn.dao.UserDAO;

import com.ibm.cn.vo.User;
public class LoginService {

 UserDAO dao = new UserDAO();

 public int login(String username,String password){

  int flag = 3;

  User user = dao.selectByNamePwd(username, password);

  if(user != null){

   String status = user.getStatus();

   if(status.equals("0")){

    flag = 0;

   }

   else if (status.equals("1")){

    flag = 1;

   }

   else if (status.equals("2")){

    flag = 2;

   }

  }

  return flag;}

 

 public static void main(String[] args) {

  LoginService service = new LoginService();

  System.out.println(service.login("xiaoming", "123"));

 }

}

Servlet:

package com.ibm.cn.servlet;
import java.io.IOException;

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 com.ibm.cn.service.LoginService;
/**

 * Servlet implementation class LoginServlet

 */

@WebServlet("/LoginServlet")

public class LoginServlet extends HttpServlet {

 private static final long serialVersionUID = 1L;
 /**

  * @see HttpServlet#HttpServlet()

  */

 public LoginServlet() {

  super();

  // TODO Auto-generated constructor stub

 }
 /**

  * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse

  *      response)

  */

 protected void doGet(HttpServletRequest request, HttpServletResponse response)

   throws ServletException, IOException {

  System.out.println("================step1==================");

 

  response.getWriter().append("Served at: ").append(request.getContextPath());

 }
 /**

  * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse

  *      response)

  */

 protected void doPost(HttpServletRequest request, HttpServletResponse response)

   throws ServletException, IOException {

  System.out.println("================step2==================");

  

  response.setContentType("text/html;charset=utf-8");

  System.out.println("================step3==================");

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

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

  System.out.println("================step4==================");

  LoginService service = new LoginService();

  int flag = service.login(username, password);

  if (flag == 0) {

   System.out.println("================step5==================");

   request.setAttribute("msg", "正在審核,請等待。。。");

   System.out.println("================stepA==================");

   request.getRequestDispatcher("index.jsp").forward(request, response);

   System.out.println("================stepB==================");

  } else if (flag == 1) {

   System.out.println("================step6==================");

   request.getRequestDispatcher("loginsuccess.jsp").forward(request, response);

  }

  else if (flag == 2) {

   System.out.println("================step7==================");

   request.setAttribute("msg", "審核未通過,重新注冊。。。");

   System.out.println("================step11==================");

   request.getRequestDispatcher("index.jsp").forward(request, response);

   System.out.println("================step12==================");

  }

  else if (flag == 3) {

   System.out.println("================step8==================");

   request.setAttribute("msg", "用戶名或密碼錯誤。。。");

   request.getRequestDispatcher("loginfail.jsp").forward(request, response);

  }
 }
}

VO層

package com.ibm.cn.vo;
public class User {

 private String username;

 private String password;

 private String status;

   public User(String username,String password){

    this.username = username;

    this.password = password;

   }

   public User(String username,String password,String status){

    this.username = username;

    this.password = password;

    this.status = status;

   }

public String getUsername() {

 return username;

}

public void setUsername(String username) {

 this.username = username;

}

public String getPassword() {

 return password;

}

public void setPassword(String password) {

 this.password = password;

}

public String getStatus() {

 return status;

}

public void setStatus(String status) {

 this.status = status;

}

@Override

public String toString() {

 return "User [username=" + username + ", password=" + password + ", status=" + status + "]";

}

  
}

index.jsp

<%@ page language="java" contentType="text/html; charset=utf-8"

 pageEncoding="utf-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>Insert title here</title>

</head>

<script type="text/javascript">

function  login(){

 var flag = 1;

 var username =document.getElementById("username").value;

 var password =document.getElementById("password").value;

 

 var usernamemsg =document.getElementById("usernamemsg");

 var passwordmsg =document.getElementById("passwordmsg");

 if(username==null ||username==""){

  usernamemsg.innerHTML="<font color ='red'> 用戶名不能爲空</font>";

 flag=0;

 }

 if(password ==null || password ==""){

  passwordmsg.innerHTML = "<font color='red'>密碼不能爲空</font>"

  flag=0;

 }

 if(flag ==1){

  form1.action ="LoginServlet";

  form1.submit();

 }

}
</script>

<body>

 <form id="form1" action="LoginServlet" method="post">

  <%

   String msg = (String) request.getAttribute("msg");

  if(msg!= null && !msg.equals("")){%>

  <font color='red'>提示信息:<%=msg %>></font><br>

   

  <% }%>

  用戶名:<input type = "text" id="username" name="username"><div id ="usernamemsg"></div><br>

  密碼:<input type ="password" id= "password" name= "password" ><div id="passwordmsg"></div><br>

  <input type ="button" value ="登錄" onclick="login()">

  

 </form>

</body>

</html>

成功頁面:
<%@ page language="java" contentType="text/html; charset=utf-8"

    pageEncoding="utf-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>Insert title here</title>

</head>

<body>

<form>

成功登陸!歡迎您:<%=request.getParameter("username") %> <br>

</form>

</body>

</html>

失敗頁面:
<%@ page language="java" contentType="text/html; charset=utf-8"

    pageEncoding="utf-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>Insert title here</title>

</head>

<body>

<form>

<b>"登陸失敗"</b>

</form>

</body>

</html>

文本:
xiaoming#123#0

ximing#123#1

xiaoing#123#1

xiaomg#123#2

如有疑問歡迎聯係QQ374088533

9b79
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: