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描述 ...
随机推荐
- Android调试桥 adb安装详解
Android调试桥(adb) 一.简介 Android 调试桥 (adb) 是一种功能多样的命令行工具,可让您与设备进行通信.adb 命令便于执行各种设备操作(例如安装和调试应用),并提供对 Uni ...
- Vue框架(二)——Vue指令(v-once指令、v-cloak指令、条件指令、v-pre指令、循环指令)、todolist案例、Vue实例(计算、监听)、组件、组件数据交互
Vue指令 1.v-once指令 单独使用,限制的标签内容一旦赋值,便不可被动更改(如果是输入框,可以主动修改) <!DOCTYPE html> <html lang=" ...
- 不会前后端,用vps搭建个人博客(一)
一.vps供应商选择 常见的国内有腾讯云(良心云).阿里云(套路云)等,国外有bandwagon和vultr,本人选的vultr山姆叔叔东部便宜小鸡.目前vlutr还有新用户注册后充值10刀送50刀的 ...
- Java 中的 equals,==与 hashCode 的区别与联系
一. 关系操作符 ==:若操作数的类型是基本数据类型,则该关系操作符判断的是左右两边操作数的值是否相等若操作数的类型是引用数据类型,则该关系操作符判断的是左右两边操作数的内存地址是否相同.也就是说,若 ...
- 使用matplotlib绘制3D函数图像
学习并尝试了利用matplotlib进行3D函数图像的绘制 import matplotlib.pyplot as plt # 绘图用的模块 from mpl_toolkits.mplot3d imp ...
- windows平台上编译mongdb-cxx-driver
编译方法见以下链接,写的非常详细 http://www.pianshen.com/article/9722211716/ 我的编译环境和编译工具如下: 环境:win7或者win10,都试过,没有任何区 ...
- C# List<string>之间的转换
List<string> 转换为 string List<string> list = new List<string>(); list.Add("a&q ...
- JQuey中ready()的4种写法
在jQuery中,对于ready()方法,共有4种写法: (1)写法一: $(document).ready(functin(){ //代码部分 }) 分析:这种代码形式是最常见的,其中$(docum ...
- GitHub Java项目推荐|不需要 ROOT权限的类似按键精灵的自动操作
不需要 ROOT 权限的类似按键精灵的自动操作软件,可以实现自动点击.滑动.输入文字.打开应用等.Auto.js 的大部分用户用它来点赞.签到.刷游戏 项目分析 仓库名称:Auto.js 标星(sta ...
- 使用虹软ArcFac,java 离线SDK 进行人脸识别
公司项目需要人脸识别登录,需要支持离线识别,所以无法使用在线的人脸识别的API,于是使用到了离线SDK来对比识别人脸相识度. 获取人脸抓拍的图片需要对接设备,这里不做记录,假设我们已经获取到了人脸图片 ...