springboot结合vue实现增删改查及分页查询的操作方法
发表于:2025-02-05 作者:千家信息网编辑
千家信息网最后更新 2025年02月05日,springboot结合vue实现增删改查及分页查询的操作方法,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1:首先。创
千家信息网最后更新 2025年02月05日springboot结合vue实现增删改查及分页查询的操作方法
springboot结合vue实现增删改查及分页查询的操作方法,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
1:首先。创建一个springboot项目,这里我使用以及构建好基本框架的脚手架,打开是这个样子:
Result类:已经封装好了三种返回类型的包装类:code,msg,data
2:创建数据库叫mytest(可以自己取名字)
CREATE TABLE `user` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '序号', `name` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '姓名·', `age` int(11) DEFAULT NULL COMMENT '年龄', `sex` varchar(1) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '性别', `adderss` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '地址', `phone` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '电话', `creat_time` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
3:编写实体类:entity->User类
**首先加@Table注解告诉我们要哪个表,然后加@Entity标注这个User是一个entity,@Data生成getset方法
**
package com.example.entity;import lombok.Data;import javax.persistence.Column;import javax.persistence.Entity;import javax.persistence.Table;@Table(name="user")@Entity@Datapublic class User { private Long id; private String name; private Integer age; private String sex; private String adderss; private String phone; @Column(name = "creat_time") private String creatTime;}
这里可以自己添加get和set方法,我这里是直接在pom里面添加了lombok注解
org.projectlombok lombok
这里user报错不要怕 在下面加上
@Id @GeneratedValue(strategy = GenerationType.IDENTITY) //表示ID是主见并且自动递增
4:编写UserDao层:写数据库接口
package com.example.dao;import com.example.entity.User;import org.springframework.data.jpa.repository.JpaRepository;import org.springframework.stereotype.Repository;@Repositorypublic interface UserDao extends JpaRepository{}
5:编写service层,编写增删改查方法(使用了springdataJPA)
package com.example.service;import com.example.dao.UserDao;import com.example.entity.User;import org.springframework.data.domain.Page;import org.springframework.data.domain.PageRequest;import org.springframework.data.domain.Pageable;import org.springframework.data.domain.Sort;import org.springframework.stereotype.Service;import javax.annotation.Resource;import java.util.Optional;@Servicepublic class UserService { //1:导入数据库接口 (JPA帮助我们编写了大量的接口,我们只需要调用就好) @Resource private UserDao userDao;// 这两个方法合并成了一个,因为都是调用的save,区别就是新增的时候不会传ID进来,更新的时候会,框架会帮我们区分// // 增加// public void add(User user){// userDao.save(user);// }//// //修改// public void updata(User user){// userDao.save(user);// //新增+修改 public void save(User user){ userDao.save(user); } //删除 public void del(Long id){ userDao.deleteById(id); } //查找 public User findById(Long id){ return userDao.findById(id).orElse(null); //没有数据则返回null } //分页查询 public PagefindPage(Integer pageNum, Integer pageSize,String name){ Sort sort = Sort.by(Sort.Direction.DESC,"creat_time"); Pageable request = PageRequest.of(pageNum-1,pageSize,sort); return userDao.findNameLike(name,request); }}
中途需要在UserDao层编写分页查询语句
package com.example.dao;import com.example.entity.User;import org.springframework.data.domain.Page;import org.springframework.data.domain.PageRequest;import org.springframework.data.domain.Pageable;import org.springframework.data.jpa.repository.JpaRepository;import org.springframework.data.jpa.repository.Query;import org.springframework.stereotype.Repository;@Repositorypublic interface UserDao extends JpaRepository{ @Query(value = "select * from user where name like %?1%",nativeQuery = true) Page findNameLike(String name, Pageable pageRequest);}
6:编写UserController作为接口访问层
package com.example.controller;import com.example.common.Result;import com.example.entity.User;import com.example.service.UserService;import org.springframework.data.domain.Page;import org.springframework.web.bind.annotation.*;import javax.annotation.Resource;/** * @author ${范涛之} * @Description * @create 2021-09-20 12:19 */@RestController //表明所有方法都是返回json数据@RequestMapping("/user")public class UserController { @Resource private UserService userService; // 新增 @PostMapping public Result add(@RequestBody User user){ userService.save(user); return Result.success(); } //更新 @PutMapping public Result update(@RequestBody User user){ userService.save(user); return Result.success(); } //删除用户 : /user/1 @DeleteMapping("/{id}") public Result delete(@PathVariable Long id){ userService.del(id); return Result.success(); } //根据id查询用户 @GetMapping("/{id}") public ResultfindById(@PathVariable Long id){ return Result.success( userService.findById(id)); } //分页查询 @GetMapping public Result > findById(@RequestParam(required = false,value ="1" )Integer pageNum, @RequestParam(required = false,value ="10" )Integer PageSize, @PathVariable(required = false) String name){ return Result.success( userService.findPage(pageNum,PageSize,name)); }}
7:编写前端界面,在static里面写index.html,测试运行
8:通过使用elementui引入样式
9:编写index.html文件
用户信息 用户信息表
新增 男 女
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。
方法
查询
数据
接口
用户
数据库
帮助
信息
时候
框架
注解
更新
清楚
两个
主见
内容
前端
取名字
地址
姓名
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
杭州IOS软件开发
网络安全与态势感知
浪潮服务器怎么开启网口
安徽联想服务器维修调试多少钱
手游lol选哪个服务器不卡
需要买数据库吗
adsl代理服务器搭建教程
永恒之塔的服务器
数据库数据精度有问题
南京苹果手机软件开发公司有哪些
原神手游有不同服务器
小学生网络安全行为浅析
南通小程序软件开发
军工股网络安全
四方继保软件开发
完美世界玩什么服务器人多
个性化网络安全产品
洗钱软件开发 违法
预约上门推拿的软件开发
描述面向对象软件开发思想
数据库如何去掉某个字符
软件开发公司资质管理
数据库技术基本信息
芜湖物业管理软件开发公司
服务器能送外卖吗
南洋理工大学软件开发
网络安全备课
数据库时间相差8个小时
商丘软件开发联系方式
青海量化积分管理软件开发