第一次整合
pojo
package com.lxj.pojo;
public class User {
private String username;
private String password;
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;
}
}
UserMapper
package com.lxj.mapper;
import com.lxj.pojo.User;
import org.apache.ibatis.annotations.Param;
public interface UserMapper {
User select(User user);
int delete(@Param("username") String username);
}
UserController
package com.lxj.controller;
import com.lxj.pojo.User;
import com.lxj.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpSession;
import java.util.HashMap;
import java.util.Map;
@Controller
@RequestMapping("/user")
public class UserController {
@Autowired
private UserService userService;
@RequestMapping("/login")
public String login(User user, HttpSession session){
System.out.println("进入控制器");
//数据库检查
user = userService.get(user);
System.out.println("login..");
if(user != null){
session.setAttribute("SESSION_USER",user);
//将用户信息存储到会话中
return "user";
}else{
return "redirect:/login.jsp";
}
}
@RequestMapping("/delete/{username}")
@ResponseBody
public Map<String, Integer> delete(@PathVariable("username")String username){
System.out.println("delete..");
Map<String ,Integer> map = new HashMap<>();
boolean deleteSuc = userService.delete(username);
Integer code = deleteSuc ? 2000:2003;
map.put("code",code);
return map;
}
}
service接口
package com.lxj.service;
import com.lxj.pojo.User;
public interface UserService {
/**
* 根据user信息去检查数据库是否存在该用户
* @param user
* @return
*/
User get(User user);
/**
*
* @param username
* @return
*/
boolean delete(String username);
}
service实现类
package com.lxj.service.impl;
import com.lxj.mapper.UserMapper;
import com.lxj.pojo.User;
import com.lxj.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service("userService")
public class UserServiceImpl implements UserService {
//注入mapper
@Autowired
private UserMapper userMapper;
@Override
public User get(User user) {
//提前检查是否为空
return userMapper.select(user);
}
@Override
public boolean delete(String username) {
int row = userMapper.delete(username);
return row == 1 ? true:false;
}
}
UserMapper映射文件
<?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.lxj.mapper.UserMapper">
<select id="select" resultType="com.lxj.pojo.User">
select * from t_user
<where>
<if test="username != null">
and username = #{username}
</if>
<if test="password != null">
and password = #{password}
</if>
</where>
</select>
<delete id="delete">
delete from t_user
<where>
<if test="username != null">
and username = #{username}
</if>
</where>
</delete>
</mapper>