文章标题spring-boot + spring-data-jpa 实现简单的增删改查
来源:互联网 发布:java递归对象中的属性 编辑:程序博客网 时间:2024/05/17 07:39
JPA(Java Persistence API)定义了一系列对象持久化的标准,目前实现这一规范的产品有Hibernate、TopLink等。
- 示例环境
- jdk 1.8
- spring-boot 2.0.0
- spring-data-jpa
- idea2015
- OS: Windows10
- mysql (springboot) *
需求
请求类型 请求路径 功能 GET /girls 获取女生列表 POST /girls 创建一个女生 GET /girls/id 通过id查询一个女生 PUT /girls/id 通过id更新一个女生 DELETE /girls/id 通过id删除一个女生添加jar包 (在spring-boot helloworld的pom.xml文件中添加以下包)
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId></dependency>
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --><dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.40</version></dependency>
项目名称: girl
项目目录结构:
配置文件 applicatin.yml
spring: datasource: driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://localhost/springboot username: root password: **** jpa: hibernate: # create:表示启动的时候先drop,再create # create-drop: 也表示创建,只不过再系统关闭前执行一下drop # update: 这个操作启动的时候会去检查schema是否一致,如果不一致会做scheme更新 # validate: 启动时验证现有schema与你配置的hibernate是否一致,如果不一致就抛出异常,并不做更新 ddl-auto: update # 显示sql语句 show-sql: true
数据库 springboot
tb_girl 表对应的实体类
@Entity@Table( name = "tb_girl")public class Girl { @Id @GeneratedValue private Integer id; private String cupSize; private Integer age; public Girl() { } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getCupSize() { return cupSize; } public void setCupSize(String cupSize) { this.cupSize = cupSize; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; }}
tb_girl 表对应的dao接口 (关于主键的增删改查可不写)
public interface GirlRepository extends JpaRepository<Girl,Integer> { /** * 通过年龄查询 * @param age * @return */ List<Girl> findByAge(Integer age);}
controller
@RestControllerpublic class GirlContrller { @Autowired private GirlRepository girlRepository; @Autowired private GirlService girlService; /** * 查询所有女生 * @return */ @GetMapping(value = "/girls") @ResponseBody public List<Girl> girlList(){ return girlRepository.findAll(); } /** * 添加一个女生 * @param cupSize * @param age * @return */ @PostMapping(value="/girls") public Girl girlAdd(@RequestParam("cupSize") String cupSize, @RequestParam("age") Integer age){ Girl girl = new Girl(); girl.setCupSize(cupSize); girl.setAge(age); return girlRepository.save(girl); } /** * 查询一个女生 * @param id * @return */ @GetMapping(value="/girls/{id}") public Girl girlFindOne(@PathVariable("id") Integer id){ return girlRepository.findOne(id); } /** * 更新一个女生 * @param id * @param cupSize * @param age * @return */ @PutMapping(value="/girls/{id}") public Girl girlUpdate(@PathVariable("id") Integer id, @RequestParam("cupSize") String cupSize, @RequestParam("age") Integer age){ Girl girl = girlRepository.findOne(id); girl.setCupSize(cupSize); girl.setAge(age); return girlRepository.save(girl); } /** * 删除一个女生 * @param id */ @DeleteMapping(value="/girls/{id}") public void girlDelete(@PathVariable("id") Integer id){ girlRepository.delete(id); } /** * 通过年龄查找 * @param age * @return */ @GetMapping(value="/girls/age/{age}") public List<Girl> girlListByAge(@PathVariable("age") Integer age){ return girlRepository.findByAge(age); }}
启动项目
测试
0 0
- 文章标题spring-boot + spring-data-jpa 实现简单的增删改查
- 用spring boot和spring data jpa做简单的增删查改
- spring-data-jpa实现增删改查以及分页操作
- Spring-data-JPA详细介绍,增删改查实现
- Spring Data JPA 增删改查
- Spring Data MongoDB简单的增删改查
- Spring-Data-Jpa配合MySQL实现简单的增、删、查、改
- spring-boot集成elasticsearch并实现简单的增删改查
- 菜鸟上路 Spring Boot+Spring data jpa+swagger 做的增 删 改 查
- Spring + Hibernate实现简单增删改查
- Thymeleaf+spring jpa+springmvc实现的增删改查以及分页查询
- 转载:Spring Boot (十五):springboot+jpa+thymeleaf增删改查示例
- STS上使用spring data jpa对数据库单表进行增删改查
- STS上使用spring data jpa对数据库单表进行增删改查(2)
- spring-boot-data-jpa
- Springmvc+Spring+Mybatis+Maven简单的增删改查
- Spring MVC + oracle 实现增删改查
- Spring MVC 实现增删改查
- Alize
- Android api level对照表
- csdn博客栏bug集合
- 负载均衡 集群
- 使用Alize等工具构建说话人识别平台
- 文章标题spring-boot + spring-data-jpa 实现简单的增删改查
- Timer 的 schedule()方法
- STM32 UART常用的3种中断接收
- php简单的表格验证测试
- cocos2d-js之入门篇
- 基于HTK语音工具包进行孤立词识别的使用教程
- [分享]【2015原创】阿里云新手入门视频教程
- 鼠标点击后,所有div掉下来
- Android Scroller完全解析,关于Scroller你所需知道的一切