jpa基本查询

1.继承JpaRepository,生成了CRUD方法

public void testBaseQuery() throws Exception {
  User user=new User();
  userRepository.findAll();
  userRepository.findOne(1l);
  userRepository.save(user);
  userRepository.delete(user);
  userRepository.count();
  userRepository.exists(1l);
  // ...
}

jpa条件查询

主要的语法是findXXBy,readXXBy,queryXXBy,countXXBy, getXXBy后面跟属性名称:

List<Bank> findAllBankByValidSignOrderByBankCode(Integer validSign);

分页查询

在参数中加入Pageable

Page<User> findByUserName(String userName,Pageable pageable);

使用的时候传入page和size

如BootStrap的前台参数传入,后台controller直接用Pageable接收

当然用直接new方法也是可以构建的

PageRequest源码:

自定义查询

在SQL的查询方法上面使用@Query注解,如涉及到删除和修改在需要加上@Modifying

自定义映射

@Entity表示这是一个实体bean

@Table映射数据库中的表,若缺省,则自动采用与类名相同的表

@Column注释定义了将成员属性映射到关系表中的哪一列和该列的结构信息(name属性为字段名)

@Id注释指定表的主键,生成规则由@GeneratedValue设定的,其中GenerationType有四种类型,依次是

TABLE,

SEQUENCE,

IDENTITY,(主键由数据库生成, 采用数据库自增长,Oracle不支持)

AUTO

这里使用的SEQUENCE是根据底层数据库的序列来生成主键,条件是数据库支持序列

SequenceGenerator的默认增长为50,初始值为1

多表查询映射

1.Dto联合

从@Query里的语句可看出定义了一个Dto联合UploadData与Bank实体类里的属性

@Param注解为使用:加上括号里面的注入参数(不是与方法参数相匹配的)

参考链接https://www.cnblogs.com/zj0208/p/6008627.html

2.@SecondaryTable 的使用

原生sql查询

注入实体管理器EntityManage,createNativeQuery方法为使用标准 SQL语句创建查询对象

了解一个返回总数的方法就够了

// 获取总数
String countSql = "select count(*) from (" + sql + ")";
Integer count = Integer.valueOf(entityManager.createNativeQuery(countSql).getSingleResult().toString());

JPA基本用法的更多相关文章

  1. JAVA JPA - 示例用法

    JPA(Java Persistence API)是JSR(Java Specification Requests)的一部分,定义了一系列对象持久化的标准,目前实现这一规范的产品有Hibernate. ...

  2. jpa findOne()用法

    findOne(Interger id) 如果实体类没有id这个属性的话是会报错的 改别人的代码神烦...

  3. spring boot(五):spring data jpa的使用

    在上篇文章springboot(二):web综合开发中简单介绍了一下spring data jpa的基础性使用,这篇文章将更加全面的介绍spring data jpa 常见用法以及注意事项 使用spr ...

  4. 展开被 SpringBoot 玩的日子 《 五 》 spring data jpa 的使用

    在上篇文章< 展开被 SpringBoot 玩的日子 < 二 >WEB >中简单介绍了一下spring data jpa的基础性使用,这篇文章将更加全面的介绍spring da ...

  5. Spring Boot(五):Spring Boot Jpa 的使用

    在上篇文章Spring Boot(二):Web 综合开发中简单介绍了一下 Spring Boot Jpa 的基础性使用,这篇文章将更加全面的介绍 Spring Boot Jpa 常见用法以及注意事项. ...

  6. (转)Spring Boot(五):Spring Boot Jpa 的使用

    http://www.ityouknow.com/springboot/2016/08/20/spring-boot-jpa.html 在上篇文章Spring Boot(二):Web 综合开发中简单介 ...

  7. springboot:spring data jpa介绍

    转载自:https://www.cnblogs.com/ityouknow/p/5891443.html 在上篇文章springboot(二):web综合开发中简单介绍了一下spring data j ...

  8. spring boot(五)Spring data jpa介绍

    在上篇文章springboot(二):web综合开发中简单介绍了一下spring data jpa的基础性使用,这篇文章将更加全面的介绍spring data jpa 常见用法以及注意事项 使用spr ...

  9. @GeneratedValue 四种标准用法为TABLE,SEQUENCE,IDENTITY,AUTO.

    一.JPA通用策略生成器 通过annotation来映射hibernate实体的,基于annotation的hibernate主键标识为@Id, 其生成规则由@GeneratedValue设定的.这里 ...

随机推荐

  1. C#简单实现表达式目录树(Expression)

    1.什么是表达式目录树 :简单的说是一种语法树,或者说是一种数据结构(Expression) 2.用Lambda声明表达式目录树: 1 2 3 4 5 Expression<Func<in ...

  2. commandBinding 的命令

    <Window x:Class="WpfApplication1.Window29" xmlns="http://schemas.microsoft.com/win ...

  3. UWP 动画之路径

    xml --------------------------------------------- <Page x:Class="MyApp.MainPage" xmlns= ...

  4. tar.gz 文件解压

    tar.gz 文件解压 解压缩 file.tar.gz 的过程中出现如下所示问题: tar: 它似乎不像是一个 tar 归档文件 tar: 跳转到下一个头 tar: 由于前次错误,将以上次的错误状态退 ...

  5. Failed to start LSB: Bring up/down错误解决方法

    很多朋友在使用centos7系统时,有时候需要分配多个IP地址,这就涉及到修改网卡配置,但是在修改完网卡配置时,重启网络服务时会出现"Failed to start LSB: Bring u ...

  6. 分数化循环小数C++实现

    引言 前一阵做了一个有理数四则混合运算的程序(详见:用C++实现的有理数(分数)四则混合运算计算器),以分数形式呈现运算结果.这次添加以循环小数形式呈现运算结果的功能.例如: Please input ...

  7. 理解ASP.NET Core - [02] Middleware

    注:本文隶属于<理解ASP.NET Core>系列文章,请查看置顶博客或点击此处查看全文目录 中间件 先借用微软官方文档的一张图: 可以看到,中间件实际上是一种配置在HTTP请求管道中,用 ...

  8. (六)羽夏看C语言——函数

    写在前面   由于此系列是本人一个字一个字码出来的,包括示例和实验截图.本人非计算机专业,可能对本教程涉及的事物没有了解的足够深入,如有错误,欢迎批评指正. 如有好的建议,欢迎反馈.码字不易,如果本篇 ...

  9. webservice学习总结(一)-- WebService相关概念介绍

    一.WebService是什么? 基于Web的服务:服务器端整出一些资源让客户端应用访问(获取数据) 一个跨语言.跨平台的规范(抽象) 多个跨平台.跨语言的应用间通信整合的方案(实际) 二.为什么要用 ...

  10. Java的参数传递是值传递还是引用传递?

    一.前言 首先先说结论,Java中方法参数传递方式是按值传递.如果参数是基本类型,传递的是基本类型的字面量值的拷贝.如果参数是引用类型,传递的是该参量所引用的对象在堆中地址值的拷贝. 接下来深入了解一 ...