在课堂中实现的登录功能项目的基础上,完成注册与登出功能
register.jsp:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>注册页面</title>
</head>
<body>
<form action="register" method="post">
用户id:<input type="text" name="uid"> <br>
用户名:<input type="text" name="username"> <br>
密 码:<input type="password" name="password"> <br>
手机号:<input type="text" name="telephone"> <br>
生 日:<input type="text" name="birthday"> <br>
性别:<input type="text" name="sex"> <br>
<span style="color: red">
<%=request.getAttribute("error")==null ? "":request.getAttribute("error")%>
</span>
<input type="reset" value="重置">
<input type="submit" value="点击注册">
</form>
</body>
</html>
ZYX.jsp:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>注册成功页面</title>
</head>
<body>
<h1 style="color: black">注册成功!!!!</h1>
</body>
</html>
RegisterServlet.java:
package com.qiku.servlet;
import com.qiku.entity.User;
import com.qiku.service.RegisterService;
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 java.io.IOException;
@WebServlet(name = "registerServlet", urlPatterns = "/register")
public class RegisterServlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
req.setCharacterEncoding("utf-8");
String uid = req.getParameter("uid");
String username = req.getParameter("username");
String password = req.getParameter("password");
String telephone = req.getParameter("telephone");
String birthday = req.getParameter("birthday");
String sex = req.getParameter("sex");
RegisterService registerService = new RegisterService();
registerService.register(new User( uid,username, password, telephone, birthday, sex));
}
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req, resp);
}
}
RegisterService .java:
package com.qiku.service;
import com.qiku.dao.UserDao;
import com.qiku.entity.User;
public class RegisterService {
private UserDao userDao = new UserDao();
public void register(User user) {
if (user.getUid()!=null && user.getUsername() != null && user.getPassword() != null
&& user.getTelephone() != null && user.getBirthday() != null
&& user.getSex() != null) {
userDao.register(user);
}
}
}
UserDao.java:
package com.qiku.dao;
import com.qiku.entity.User;
import com.qiku.utlis.DruidUtils;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.BeanHandler;
import java.sql.SQLException;
import java.util.List;
public class UserDao {
QueryRunner qr = new QueryRunner(DruidUtils.dataSource);
/**
* 登录功能
* @param user
* @return
*/
public User login(User user) {
try {
String sql = "select * from user where username = ? and password = ?";
User sqlUser = qr.query(sql, new BeanHandler<>(User.class), user.getUsername(), user.getPassword());
return sqlUser;
} catch (SQLException e) {
e.printStackTrace();
}
return null;//表示查找失败
}
/**
* 注册功能
* @param user
*/
public void register(User user) {
try {
String sql = "insert into user values (?,?,?,?,?,?)";
int i = qr.update(sql, user.getUid(), user.getUsername(), user.getPassword(), user.getTelephone(), user.getBirthday(), user.getSex());
System.out.println(i);
} catch (SQLException e) {
e.printStackTrace();
}
}
}