springboot增删改查加分页小demo

本文提供了一个SpringBoot项目的详细步骤,演示了如何实现包含分页功能的CRUD操作。通过添加必要的依赖、配置bean、mapper、controller及前端页面,实现了数据库交互和页面展示。目前完成了基础功能,后续将扩展至图片上传与显示,并优化数据校验和后端数据封装。
摘要由CSDN通过智能技术生成

本文写给自己看,但是有需要的小伙伴,可以创建springboot项目,从头创建项目,全部代码贴上了。这是加分页的增删改查,在上一个增删改查项目加了分页功能,下一个功能接会增加图片的上传,显示图片的功能
项目架构
在这里插入图片描述
构建springboot项目需要的依赖
构建项目的jar
分页插件依赖

        <!-- pagehelper分页插件依赖 -->
        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper-spring-boot-starter</artifactId>
            <version>1.2.5</version>
        </dependency>

bean

@Data
public class User {
   
    private Integer id;
    private String username;
    private Date birthday;
    private String sex;
    private String address;

mapper

@Mapper
public interface UserMapper {
   
    //查询所有User
    @Select("select * from user")
    public List<User> findAll();
    @Select("select * from user where id = #{id}")
    //查询一个User
    public User findUserById(Integer id);
    @Update("update user set username = '${username}',birthday = #{birthday},sex = #{sex},address = #{address} where id = #{id}")
    //修改User
    public int updateUser(User user);
    @Insert({
   "insert into user(username,birthday,sex,address) values (#{username},#{birthday},#{sex},#{address})"})
    //添加一个User
    public int addUser(User user);
    //删除一个User
    @Delete("delete from user where id = #{id}")
    public int deleteUser(Integer id);
}

controller

@RestController
public class UserController {
   
    @Autowired
    UserMapper userMapper;
    /**
     * 查询所有user
     * @return
     */
    @GetMapping("/user")
    public PageInfo<User> findAll(@RequestParam(defaultValue = "1",value = "pn")Integer pageNum){
   
        PageHelper.startPage(pageNum, 5);
        List<User> allUser = userMapper.findAll();
        PageInfo<User> pageInfo  = new PageInfo<>(allUser);
        return pageInfo ;
    }
    /**
     * 根据id查询一个user
     * @param id
     * @return
     */
    @GetMapping("/user/{id}")
    public User findUserById(@PathVariable("id") Integer id){
   
        return userMapper.findUserById(id);
    }
    /**
     * 修改user
     * @param id
     * @param username
     * @param birthday
     * @param sex
     * @param address
     * @return
     * @throws ParseException
     */
    @PutMapping("/user")
    public String update(@RequestParam("id") String id,
                         @RequestParam("username") String username,
                         @RequestParam("birthday") String birthday,
                         @RequestParam("sex") String sex,
                         @RequestParam("address") String address) throws ParseException {
   
        User user = new User();
        user.setId(Integer.parseInt(id));
        user.setUsername(username);
        //对日期进行格式转换
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
        Date date = format.parse(birthday);
        user.setBirthday(date);
        user.setSex(sex);
        user.setAddress(address);
        return userMapper.updateUser(user) == 1 ? "success" : "failed";
    }
    /**
     * 新增一个user
     * @param username
     * @param birthday
     * @param sex
     * @param address
     * @return
     */
    @PostMapping("/user")
    public String insertUser(@RequestParam("username") String username,
                             @RequestParam("birthday") String birthday,
                             @RequestParam("sex") String sex,
                             @RequestParam("address") String address) throws ParseException {
   
        User user = new User();
        user.setUsername(username);
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
        Date date = format.parse(birthday);
        user.setBirthday(date);
        user.setSex(sex);
        user.setAddress(address);
        return userMapper.addUser(user) == 1 ? "success":"failed";
    }
    /**
     * 删除一个user
     * @param id
     * @return
     */
    @DeleteMapping("/user/{id}")
    public String deleteUser(@PathVariable("id") Integer id){
   
        return userMapper.deleteUser(id) == 1 ? "success" : "failed";
    }
}

application.yml

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/springdb?characterEncoding=UTF-8&serverTimezone=UTC&useSSL=false
    username: root
    password: root
    driver-class-namecom: com.mysql.cj.jdbc.Driver

##pagehelper分页插件
pagehelper:
  helperDialect: mysql
  reasonable: true
  supportMethodsArguments: true
  params: count=countSql

list.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <link rel="stylesheet" href="bt/css/bootstrap.css">
    <link rel="stylesheet" href="bt/css/bootstrap-theme.css">
    <script type="text/javascript" src="js/jquery-2.1.1.min.js"></script>
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值