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
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
相关文章推荐
- java-例子:MVC模式,用jstl和el输出数据到jsp页面.
- 实现简单的MVC模式,通过一个小例子,不是很完美,但是可以说明一部分的问题
- 04springMVC结构,mvc模式,spring-mvc流程,spring-mvc的第一个例子,三种handlerMapping,几种控制器,springmvc基于注解的开发,文件上传,拦截器,s
- 熟悉struts2MVC模式之用属性驱动传参例子
- 熟悉struts2MVC模式之用模型驱动传参的例子
- Java 实现MVC模式的例子
- MVC模式-简单的java小例子
- Java 实现MVC模式的例子
- 《python》学习笔记(Day6),采用MVC模式的Web应用例子
- linux select socket 例子
- Js中执行变量中的命令语句,也就是所谓的宏替换(很实用的例子)
- iOS开发: iOS蓝牙4.0开发例子
- 【scikit-learn】交叉验证及其用于参数选择、模型选择、特征选择的例子
- Sphinx 文档例子
- 文件操作两个小例子(zt)
- 理解多态性的一个小例子(C#)
- 实现的简单python例子
- windows-sock-简单例子-转
- 在哪找biztalk的例子
- fckeditor的用法(转)里面有具体例子(http://blog.chinaunix.net/u/16215/showart_214196.html)