我是从:先写实体类,再写mapper的接口,再写mapper.xml文件,在写测试类,测试dao层的sql语句是否正确,在写service的接口serviImpl,再写service的实现类service,在写controller,最后写jsp页面.
第一步:导包需要用到的SSM框架的包和配置文件.(自行解决,这个都会写吧)
第二步:mapper接口
//添加
void insertUser(User user);
//查询所有
List<User> selectUser();
//根据id查
User selectById(Integer id);
//删除
void deleteById(Integer id);
//修改
void updateUser(User user);
第三步:mapper.xml文件
<insert id="insertUser" parameterType="cn.tedu.user.entity.User">
insert into user(
id,name,age,address
)values(
#{id},#{name},#{age},#{address}
)
<select id="selectUser" resultType="cn.tedu.user.entity.User">
select * from user
</select>
<select id="selectById" resultType="cn.tedu.user.entity.User">
select
id,name,age,address
from
user
where
id=#{id}
</select>
<delete id="deleteById" parameterType="cn.tedu.user.entity.User">
delete from user
where
id=#{id}
</delete>
update
user
set
id=#{id},
name=#{name},
age=#{age},
address=#{address}
where
id=#{id}
</update>
private ApplicationContext ac;
@Before
public void init(){
ac = new ClassPathXmlApplicationContext(
"spring-dao.xml",
"spring-service.xml",
"spring-mvc.xml");
}
//插入数据 持久层
@Test
public void insert(){
UserDao userDao = ac.getBean("userDao",UserDao.class);
User user = new User();
user.setName("小明");
user.setAge(13);
user.setAddress("湖北省张家界");
userDao.insertUser(user);
System.out.println("持久层插入成功");
}
//查询所有 持久层
@Test
public void testSelectUser(){
UserDao userDao = ac.getBean("userDao",UserDao.class);
System.out.println(userDao.selectUser());
}
//根据id查询持久层
@Test
public void testSelectById(){
UserDao um = ac.getBean("userDao",UserDao.class);
System.out.println(um.selectById(1).getName());
}
//删除持久层
@Test
public void testDeleteById(){
UserDao cm = ac.getBean("userDao",
UserDao.class);
cm.deleteById(3);
System.out.println("持久层删除成功");
}
//测试修改 持久层
@Test
public void testUpdate(){
UserDao userDao = ac.getBean("userDao",
UserDao.class);
User user = new User();
user.setId(1);
user.setName("王晓华");
user.setAge(45);
user.setAddress("河南省");
userDao.updateUser(user);
System.out.println("持久层修改成功");
}
第五步:serviceImpl接口
//添加用户信息
void addUser(User user);
//查询所有用户信息
List<User> selectUser();
//根据id查询
User getUserById(Integer id);
//根据id删除
void deleteUserById(Integer id);
//修改用户信息
void updateUser(Integer id,String name,Integer age,String address);
第六步:service实现类(需要实现serviceImpl接口)
private UserDao userDao;
public void addUser(User user) {
userDao.insertUser(user);
}
//查询所有信息
public List<User> selectUser() {
return userDao.selectUser();
}
//根据id查询信息
public User getUserById(Integer id) {
return userDao.selectById(id);
}
//根据id删除
public void deleteUserById(Integer id) {
userDao.deleteById(id);
}
//修改
public void updateUser(Integer id, String name, Integer age, String address) {
User user = new User();
user.setId(id);
user.setName(name);
user.setAge(age);
user.setAddress(address);
userDao.updateUser(user);
}
第七步:controller层
@Resource
private UserServiceImpl userService;
//根据showAdd.do路径访问add.jsp(增加页面)
@RequestMapping("/showAdd.do")
public String showAdd() {
return "add";
}
//添加用户
@RequestMapping("/addUser.do")
public String addUser(String name,String address,Integer age){
User user = new User();
user.setName(name);
user.setAddress(address);
user.setAge(age);
userService.addUser(user);
return "redirect:showUser.do";
}
//查询所有信息
/*@RequestMapping("/showUser.do")
public String showUser(ModelMap map,ServletResponse response) {
//设置编码,
response.setCharacterEncoding("UTF-8");
List<User> userList = userService.selectUser();
map.addAttribute("userList",userList);
return "index";
}*/
//删除用户
@RequestMapping("/deleteUserById.do")
public String deleteById(Integer id,ModelMap map){
userService.deleteUserById(id);
return "redirect:showUser.do";
}
//修改
@RequestMapping("/updateUser.do")
public String updateUser(
Integer id,String name,
Integer age,String address){
userService.updateUser(id, name, age, address);
//控制台输出id name age address
System.out.println(id);
System.out.println(name);
System.out.println(age);
System.out.println(address);
return "redirect:showUser.do";
}
//根据id查找用户
@RequestMapping("/getUserById.do")
public String getUserById(Integer id,ModelMap map){
map.addAttribute("user", userService.getUserById(id));
return "updateUser";
}
页面在这就不写了,数据库在这也不写了,根据自己的业务需求写jsp页面和数据库字段名.
如果有不理解的可以发邮件到[email protected](备注CSDN博客)谢谢大家!