MVC模式登陸例子

一直想寫博客來的,今天開始給大家分享,有疑問的汪評論,大家彼此好好學習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



评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值