springboot使用jpa案例
1 创建entity实体类并生成数据库表
@Entity
@Table(name="student")
public class Student {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer stuid;
private String stuname;
public Integer getStuid() {
return stuid;
}
public void setStuid(Integer stuid) {
this.stuid = stuid;
}
public String getStuname() {
return stuname;
}
public void setStuname(String stuname) {
this.stuname = stuname;
}
}
2 创建Dao接口
@Repository
public interface StudentDao extends JpaRepository<Student,Integer> {
}
3 创建service层接口
public interface StudentService {
//查询所有学生信息
public Iterable<Student> getStudent();
//添加学生信息
public Student addStudent(Student student);
//修改学生信息
public Student updaStudent(Student student);
//删除学生信息
public void delStuddent(Integer stuid);
}
4 创建service层接口实现类
@Service("studentService")
public class StudentServiceImpl implements StudentService{
@Resource
private StudentDao studentDao;
//查询所有学生信息
@Override
public Iterable<Student> getStudent() {
return studentDao.findAll();
}
//添加学生信息
@Override
public Student addStudent(Student student) {
return studentDao.save(student);
}
//修改学生信息
@Override
public Student updaStudent(Student student) {
return studentDao.save(student);
}
//删除学生信息
@Override
public void delStuddent(Integer stuid) {
studentDao.delete(stuid);
}
}
5 编写application.yml文件
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql:///springbootjpa
username: root
password: 123
jpa:
hibernate:
ddl-auto: update
6 编写Controller层
@RestController
@RequestMapping("/onejpa")
public class JpaController {
@Resource
private StudentService studentService;
//查询数据
@RequestMapping("/getStudent")
public Iterable<Student> getStudent(){
return studentService.getStudent();
}
//添加数据
@RequestMapping("/addStudent")
public Student addStudent(){
Student student=new Student();
student.setStuname("张三");
return studentService.addStudent(student);
}
//修改数据
@RequestMapping("/updaStudent")
public Student updaStudent(){
Student student=new Student();
student.setStuid(1);
student.setStuname("李四");
return studentService.updaStudent(student);
}
//删除数据
@RequestMapping("/delStudent")
public void delStudent(){
studentService.delStuddent(1);
}
}
7 启动程序
@SpringBootApplication
public class StartSpringBoot {
public static void main(String[] args) {
SpringApplication.run(StartSpringBoot.class,args);
}
}
@Entity@Table(name="student")public class Student { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Integer stuid; private String stuname;
public Integer getStuid() { return stuid;}
public void setStuid(Integer stuid) { this.stuid = stuid;}
public String getStuname() { return stuname;}
public void setStuname(String stuname) { this.stuname = stuname;}}
springboot使用jpa案例的更多相关文章
- Springboot+Atomikos+Jpa+Mysql实现JTA分布式事务
1 前言 之前整理了一个spring+jotm实现的分布式事务实现,但是听说spring3.X后不再支持jotm了,jotm也有好几年没更新了,所以今天整理springboot+Atomikos+jp ...
- 【极简版】SpringBoot+SpringData JPA 管理系统
前言 只有光头才能变强. 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 在上一篇中已经讲解了如何从零搭建一个SpringBo ...
- 带你搭一个SpringBoot+SpringData JPA的环境
前言 只有光头才能变强. 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 不知道大家对SpringBoot和Spring Da ...
- 二、springboot使用jpa
花了几天时间,好好看了看springboot的jpa部分,总结了常用的形式. 1.通过STS工具添加jpa的依赖项 要连mysql,测试的时候需要web,顺便添加了lombok不写set和get方法了 ...
- Springboot+MyBatis+JPA集成
1.前言 Springboot最近可谓是非常的火,本人也在项目中尝到了甜头.之前一直使用Springboot+JPA,用了一段时间发现JPA不是太灵活,也有可能是我不精通JPA,总之为了多学学Sp ...
- 第11章—使用对象关系映射持久化数据—SpringBoot+SpringData+Jpa进行查询修改数据库
SpringBoot+SpringData+Jpa进行查询修改数据库 JPA由EJB 3.0软件专家组开发,作为JSR-220实现的一部分.但它又不限于EJB 3.0,你可以在Web应用.甚至桌面应用 ...
- 集成Springboot+MyBatis+JPA
1.前言 Springboot最近可谓是非常的火,本人也在项目中尝到了甜头.之前一直使用Springboot+JPA,用了一段时间发现JPA不是太灵活,也有可能是我不精通JPA,总之为了多学学Spri ...
- SpringBoot Data JPA 关联表查询的方法
SpringBoot Data JPA实现 一对多.多对一关联表查询 开发环境 IDEA 2017.1 Java1.8 SpringBoot 2.0 MySQL 5.X 功能需求 通过关联关系查询商店 ...
- 用SpringBoot+MySql+JPA实现对数据库的增删改查和分页
使用SpringBoot+Mysql+JPA实现对数据库的增删改查和分页 JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述 ...
随机推荐
- 文件包含lfi
CG-CTF web(文件包含漏洞) 参考链接:https://blog.csdn.net/qq_34072526/article/details/89431431 php://filter 的使用: ...
- 【C语言】学不会的指针
指针 前言: 指针是C语言程序的核心,刚开始学指针,嗯....这样呀,貌似不难呀:之后开始用指针,&p,p,*p,**p,这些指针在用的时候,额.....什么东东?每次都要想半天,特别是遇到双 ...
- Linux中使用MegaCli工具查看、管理Raid卡信息
MegaCli是一款管理维护硬件RAID软件,可以通过它来了解当前raid卡的所有信息,包括 raid卡的型号,raid的阵列类型,raid 上各磁盘状态,等等.通常,我们对硬盘当前的状态不太好确定, ...
- java之spring之helloword
这篇文章主要讲 spring的基础的使用案例 项目整体目录结构: 1.新建一个java项目:spring_helloworld 2.在项目下创建一个lib文件夹,并把一些必须的jar包复制过去 新建l ...
- java之spring之初始spring
1.Spring 在多个框架中起到润滑剂的作用,桥梁的作用,纽带的作用. 2.Spring是一个容器,也是一个对象工厂.帮助程序员创建对象,管理对象. 3.Spring的体系结构: 4.学习sprin ...
- 英语eschaunge交易所
eschaunge Eschaunge是一个外文单词,名词译为交易所,交易,交换,兑换(率),动词译为兑换, 交换,互换,交换,调换.是Exchange的替代形式 中文名:交易所,交易,交换 外文 ...
- windows mysql 5.5.62 安装
下载链接: https://dev.mysql.com/downloads/installer/ mysql下载这边有句话,虽然是32位的安装包,但是可以装在32位和64位上. 建议迅雷下载. 然后打 ...
- 部署GitLab时, 问题
1. 开启防火墙可能会对 nginx 造成影响. 2. 安装 gitlab 会自带一个 nginx, 启动后会对 现有的nginx 造成影响, 解决方案 参考 连接 1
- CENTOS6.5源码安装LNMP
CENTOS6.5源码安装LNMP 一.安装前准备 ########################################################################## ...
- Linux命令——getfacl、setfacl
简介 ACL是Access Control List的缩写,传统的Linux权限只能针对一个用户.一个群组及非此群组的其他人设置权限而已,无法针对单一用户或个人来设计权限.ACL可以对权限进行更细致的 ...