本次记录用户的具体功能
entity类
@Component
public class User {
private Long id;//用户id,主键、自增
private String username;//用户名
private String password;//密码
省略get set方法
dao层
@Repository
public interface UserDao {
public User findByUserName(String username);
public int add(User user);
public int edit(User user);
public int delete(String ids);
public List<User> findList(Map<String,Object> queryMap);
public int getTotal(Map<String,Object> queryMap);
}
mapper.xml 文件
<select id="findByUserName" parameterType="String" resultType="User">
select * from user where username = #{username}
</select>
<select id="findList" parameterType="Map" resultType="User">
select * from user where username like #{username} limit #{offset},#{pageSize}
</select>
<select id="getTotal" parameterType="Map" resultType="Integer">
select count(id) from user where username like #{username}
</select>
<update id="add" parameterType="User">
insert into user(id,username,password) values(null,#{username},#{password})
</update>
<update id="edit" parameterType="User">
update user set username = #{username},password = #{password} where id = #{id}
</update>
<update id="delete" parameterType="String">
delete from user where id in (${value})
</update>
service
@Service
public interface UserService {
public User findByUserName(String username);
public int add(User user);
public int edit(User user);
public int delete(String ids);
public List<User> findList(Map<String,Object> queryMap);
public int getTotal(Map<String,Object> queryMap);
}
controller
*/
@RequestMapping("/user")
@Controller
public class UserController {
@Autowired
public UserService userService;
/**
* 用户管理列表页
* @param model
* @return
*/
@RequestMapping(value="/list",method=RequestMethod.GET)
public ModelAndView list(ModelAndView model){
model.setViewName("user/user_list");
return model;
}
/**
* 获取用户列表
* @param username
* @param page
* @return
*/
@RequestMapping(value="/get_list",method=RequestMethod.POST)
@ResponseBody
public Map<String, Object> getList(
@RequestParam(value="username",required=false,defaultValue="") String username,
Page page
){
Map<String, Object> ret = new HashMap<String, Object>();
Map<String, Object> queryMap = new HashMap<String, Object>();
queryMap.put("username", "%"+username+"%");
queryMap.put("offset", page.getOffset());
queryMap.put("pageSize", page.getRows());
ret.put("rows", userService.findList(queryMap));
ret.put("total", userService.getTotal(queryMap));
return ret;
}
/**
* 编辑用户操作
* @param user
* @return
*/
@RequestMapping(value="/delete",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> delete(
@RequestParam(value="ids[]",required=true) Long[] ids
){
Map<String, String> ret = new HashMap<String, String>();
if(ids == null){
ret.put("type", "error");
ret.put("msg", "请选择要删除的数据!");
return ret;
}
String idsString = "";
for(Long id:ids){
idsString += id + ",";
}
idsString = idsString.substring(0,idsString.length()-1);
if(userService.delete(idsString) <= 0){
ret.put("type", "error");
ret.put("msg", "删除失败!");
return ret;
}
ret.put("type", "success");
ret.put("msg", "修改成功!");
return ret;
}
/**
* 编辑用户操作
* @param user
* @return
*/
@RequestMapping(value="/edit",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> edit(User user){
Map<String, String> ret = new HashMap<String, String>();
if(user == null){
ret.put("type", "error");
ret.put("msg", "数据绑定出错,请联系开发作者!");
return ret;
}
if(StringUtils.isEmpty(user.getUsername())){
ret.put("type", "error");
ret.put("msg", "用户名不能为空!");
return ret;
}
if(StringUtils.isEmpty(user.getPassword())){
ret.put("type", "error");
ret.put("msg", "密码不能为空!");
return ret;
}
User existUser = userService.findByUserName(user.getUsername());
if(existUser != null){
if(user.getId() != existUser.getId()){
ret.put("type", "error");
ret.put("msg", "该用户名已经存在!");
return ret;
}
}
if(userService.edit(user) <= 0){
ret.put("type", "error");
ret.put("msg", "修改失败!");
return ret;
}
ret.put("type", "success");
ret.put("msg", "修改成功!");
return ret;
}
/**
* 添加用户操作
* @param user
* @return
*/
@RequestMapping(value="/add",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> add(User user){
Map<String, String> ret = new HashMap<String, String>();
if(user == null){
ret.put("type", "error");
ret.put("msg", "数据绑定出错,请联系开发作者!");
return ret;
}
if(StringUtils.isEmpty(user.getUsername())){
ret.put("type", "error");
ret.put("msg", "用户名不能为空!");
return ret;
}
if(StringUtils.isEmpty(user.getPassword())){
ret.put("type", "error");
ret.put("msg", "密码不能为空!");
return ret;
}
User existUser = userService.findByUserName(user.getUsername());
if(existUser != null){
ret.put("type", "error");
ret.put("msg", "该用户名已经存在!");
return ret;
}
if(userService.add(user) <= 0){
ret.put("type", "error");
ret.put("msg", "添加失败!");
return ret;
}
ret.put("type", "success");
ret.put("msg", "添加成功!");
return ret;
}
}
界面效果图