程序小白,希望和大家多交流,共同学习
package userms.controller;
import userms.model.Service;
import userms.model.User;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class LoginRegisterServlet extends HttpServlet
{
private Service service;
public LoginRegisterServlet()
{
service = new Service();
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
request.setCharacterEncoding("gb2312");//接收从jsp提交的信息,因为是汉字,需要城重新定义编码格式
//1.接收用户名和密码
String username = (String)request.getParameter("username");
String password = (String)request.getParameter("password");
String action = (String)request.getParameter("action");//submit提交的内容,表示注册或登录
System.out.println(username + " " + password + " " + action);
//2.调用服务器
User user = new User(username, password);
boolean succ = false;
if (action.equals("登录"))
{
succ = service.login(user);
}
else if (action.equals("注册"))
{
succ = service.register(user);
}
//3.重定向转向表示层
String msg = "";
if (succ)
{
msg = "恭喜" + username + action + "成功!";
}
else
{
msg = "抱歉" + username + action + "失败!";
}
System.out.println(action);
HttpSession session = request.getSession(true);
session.setAttribute("msg", msg);//在一个会话中存储信息,内容是字符串msg,名字是msg
response.sendRedirect("showmsg.jsp");
}
}
package userms.model;
public class Service
{
private User[] userdb;
private int users;
public Service()
{
userdb = new User[10];
userdb[0] = new User("bbc", "526");
userdb[1] = new User("abc", "abc");
users = 2;
}
public boolean login(User user)
{
for (int i = 0; i < users; i++)
{
if (userdb[i].getUsername().equals(user.getUsername()) &&
userdb[i].getPassword().equals(user.getPassword()))
{
return true;
}
}
return false;
}
public boolean register(User user)
{
if (login(user))
{
return false;
}
userdb[users] = user;
users++;
return true;
}
}
package userms.model;
public class User
{
private String username;
private String password;
public User()
{
}
public User(String username, String password)
{
this.username = username;
this.password = password;
}
public String getUsername()
{
return username;
}
public String getPassword()
{
return password;
}
}
<%@ page language="java" contentType="text/html; charset=GB2312" %>
<html>
<head>
<title>MVC模式的注册登录系统</title>
<style type="text/css">
form,h1{
text-align:center;
color:#3366ff;
}
</style>
</head>
<body>
<h1>MVC模式的注册登录系统</h1>
<hr />
<br />
<form action="userms.action" method="post">
用户名:<input type="text" name="username" /><br />
密 码:<input type="text" name="password" /><br/>
<input type="submit" value="注册" name="action" /><!--两个按钮,同一个名字,不同值-->
<input type="submit" value="登录" name="action" />
</form>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=GB2312" %>
<html>
<head>
<title>MVC模式的注册登录系统</title>
<style type="text/css">
body{
text-align:center;
color:#0066ff;
}
</style>
</head>
<body>
<h1>MVC模式的注册登录系统</h1>
<hr />
<br />
<%= (String)session.getAttribute("msg")%>
<a href="index.jsp">返回继续</a>
</body>
</html>
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0" metadata-complete="true">
<servlet>
<servlet-name>userms</servlet-name>
<servlet-class>userms.controller.LoginRegisterServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>userms</servlet-name>
<url-pattern>/userms.action</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>