项目使用技术:servlet+jsp+mybatis
用户登录:
根据用户名和密码查询用户信息。查到则登录成功,查不到则登录失败。
用户退出:
销毁session
1.成功携带用户信息跳转主页面,现实功能
2.失败携带失败提示跳转失败页面,提示账号或密码错误
省略mybaitis工具类 ; log4j.properties ; db.properties ;页面无用代码,
下列代码按执行顺序放置
节约篇幅省略及其常规操作
public class User implements Serializable {
private int id;
private String uname;
private String password;
private String sex;
private int age;
private String birthday;
}
package com.lin.servlet;
import com.lin.pojo.User;
import com.lin.service.LoginService;
import com.lin.service.impl.LoginServiceImpl;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;
/**
* 用户登录 操作
*/
public class UserLoginServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//设置请求响应编码格式
req.setCharacterEncoding("utf-8");
resp.setContentType("text/html;charset=utf-8");
//接收请求信息
String uname = req.getParameter("uname");
String password = req.getParameter("password");
//处理请求信息调用service层
LoginService service = new LoginServiceImpl();
User user = service.UserLogin(uname, password);
HttpSession session = req.getSession();
if (user !=null){
session.setAttribute("user",user);
resp.sendRedirect("/main.jsp");
}else {
session.setAttribute("error","登录失败");
resp.sendRedirect("/login.jsp");
}
}
}
interface
package com.lin.service;
import com.lin.pojo.User;
public interface LoginService {
/**
* 用户登录
* @param uname 用户名
* @param password 密码
* @return
*/
User UserLogin(String uname, String password);
}
impl
package com.lin.service.impl;
import com.lin.mapper.UserMapper;
import com.lin.pojo.User;
import com.lin.service.LoginService;
import com.lin.util.MyBatisUtil;
import org.apache.ibatis.session.SqlSession;
public class LoginServiceImpl implements LoginService {
@Override
public User UserLogin(String uname, String password) {
SqlSession session = MyBatisUtil.getSession();
UserMapper mapper = session.getMapper(UserMapper.class);
User user = mapper.userLogin(uname, password);
session.close();
if (user!=null){
return user;
}else {
return null;
}
}
}
interface
package com.lin.mapper;
import com.lin.pojo.User;
import org.apache.ibatis.annotations.Param;
public interface UserMapper {
/**
* 用户登录
* @param uname 用户名
* @param password 密码
* @return
*/
User userLogin(@Param("uname") String uname ,@Param("password") String password);
}
xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lin.mapper.UserMapper">
<select id="userLogin" resultType="User" parameterType="User">
select * from t_user where uname=#{uname} and pwd=#{password};
</select>
</mapper>
销毁session
servlet
public class UserOutServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//设置求情响应编码
req.setCharacterEncoding("utf-8");
resp.sendRedirect("text/html;charset=utf-8");
//处理请求信息 获取session
HttpSession session = req.getSession();
//销毁session
session.invalidate();
//响应处理结果(重定向)
resp.sendRedirect("/login.jsp");
}
}
网站声明:如果转载,请联系本站管理员。否则一切后果自行承担。
加入交流群
请使用微信扫一扫!