springboot之Jpa通用接口及公共方法使用示例
目录
- springboot Jpa通用接口,公共方法de 简单使用
- pom文件加入jpa
- 建立model/domain
- 基本接口BaseRepository
- 重写JpaRepositoryFactoryBean
springboot Jpa通用接口,公共方法de 简单使用
pom文件加入jpa
这是我的例子使用的依赖。jpa必须当然、、。
建立model/domain
首先起码建立2个model/domain.就是entity啦。才能看的出效果。随意,应该不需要再描述了。最简单的用法就是直接写repository。然后就可以使用基础的增删改查了,注意修改删除加@Modifying。
这是我的基础使用方法。
这样的写法简洁,但是如果是想用一个通用的方法就能实现多个repository的注解,根据一个特定的String匹配她,这样就不用每次一些简单的方法都注入一个新的repository了。说白了想偷懒。参考了不少的文献得到的步骤,还是很值得学习的。
基本接口BaseRepository
第一步写一个基本接口BaseRepository:泛型=====泛型,这里添加了个support和setTypes方法。核心啊,先往下走,第一次看的估计不知道干嘛的。
继承他并重写3个方法。注意红框才是重点。意思嘛,嘻嘻我也不知道。反正简单的就这样写就对哦。
please set types is same with model ,eg Student–>Student,but tableName is student,don’t worry,it can be auto change. (bie jiao de English, tu ran buneng xie Chinese le.)
重写JpaRepositoryFactoryBean
其他的都是千篇一律,红框返回我们的实现类BaseRepositoryImpl就OK了,还有下面的方法也是。。。
在mian上加上自己写的bean:
写一个类用来匹配我们已经建好的repository。注意注释!!!!!!!!!!!!!!!
来看看结果:6-------7实现了传一个String匹配到repository,其他的更多的方法自己封装咯。拜拜。不懂得留言或者多logger一下,毕竟版本在变,会存在一些差异,但是总的还是能实现的,除非大改,那就是一个新的问题了。
以上就是springboot 之Jpa通用接口及公共方法使用示例的详细内容,更多关于springboot Jpa通用接口公共方法的资料请关注我们其它相关文章!
相关推荐
-
SpringBoot+JPA 分页查询指定列并返回指定实体方式
目录 SpringBoot+JPA分页查询指定列并返回指定实体 SpringBoot JPA实现自定义语句分页查询 SpringBoot+JPA分页查询指定列并返回指定实体 用习惯Mybatis,没用过jpa 真是各种踩坑了 脑壳疼,一个分页弄老半天,原来就一句话的事情,唉 先来说说正常的JPA如何操作 实体类对应表来创建,举个例子 @Entity @Table(name = "td_user") public class TdUser extends BaseModel { priv
-
Springboot JPA如何使用distinct返回对象
目录 JPA如何使用distinct返回对象 JPA自定义返回对象 方法一 方法二 方法三 方法四 JPA如何使用distinct返回对象 package com.frank.jpaBatchSave.repository; import com.frank.jpaBatchSave.entity.Person; import org.springframework.data.jpa.repository.Query; import org.springframework.data.reposi
-
springboot jpa之返回表中部分字段的处理详解
目录 springboot jpa返回表中部分字段 JPA 自定义返回字段 springboot jpa返回表中部分字段 使用springboot jpa操作数据库可以加快我们的开发效率,对于简单的crud操作来说,使用jpa来开发不要太爽,但是说实话对于一些复杂的数据库操做jpa使用起来就不是这么爽了. 在开发中很多时候我们要返回的可能只是数据库表中或某个类中的一部分字段,这个要是用mybatis的话就很简单,直接在sql中select字段就好了,规范一点就数据传输类接一下,偷个懒的话直接用m
-
springboot jpa 实现返回结果自定义查询
目录 jpa返回结果自定义查询 第一种方法 第二种方法 使用jpa两张表联查返回自定义实体 1.创建一个SpringBoot空白项目,引入pom依赖 2.application.yml配置文件 3.数据库(有两张表user/address) 4.User.java和Address.java 5.UserDaoRepository.java和AddressDaoRepository.java 6.UserAddressDto.java代码 7.TestController.java jpa 返回结
-
springboot中使用jpa下hibernate的ddl-auto方式
目录 使用jpa下hibernate的ddl-auto ddl-auto的配置 spring.jpa.hibernate.ddl-auto的配置 具体的关系见下 使用jpa下hibernate的ddl-auto 今天做一个报表的功能,发现一个表中的shopProductId都为null,但在程序中判断用的是shopProductId,而且表中有productId不为null,在查找原因的途中,才得知是有人将productId改为了shopProductId,但是数据没有更新过去. 遇到这种情况,
-
Springboot jpa使用sum()函数返回结果如何被接收
目录 jpa使用sum()返回结果如何接收 1.需求 2.解决方法一 3.解决方法二 jpa使用count函数和sum函数 方法一 方法二 方法三 jpa使用sum()返回结果如何接收 1.需求 我的需求是统计域名以及域名出现的次数. 之前使用springboot jpa都是把数据库中的表跟实体类绑定,创建继承JpaRepository的接口.如下: @Repository public interface UrlsRepository extends JpaRepository<Urls, S
-
springboot之Jpa通用接口及公共方法使用示例
目录 springboot Jpa通用接口,公共方法de 简单使用 pom文件加入jpa 建立model/domain 基本接口BaseRepository 重写JpaRepositoryFactoryBean springboot Jpa通用接口,公共方法de 简单使用 pom文件加入jpa 这是我的例子使用的依赖.jpa必须当然... 建立model/domain 首先起码建立2个model/domain.就是entity啦.才能看的出效果.随意,应该不需要再描述了.最简单的用法就是直接
-
springboot整合JPA访问Mysql的实现方法
1.代码实现: 添加依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org
-
SpringBoot在一定时间内限制接口请求次数的实现示例
需要用到的知识:注解.AOP.ExpiringMap(带有有效期的映射) 我们可以自定义注解,把注解添加到我们的接口上.定义一个切面,执行方法前去ExpiringMap查询该IP在规定时间内请求了多少次,如超过次数则直接返回请求失败. 需要用到的依赖 <!-- AOP依赖 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-sta
-
Springboot使用redis实现接口Api限流的示例代码
前言 该篇介绍的内容如题,就是利用redis实现接口的限流( 某时间范围内 最大的访问次数 ) . 正文 惯例,先看下我们的实战目录结构: 首先是pom.xml 核心依赖: <!--用于redis数据库连接--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId>
-
SpringBoot Data JPA 关联表查询的方法
SpringBoot Data JPA实现 一对多.多对一关联表查询 开发环境 IDEA 2017.1 Java1.8 SpringBoot 2.0 MySQL 5.X 功能需求 通过关联关系查询商店Store中所有的商品Shop,商店对商品一对多,商品对商店多对一,外键 store_id存在于多的一方.使用数据库的内连接语句. 表结构 tb_shop tb_store 实体类,通过注解实现 1.商店类Store.java package com.gaolei.Entity; import ja
-
Yii2.0建立公共方法简单示例
本文实例讲述了Yii2.0建立公共方法.分享给大家供大家参考,具体如下: 因为之前写项目都是用的Thinkphp,公共方法都写在Tp自带的common下面的function里面,初次接触Yii框架发现它自身没带这个机制.在项目中,很多地方都需要公共方法的存在,以提高代码复用性,减少重复开发的时间,那yii2如何定义自己的公共方法呢? 以yii2-advanced版本为基础来进行介绍: 上图为yii2-advanced版本的基础目录结构,而./common 目录为公共资源目录,我们可以把定义的方法
-
SpringBoot使用AOP记录接口操作日志的方法
目录 一.操作日志简介 1.1.系统日志和操作日志的区别 1.2.操作日志记录实现方式 二.AOP面向切面编程 2.1.AOP简介 2.2.AOP作用 2.3.AOP相关术语 2.4.JointPoint和ProceedingJoinPoint 2.5.AOP相关注解 三.AOP切面实现接口日志记录 3.1.引入AOP依赖 3.2.创建日志信息封装类WebLog 3.3.创建切面类WebLogAspect 3.4.调用接口进行测试 四.AOP切面+自定义注解实现接口日志记录 4.1.自定义日志注
-
SpringBoot整合mybatis通用Mapper+自定义通用Mapper方法解析
目录 首先引入pom 通用Mapper是tk.mybais中的 也可以用代码进行配置 数据库创建一张表member以及相关字段 新建一个通用Mapper继承Mapper.MySqlMapper 比较详细的一个入门示例 举例我要写一个通用的单表分页 在自己的BaseMapper写一个方法,改造后的BaseMapper 新建的BaseMapperProvider 对上诉实现代码的描述 返回后通用Mapper是怎么处理的 最近公司在用的通用mapper,自己感兴趣,然后就来搭建了一个springboo
-
springboot使用JPA时间类型进行模糊查询的方法
这个问题是我自己开发中遇到的问题 数据库使用的是mysql5.6 字段名称为checkingTime 类型为timestamp 显而易见 存到库中的是保留6位毫秒 即yyyy-MM-dd HH:mm:ss.ssssss 此时需求是精确到分钟的相同时间 不进行存储 这时候就需要进行模糊查询 搜了一圈百度 并没有什么好用的方法 我的bean类定义的是date类型 使用注解将类型更改为timestamp 存入库中 其实在做模糊查询的时候 只需要向持久层传入String类型参数即可 我的做
-
SpringBoot服务上实现接口限流的方法
Sentinel是阿里巴巴开源的限流器熔断器,并且带有可视化操作界面. 在日常开发中,限流功能时常被使用,用于对某些接口进行限流熔断,譬如限制单位时间内接口访问次数:或者按照某种规则进行限流,如限制ip的单位时间访问次数等. 之前我们已经讲过接口限流的工具类ratelimter可以实现令牌桶的限流,很明显sentinel的功能更为全面和完善.来看一下sentinel的简介: https://github.com/spring-cloud-incubator/spring-cloud-alibab
随机推荐
- DB2编程序技巧 (八)
- 使用ExtJS技术实现的拖动树结点
- 多ajax请求的各类解决方案(同步, 队列, cancel请求)
- 详解Java实现缓存(LRU,FIFO)
- JavaScript地理位置信息API
- 浅谈Node.js:fs文件系统模块
- BootStrapValidator初使用教程详解
- JavaScript 浏览器兼容性总结及常用浏览器兼容性分析
- 使用Deflate算法对文件进行压缩与解压缩的方法详解
- 浅谈JS获取元素的N种方法及其动静态讨论
- Windows Server2008 R2 MVC 环境安装配置教程
- Bootstrap导航条的使用和理解3
- 深入理解C++中的文件操作
- yii2简单使用less代替css示例
- java9区分opens与exports
- thinkPHP中U方法加密传递参数功能示例
- element-ui中的select下拉列表设置默认值方法
- 浅谈SpringBoot项目如何让前端开发提高效率(小技巧)
- 关于MySQL的sql_mode合理设置详解
- 利用python实现周期财务统计可视化