项目文件结构如下:
数据库结构:
UserInfo.c
package com.zhongruan.bean;
public class UserInfo {
private int id;
private String username;
private String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
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;
}
@Override
public String toString() {
return "UserInfo{" +
"id=" + id +
", username='" + username + '\'' +
", password='" + password + '\'' +
'}';
}
}
UserController.c
package com.zhongruan.controller;
import com.zhongruan.bean.UserInfo;
import com.zhongruan.service.IUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import java.util.List;
@Controller
@RequestMapping("user")
public class UserController {
@Autowired
private IUserService userService;
@RequestMapping("/findAll.do")
public ModelAndView findAll(){
List<UserInfo> userinfos = userService.findAll();
ModelAndView mv = new ModelAndView();
mv.addObject("ui",userinfos);
mv.setViewName("allUser");
return mv;
}
@RequestMapping("toAddUser")
public String toAddUser() {
return "addUser";
}
@RequestMapping("/addUser")
public String addUser(UserInfo userInfo) {
userService.addUser(userInfo);
return "redirect:/user/findAll.do";
}
@RequestMapping("/deleteUser")
public String deleteUser(int id) {
userService.deleteUser(id);
return "redirect:/user/findAll.do";
}
@RequestMapping("toUpdateUser")
public String toUpdateUser(Model model,int id) {
model.addAttribute("userInfo", userService.getUserById(id));
return "updateUser";
}
@RequestMapping("/updateUser")
public String updateUser(Model model,UserInfo userInfo){
userService.updateUser(userInfo);
userInfo = userService.getUserById(userInfo.getId());
model.addAttribute("userInfo", userInfo);
return "redirect:/user/findAll.do";
}
}
IUserDao.i
package com.zhongruan.dao;
import com.zhongruan.bean.UserInfo;
import java.util.List;
public interface IUserDao {
public List<UserInfo> findAll();
public int addUser(UserInfo userInfo);
public int deleteUser(int id);
public int updateUser(UserInfo userInfo);
public UserInfo getUserById(int id);
}
IUserService.i
package com.zhongruan.service;
import com.zhongruan.bean.UserInfo;
import java.util.List;
public interface IUserService {
public List<UserInfo> findAll();
public int addUser(UserInfo userInfo);
public int deleteUser(int id);
public int updateUser(UserInfo userInfo);
public UserInfo getUserById(int id);
}
UserServiceImpl.c
package com.zhongruan.service.impl;
import com.zhongruan.bean.UserInfo;
import com.zhongruan.dao.IUserDao;
import com.zhongruan.service.IUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class UserServiceImpl implements IUserService {
@Autowired
IUserDao userDao;
@Override
public List<UserInfo> findAll() {
return userDao.findAll();
}
@Override
public int addUser(UserInfo userInfo) {
return userDao.addUser(userInfo);
}
@Override
public int deleteUser(int id) {
return userDao.deleteUser(id);
}
@Override
public int updateUser(UserInfo userInfo) {
return userDao.updateUser(userInfo);
}
@Override
public UserInfo getUserById(int id) {
return userDao.getUserById(id);
}
}
UserMapper.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.zhongruan.dao.IUser