首页 > 其他分享 >JPA在SpringBoot中简单使用

JPA在SpringBoot中简单使用

时间:2023-02-23 14:44:31浏览次数:26  
标签:实体类 SpringBoot JPA Transactional SQL userMapper 简单 Integer

前言

在SpringBoot项目中可以与JPA进行搭配,这样会省很多的开发时间,以下为JPA的简单使用

一、导入依赖

<!-- springboot  jpa依赖-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>

二、配置数据访问层

public interface UserMapper extends JpaRepository<Users,Integer>, JpaSpecificationExecutor<Users>

强大的jpa封装了许多常用的数据访问的方法,我们继承过后可以直接访问
其中JpaRepository<T, ID>,T为与其有关的实体类的名称,如上例,我所创建的实体类为Users;ID是指T实体类中的主键的数据类型,在我创建的Users中,主键的数据类型为Integer

三、使用JPA

1、使用原装的简单方法

JPA可以满足我们基本的增删改查

userMapper.saveAndFlush(users);//存储

userMapper.findAll();//查询全部

userMapper.deleteAll();//删除

2、自定义方法

当然JPA可以满足简单的SQL请求,但是当SQL语句过于复杂时,我们就可以自定义SQL语句

@Transactional
@Query(value = "select * from form where user_id = ?",nativeQuery = true)
Users findUsers(Integer userId);

@Transactional
@Modifying
@Query(value = "delete from form where user_id = ?",nativeQuery = true)
Integer deleteUsers(Integer userId);

在查找相关的语句中所需要的注解有,@Query和@Transactional,

而在删除和修改则多了@Modifying

标签:实体类,SpringBoot,JPA,Transactional,SQL,userMapper,简单,Integer
From: https://www.cnblogs.com/maomao777/p/17147910.html

相关文章

  • SpringBoot17 - 常用计量单位绑定
    常用计量单位绑定​ 在前面的配置中,我们书写了如下配置值,其中第三项超时时间timeout描述了服务器操作超时时间,当前值是-1表示永不超时。servers:ip-address:192.168......
  • SpringBoot18 - 校验
    校验​ 在书写时由于无法感知模型类中的数据类型,就会出现类型不匹配的问题,比如代码中需要int类型,配置中给了非法的数值,例如写一个“a",这种数据肯定无法有效的绑定,还会引......
  • SpringBoot19 - 数据类型转换
    数据类型转换​ 先把问题描述一下,这位开发者连接数据库正常操作,但是运行程序后显示的信息是密码错误。java.sql.SQLException:Accessdeniedforuser'root'@'localho......
  • SpringBoot14 - 热部署
    热部署​ 什么是热部署?简单说就是你程序改了,现在要重新启动服务器,嫌麻烦?不用重启,服务器会自己悄悄的把更新后的程序给重新加载一遍,这就是热部署。​ 热部署的功能是如......
  • SpringBoot15 - @ConfigurationProperties绑定属性
    @ConfigurationProperties为使用@Bean声明的第三方bean绑定属性​ 在基础篇学习了@ConfigurationProperties注解,此注解的作用是用来为bean绑定属性的。开发者可以在yml配......
  • Chatgpt的简单使用
    一、注册方式1、进入官网,常规操作,邮箱登录网址:https://platform.openai.com/2、找到合适的接码平台,目前全网都在用俄罗斯某接码网址:https://sms-activate.org/常规操作......
  • Python练习--简单练习(一看就能写出来的代码)
    两数之和数字的阶乘求圆的面积(输入半径,求解圆的面积)求区间内所有素数的和求前N个数字的平方和......
  • SpringBoot基础篇学习讲义
    SpringBoot文档更新日志版本更新日期操作描述v1.02021/11/14A基础篇前言​ 很荣幸有机会能以这样的形式和互联网上的各位小伙伴一起学......
  • SpringBoot11 - 各类配置优先级
    配置高级​ 关于配置在基础篇讲过一部分,基础篇的配置总体上来说就是让各位小伙伴掌握配置的格式。比如配置文件如何写啊,写好的数据如何读取啊,都是基础的语法级知识。在实......
  • SpringBoot10 - 程序的打包与运行
    SpringBoot程序的打包与运行​ 企业项目上线为了保障环境适配性会采用下面流程发布项目,这里不讨论此过程。开发部门使用Git、SVN等版本控制工具上传工程到版本服务器......