今天先用之前的方法搭建了SSM框架,并实现用户管理的增删改查功能,目录如下:
查询全部
执行findAll()方法会查询全部用户信息并跳转到如下界面:
添加用户
点击新建会跳转到添加用户的界面,
获得id,username,password后,点击保存会在数据库中插入该用户信息
删除
点击删除会执行delete方法,根据当前的id在库中删除
更新用户信息
在更新前要先进行一步查询操作(确定要修改的记录的id)并跳转到更新用户信息页面
文本框中默认值设为原值
点击保存进行修改操作
搜索
在搜索框中输入用户名,点击搜索会根据用户名来查询符合条件的记录
点击刷新执行findAll返回全部用户信息
UserDao
import com.xxx.bean.UserInfo;
import java.util.List;
//UserDao -- 数据库交互
public interface UserDao {
//查询全部
List<UserInfo> findAll();
//更新前的查询
UserInfo findUserById(int id);
//更新
void updUserById(UserInfo userInfo);
//删除
void delete(int id);
//添加
void addUser(UserInfo userInfo);
//搜索
List<UserInfo> findUserByName(String username);
}
UserInfoService
import com.xxx.bean.UserInfo;
import java.util.List;
public interface UserInfoService {
//查询全部
List<UserInfo> findAll();
//更新前的查询
UserInfo findUserById(int id);
//更新
void updUserById(UserInfo userInfo);
//删除
void delete(int id);
//添加
void addUser(UserInfo userInfo);
//搜索
List<UserInfo> findUserByName(String username);
}
UserInfoServiceImpl
package com.xxx.service.UserInfoServiceImpl;
import com.xxx.bean.UserInfo;
import com.xxx.dao.UserDao;
import com.xxx.service.UserInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class UserInfoServiceImpl implements UserInfoService {
@Autowired
private UserDao userDao;
@Override
public List<UserInfo> findAll() {
return userDao.findAll();
}
@Override
public UserInfo findUserById(int id) {
return userDao.findUserById(id);
}
@Override
public void updUserById(UserInfo userInfo) {
userDao.updUserById(userInfo);
}
@Override
public void delete(int id) {
userDao.delete(id);
}
@Override
public void addUser(UserInfo userInfo) {
userDao.addUser(userInfo);
}
@Override
public List<UserInfo> findUserByName(String username) {
return userDao.findUserByName(username);
}
}
UserInfoController
package com.xxx.controller;
import com.xxx.bean.UserInfo;
import com.xxx.service.UserInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import java.util.List;
@Controller
@RequestMapping("/user")
public class UserInfoController {
@Autowired
private UserInfoService userInfoService;
@RequestMapping("/findAll.do")
public ModelAndView findAll(){
List<UserInfo> userInfoList = userInfoService.findAll();
ModelAndView mv = new ModelAndView();
mv.addObject("userInfoList",userInfoList);
mv.setViewName("user-list");
return mv;
}
@RequestMapping("/findUserById.do")
//更新前的查询
public ModelAndView findUserById(int id){
UserInfo userInfo = userInfoService.findUserById(id);
ModelAndView mv = new ModelAndView();
mv.addObject("userInfo",userInfo);
mv.setViewName("user-update");
return mv;
}
//更新
@RequestMapping("/updUserById.do")
public String updUserById(UserInfo userInfo){
userInfoService.updUserById(userInfo);
return "redirect:findAll.do";
}
@RequestMapping("/delete.do")
public String delete(int id){
userInfoService.delete(id);
return "redirect:findAll.do";
}
@RequestMapping("/addUser.do")
public String addUser(UserInfo userInfo){
userInfoService.addUser(userInfo);
return "redirect:findAll.do";
}
@RequestMapping("/findUserByName.do")
//更新前的查询
public ModelAndView findUserByName(String username){
List<UserInfo> userInfoList = userInfoService.findUserByName(username);
ModelAndView mv = new ModelAndView();
mv.addObject("userInfoList",userInfoList);
mv.setViewName("user-list");
return mv;
}
}
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.xxx.dao.UserDao" >
<!--全部查询-->
<select id="findAll" resultType="com.xxx.bean.UserInfo">
select * from tb_user;
</select>
<!--更新前的查询-->
<select id="findUserById" parameterType="java.lang.Integer" resultType="com.xxx.bean.UserInfo">
select * from tb_user where id = #{id}
</select>
<!--更新-->
<update id="updUserById" parameterType="com.xxx.bean.UserInfo">
update tb_user set username=#{username},password=#{password} where id=#{id}
</update>
<!--删除-->
<delete id="delete" parameterType="java.lang.Integer">
delete from tb_user where id = #{id}
</delete>
<!--添加-->
<insert id="addUser" parameterType="com.xxx.bean.UserInfo">
insert into tb_user value (#{id},#{username},#{password})
</insert>
<!--搜索-->
<select id="findUserByName" parameterType="java.lang.String" resultType="com.xxx.bean.UserInfo">
select * from tb_user where username=#{username}
</select>
</mapper>