Spring Boot快速入门---(三)spring boot的快速连接数据库之spring data jpa以及事务管理
发布日期:2021-06-29 15:42:24
浏览次数:3
分类:技术文章
本文共 2748 字,大约阅读时间需要 9 分钟。
五、数据库操作
1.引入依赖
2.在配置文件中添加信息
3.Girl类的书写
4.GirlRepository继承JpaRepository
5.GirlController的实现,可通过Postman来模拟请求
package com.lcz;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.*;import java.util.List;import java.util.Optional;/** * @Author:Coding Chaozhang */@RestControllerpublic class GirlController { @Autowired private GirlRepository repository; @Autowired private GirlService girlService; /** * 查询所有女生列表 * @return */ @GetMapping(value = "/girls") public ListgirlList(){ return repository.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.setAge(age); girl.setCupSize(cupSize); return repository.save(girl); } /** * 查询一个女生 * @param id * @return */ @GetMapping(value = "/girls/{id}") public Optional girlFindOne(@PathVariable("id")Integer id){ return repository.findById(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=new Girl(); girl.setId(id); girl.setCupSize(cupSize); girl.setAge(age); return repository.save(girl); } /** * 删除女生 * @param id */ @DeleteMapping(value = "/girls/{id}") public void girlDelete(@PathVariable("id")Integer id){ repository.deleteById(id); } @GetMapping(value = "/girls/age/{age}") public List girlListByAge(@PathVariable("age")Integer age) { return repository.findByAge(age); } @PostMapping(value = "/girls/two") public void girlTwo(){ girlService.insertTwo(); }}
六、事务管理
@Transactional
package com.lcz;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Service;import org.springframework.transaction.annotation.Transactional;/** * @Author:Coding Chaozhang */@Servicepublic class GirlService { @Autowired private GirlRepository girlRepository; @Transactional public void insertTwo(){ Girl girlA=new Girl(); girlA.setCupSize("A"); girlA.setAge(18); Girl girlB=new Girl(); girlB.setCupSize("A"); girlB.setAge(18); girlRepository.save(girlA); girlRepository.save(girlB); }}
转载地址:https://codingchaozhang.blog.csdn.net/article/details/81006449 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
路过按个爪印,很不错,赞一个!
[***.219.124.196]2024年04月15日 05时18分52秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
前任3:由圣经故事通天塔想到公司部门间沟通协作
2019-04-29
持续集成(持续构建)服务器luntbuild的一些配置细节
2019-04-29
数据库Scheme的版本控制——DB Migrations
2019-04-29
弹性事务框架ETF4J——面向Java微服务的交易最终一致性解决方案
2019-04-29
实时音视频聊天中超低延迟架构的思考与技术实践
2019-04-29
首次公开!华为技术团队共同携手编写的《HarmonyOS系统学习笔记》V2.0版本
2019-04-29
Android Binder 原理
2019-04-29
BootStrap
2019-04-29
布局容器和栅格网格系统
2019-04-29
LayUI
2019-04-29
LayUI--页面元素
2019-04-29
你知道权限管理的角色授权与认证吗?
2019-04-29
如何用Web前端技术就能开发出桌面应用程序?
2019-04-29
SpringMVC全局异常处理的方式有哪些呢?
2019-04-29
java是最值得学习的编程语言吗?
2019-04-29
在上海乐字节学习前端渐进式框架【Vue】
2019-04-29
两大热门框架 Spring 与 Mybatis 如何整合呢?
2019-04-29
Mybatis框架如何使用分页插件呢?
2019-04-29