Spring Boot 2.X 如何快速整合jpa?

本文目录

一、JPA介绍二、Spring Data JPA类结构图1、类的结构关系图三、代码实现1、添加对应的Starter2、添加连接数据库的配置3、主要代码

一、JPA介绍

JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。
SpringData是Spring的一个子项目。用于简化数据库访问,支持NoSQL和关系数据存储,其主要目标是使数据库的访问变得方便快捷。
Spring Data JPA致力于减少数据访问层(DAO)的开发量,开发者唯一要做的就只是声明持久层的接口,其他都交给Spring Data JPA 来帮你完成!

二、Spring Data JPA类结构图

1、类的结构关系图

三、代码实现

1、添加对应的Starter

pom.xml中添加下面依赖

    <dependency>        <groupId>org.springframework.boot</groupId>        <artifactId>spring-boot-starter-data-jpa</artifactId>    </dependency>    <dependency>        <groupId>org.springframework.boot</groupId>        <artifactId>spring-boot-starter-web</artifactId>    </dependency>

    <dependency>        <groupId>mysql</groupId>        <artifactId>mysql-connector-java</artifactId>        <scope>runtime</scope>    </dependency>

2、添加连接数据库的配置

#修改tomcat默认端口号server.port=8090

#配置数据源信息spring.datasource.driver-class-name=com.mysql.jdbc.Driverspring.datasource.url=jdbc:mysql://192.168.0.1:3306/testspring.datasource.username=rootspring.datasource.password=123456#配置jpaspring.jpa.hibernate.ddl-auto=updatespring.jpa.show-sql=truespring.jackson.serialization.indent_output=true

3、主要代码

UserRepository.java

/** * 注意: * 1.这里这里是interface,不是class * 2.CrudRepository里面的泛型,第一个是实体类,第二个是主键的类型 */public interface UserRepository extends CrudRepository<User, Integer> {    @Query("from User where id =:id ")    public User getUser(@Param("id") Integer id);}

User.java

@Entity@Table(name = "user")public class User {

    @Id    @GeneratedValue(strategy = GenerationType.AUTO)    private Integer id;    private String name;    private String password;

    public Integer getId() {        return id;    }

    public void setId(Integer id) {        this.id = id;    }

    public String getName() {        return name;    }

    public void setName(String name) {        this.name = name;    }

    public String getPassword() {        return password;    }

    public void setPassword(String password) {        this.password = password;    }

}

UserController.java

@RestControllerpublic class UserController {    @Autowired    UserService service;

    /**     * 根据id 查询     */    @RequestMapping("/getUser/{id}")    public User getUser(@PathVariable("id") Integer id) {        return service.getUser(id);    }

    /**     * 根据id 删除     */    @RequestMapping("/deleteUser/{id}")    public String deleteUser(@PathVariable("id") Integer id) {        service.deleteUser(id);        return "删除成功!";    }

}

user表数据截图如下:

项目启动成功后访问http://localhost:8090/getUser/2和http://localhost:8090/deleteUser/2后截图如下:

到此发送Spring Boot整合JPA全部实现,有问题欢迎留言沟通哦!
完整源码地址: https://github.com/suisui2019/springboot-study

推荐阅读

1.Spring Boot 2.X 整合Redis
2.Spring Boot 2.X 如何优雅的解决跨域问题?
3.Spring Boot 2.X 集成spring session实现session共享
4.Spring条件注解@Conditional
5.SpringBoot 2.X从0到1实现邮件发送功能
6.Redis批量删除key的小技巧,你知道吗?


限时领取免费Java相关资料,涵盖了Java、Redis、MongoDB、MySQL、Zookeeper、Spring Cloud、Dubbo/Kafka、Hadoop、Hbase、Flink等高并发分布式、大数据、机器学习等技术。
关注下方公众号即可免费领取:

原文地址:https://www.cnblogs.com/haha12/p/11343168.html

时间: 2024-11-05 21:51:37

Spring Boot 2.X 如何快速整合jpa?的相关文章

Spring Boot的简介与idea整合jsp

一.Spring Boot简介 SpringBoot是一个框架,他的产生简化了框架的使用,所谓简化是指简化了Spring众多框架中所需的大量且繁琐的配置文件.它使用“习惯优于配置”(项目中存在大量的配置,此外还内置了一个习惯性的配置,让你无需手动进行配置)的理念让你的项目快速运行起来.使用Spring Boot很容易创建一个独立运行(运行jar,内嵌Servlet容器).准生产级别的基于Spring框架的项目,使用Spring Boot你可以不用或者只需要很少的Spring配置. SpringB

spring boot 与 shiro的简单整合使用

shrio官网:https://shiro.apache.org/ Apache Shiro是一个功能强大且易于使用的Java安全框架,可执行身份验证,授权,加密和会话管理.借助Shiro易于理解的API,您可以快速轻松地保护任何应用程序 - 从最小的移动应用程序到最大的Web和企业应用程序.spring中也有自带的安全框架spring security.shrio是通过对其的再封装,实现了自己的一套全新架构. 正巧spring boot项目中也需要用到用户的身份验证以及权限控制,本来想用AOP

Spring Boot (六): 为 JPA 插上翅膀的 QueryDSL

在前面的文章中,我们介绍了 JPA 的基础使用方式,<Spring Boot (三): ORM 框架 JPA 与连接池 Hikari>,本篇文章,我们由入门至进阶的介绍一下为 JPA 插上翅膀的 QueryDSL. 1. 引言 不可否认的是 JPA 使用是非常方便的,极简化的配置,只需要使用注解,无需任何 xml 的配置文件,语义简单易懂,但是,以上的一切都建立在单表查询的前提下的,我们可以使用 JPA 默认提供的方法,简单加轻松的完成 CRUD 操作. 但是如果涉及到多表动态查询, JPA

Spring boot(二)快速体验Web开发

spring-boot-starter-web 是 Spring Boot 对 Web 开发的支持,主要包括 RESTful.参数校验.使用 Tomcat 作为内嵌容器等功能1.json的支持2.请求传参使用Spirng Boot 可以轻松的对请求做一些限制,如为了安全只允许 POST 请求的访问.只需要在方法上 添加一个配置即可: @RequestMapping(name="/getUser", method= RequestMethod.POST) public User getU

spring boot 1.5.6版本整合LCN5.0

最新在更新LCN,由4.0更新到了5.0,这里说说更新遇到的问题,官方在5.0.1版本开始兼容了springboot1.5版本,但是整合的时候还是需要注意一些问题. 1.maven的引包需要改变,本人使用的是最新的5.0.2版本 <-- 下面两个包的版本号最好与springboot版本一致,在txlcn-tc中,引入了这两个包,并且版本号为2.0.5,该操作用于覆盖2.0.5版本的包 --> <dependency> <groupId>org.springframewo

Spring Boot 2.X整合Spring-cache,让你的网站速度飞起来

计算机领域有人说过一句名言:“计算机科学领域的任何问题都可以通过增加一个中间层来解决”,今天我们就用Spring-cache给网站添加一层缓存,让你的网站速度飞起来. 本文目录 一.Spring Cache介绍二.缓存注解介绍三.Spring Boot+Cache实战1.pom.xml引入jar包2.启动类添加@EnableCaching注解3.配置数据库和redis连接4.配置CacheManager5.使用缓存注解6.查看缓存效果7.注意事项 一.Spring Cache介绍 Spring

使用 Spring Boot 快速构建 Spring 框架应用

Spring Boot 的目的在于快速创建可以独立运行的 Spring 应用.通过 Spring Boot 可以根据相应的模板快速创建应用并运行.Spring Boot 可以自动配置 Spring 的各种组件,并不依赖代码生成和 XML 配置文件.Spring Boot 可以大大提升使用 Spring 框架时的开发效率. Why we choose Spring Boot ? Spring 框架对于很多 Java 开发人员来说都不陌生.自从 2002 年发布以来,Spring 框架已经成为企业应

Spring Boot 2.X - Spring Boot整合AMQP之RabbitMQ

文章目录Spring Boot 2.X - Spring Boot整合AMQP之RabbitMQRabbitMQ简介引入依赖编写配置编写接口启用Rabbit注解消息监听消息测试Spring Boot 2.X - Spring Boot整合AMQP之RabbitMQSpring Boot 2 整合RabbitMQ案例. RabbitMQ简介简介RabbitMQ是一个由erlang开发的AMQP(Advanved Message Queue Protocol)的开源实现.核心概念Message消息,

Spring Boot 2.x基础教程:使用Spring Data JPA访问MySQL

在数据访问这章的第一篇文章<Spring中使用JdbcTemplate访问数据库> 中,我们已经介绍了如何使用Spring Boot中最基本的jdbc模块来实现关系型数据库的数据读写操作.那么结合Web开发一章的内容,我们就可以利用JDBC模块与Web模块的功能,综合着使用来完成一个适用于很多简单应用场景的后端应用了. 然而当我们有一定的开发经验之后,不难发现,在实际开发过程中,对数据库的操作大多可以归结为:"增删改查".就最为普遍的单表操作而言,除了表和字段不同外,语句几