- 说明:本文记录SSM框架下实现的增删改查操作。
- 更多教程请点击查看:
- 【中软实训】Day01:Java Web开发环境安装与配置&收获与感想
- 【中软实训】Day02:JDBC数据库访问技术与MVC模型
- 【中软实训】Day03:IDEA + Maven环境下的SSM框架整合
package com.zhongruan.bean;
/**
* 实体类,该类的文件和数据库的数据的表格的列一一对应
*/
public class UserInfo {
private int id;
private String username;
private String password;
public void setId(int id) {
this.id = id;
}
public void setUsername(String username) {
this.username = username;
}
public void setPassword(String password) {
this.password = password;
}
public int getId() {
return id;
}
public String getUsername() {
return username;
}
public String getPassword() {
return password;
}
@Override
public String toString() {
return "UserInfo{" +
"id=" + id +
", username='" + username + '\'' +
", password='" + password + '\'' +
'}';
}
}
package com.zhongruan.dao;
import com.zhongruan.bean.UserInfo;
import java.util.List;
/**
* 这是service和UserMapper.xml打交道的接口(桥梁)
*/
public interface IUserDao {
/**
* 查询所有用户功能
* @return 用户信息列表
*/
List findAll();
/**
* 添加用户操作
* @param userInfo:用户信息集合?实例
* @return :添加成功与否
*/
boolean addUser(UserInfo userInfo);
/**
* 删除指定用户
* @param id:要删除的用户的ID
* @return :删除成功与否
*/
boolean deleteUserById(int id);
/**
* 更新用户信息
* @param userInfo:新的用户信息
* @return :更新成功与否
*/
boolean updateUser(UserInfo userInfo);
/**
* 获取指定ID的用户信息
* @param id:用户的ID
* @return :用户信息UserInfo的实例
*/
UserInfo queryById(int id);
}
INSERT INTO userinfo(username,password) VALUE (#{username},#{password})
DELETE FROM userinfo WHERE id=#{id}
UPDATE userinfo SET username=#{username},password=#{password} where id=#{id}
package com.zhongruan.service;
import com.zhongruan.bean.UserInfo;
import java.util.List;
/**
* 这个是Dao和Controller之间的接口
*/
public interface IUserService {
/**
* 下面的5个方法和IUserDao相同
*/
List findAll();
boolean addUser(UserInfo userInfo);
boolean deleteUserById(int id);
boolean updateUser(UserInfo userInfo);
UserInfo queryById(int id);
}
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放到Spring
@Service
public class UserServiceImpl implements IUserService {
//从Spring注入IUserDao
@Autowired
IUserDao userDao;
@Override
public List findAll() {
return userDao.findAll();
}
@Override
public boolean addUser(UserInfo userInfo) {
return userDao.addUser(userInfo);
}
@Override
public boolean deleteUserById(int id) {
return userDao.deleteUserById(id);
}
@Override
public boolean updateUser(UserInfo userInfo) {
return userDao.updateUser(userInfo);
}
@Override
public UserInfo queryById(int id) {
return userDao.queryById(id);
}
}
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.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;
import java.util.List;
/**
* 接口类:控制层,控制页面跳转以及数据的传递
*/
//将Controller放入Spring
@Controller
@RequestMapping("user")
public class UserController {
/**
* 从Spring注入
*/
@Autowired
private IUserService userService;
@RequestMapping("/findAll.do") //相应前端的findAll.do事件(index页面的超链接)
public ModelAndView findAll(){
List userInfos = userService.findAll(); //将所有用户的信息的查询结果保存到list中
ModelAndView mv = new ModelAndView(); //定义ModelAndView的对象
mv.addObject("ui",userInfos); //通过addAttribute,往前端传递数据:List
mv.setViewName("allUser"); //设置跳转页面:allUser.jsp
return mv; //执行跳转页面,跳转至alluser.jsp
}
@RequestMapping("toAddUser.do") //响应前端的toAddUser.do事件
public String toAddUser(){
return "addUser"; //事件所跳转的jsp页面:addUser.jsp
}
@RequestMapping("save.do") //响应前端save.do事件
public String save(UserInfo userInfo){ //传递的是userInfo
userService.addUser(userInfo); //执行保存操作
return "redirect:/user/findAll.do"; //操作结束,重定向操作:执行findAll.do
}
@RequestMapping("delete.do") //响应前端的delete.do事件
public String delete(@RequestParam int id){ //Get方法传递参数。获取传递的id
userService.deleteUserById(id); //执行删除用户操作
return "redirect:/user/findAll.do"; //重定向
}
@RequestMapping("toUpdate.do") //响应前端toUpdate.do事件
public String toUpdate(Model model,@RequestParam int id){ //同上
model.addAttribute("userInfo",userService.queryById(id)); //通过addAttribute方法传递UserInfo至前端
return "updateUser"; //跳转至updateUser.jsp页面
}
@RequestMapping("update.do") //响应按钮update.do事件
public String update(UserInfo userInfo){ //
userService.updateUser(userInfo); //执行操作
return "redirect:/user/findAll.do"; //重定向页面
}
}
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" %>
首页
Hello World!
点击进入管理页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" isELIgnored="false"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
user列表
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" isELIgnored="false"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
新增用户
基于SSM框架的管理系统:简单实现增、删、改、查。
新增用户
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" isELIgnored="false"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
修改论文
基于SSM框架的管理系统:简单实现增、删、改、查。
修改用户
4.0.0
com.zhongruan
ssmday0628
1.0-SNAPSHOT
war
ssmday0628 Maven Webapp
http://www.example.com
UTF-8
1.8
1.8
5.0.2.RELEASE
3.2.6
1.7.7
1.2.17
0.9.5.2
1.1.2
org.springframework
spring-core
${spring.version}
org.springframework
spring-web
${spring.version}
org.springframework
spring-oxm
${spring.version}
org.springframework
spring-tx
${spring.version}
org.springframework
spring-jdbc
${spring.version}
org.springframework
spring-webmvc
${spring.version}
org.springframework
spring-aop
${spring.version}
org.springframework
spring-context-support
${spring.version}
org.springframework
spring-test
${spring.version}
org.mybatis
mybatis
${mybatis.version}
org.mybatis
mybatis-spring
1.2.2
javax
javaee-api
7.0
mysql
mysql-connector-java
5.1.30
commons-dbcp
commons-dbcp
1.2.2
jstl
jstl
1.2
log4j
log4j
${log4j.version}
com.mchange
c3p0
${c3p0.version}
taglibs
standard
${taglibs.version}
org.slf4j
slf4j-api
${slf4j.version}
org.slf4j
slf4j-log4j12
${slf4j.version}
javax.servlet
javax.servlet-api
3.1.0
provided
javax.servlet.jsp
javax.servlet.jsp-api
2.3.1
provided
ssmday0628
maven-clean-plugin
3.1.0
maven-resources-plugin
3.0.2
maven-compiler-plugin
3.8.0
maven-surefire-plugin
2.22.1
maven-war-plugin
3.2.2
maven-install-plugin
2.5.2
maven-deploy-plugin
2.8.2
#以下内容根据自己来配置
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3306/你的数据库名?useSSL=true&characterEncoding=utf-8
jdbc.username=root
jdbc.password=123456
# Global logging configuration
log4j.rootLogger=DEBUG, stdout
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
至此,基于SSM框架的管理系统:简单实现增、删、改、查结束。
未完待续……