美文网首页
jpa 方法名查询sql语句

jpa 方法名查询sql语句

作者: 酸奶泡奥利奥 | 来源:发表于2019-08-06 13:40 被阅读0次

通些关键字实现SQL命令

//And --- 等价于 SQL 中的 and 关键字,比如 findByHeightAndSex(int height,char sex);

 publicList<User> findByHeightAndSex(intheight,charsex); 

// Or --- 等价于 SQL 中的 or 关键字,比如 findByHeightOrSex(int height,char sex);

 publicList<User> findByHeightOrSex(intheight,charsex);

//Between --- 等价于 SQL 中的 between 关键字,比如 findByHeightBetween(int min, int max);

 publicList<User> findByHeightBetween(intmin,intmax);

 //LessThan --- 等价于 SQL 中的 "<",比如 findByHeightLessThan(int max);

 publicList<User> findByHeightLessThan(intmax);

 //GreaterThan --- 等价于 SQL 中的">",比如 findByHeightGreaterThan(int min);

 publicList<User> findByHeightGreaterThan(intmin);

 //IsNull --- 等价于 SQL 中的 "is null",比如 findByNameIsNull();

 publicList<User> findByNameIsNull();

 //IsNotNull --- 等价于 SQL 中的 "is not null",比如 findByNameIsNotNull();

 publicList<User> findByNameIsNotNull();

 //NotNull --- 与 IsNotNull 等价;

 publicList<User> findByNameNotNull();

 //Like --- 等价于 SQL 中的 "like",比如 findByNameLike(String name);

 publicList<User> findByNameLike(String name);

 //NotLike --- 等价于 SQL 中的 "not like",比如 findByNameNotLike(String name);

 publicList<User> findByNameNotLike(String name);

 //OrderBy --- 等价于 SQL 中的 "order by",比如 findByNameNotNullOrderByHeightAsc();

 publicList<User>findByNameNotNullOrderByHeightAsc();

 //Not --- 等价于 SQL 中的 "! =",比如 findByNameNot(String name);

 publicList<User> findByNameNot(String name);

 //In --- 等价于 SQL 中的 "in",比如 findByNameIN(String name);

 publicList<User> findByNameIn(String name);

 //NotIn --- 等价于 SQL 中的 "not in",比如 findByNameNotIN(String name);

 publicList<User> findByNameNotIn(String name);

jpa本身自带分页方法

关键字方法命名sql where字句

查询是JPA中重要的内容,JPA中可以执行两种方式的查询,一种是使用是基于Entity对象的查询,一种是使用SQL语句去查询。

JPA中执行查询的步骤如下:

1)     编写查询语句

SELECT s FROM Student s

2)     创建查询

命名查询是一种优化的查询方式,可以提高查询的效率,命名查询最重要的是首先定义查询,JPA使用@Query注解来定义命名查询,然后通过Entity来获创建命名参数,如下

@Query("select o.serialNumber  from Orders o where o.publicOpenid = ?1 order by o.createTime desc ")

List<String> findSerialNumberByPublicOpenId(String publicOpenid);

1、  必须在实体类上定义命名查询

注意:

u  自定义对象必须为POJO类,提供必要的构造函数;

u  JPQL语句中要加NEW关键子,且类为全限定名;

在查询时,往往需要动态传入多个条件,此时需要组装JPQL。在组装JPQL时,有一个小技巧,可以巧妙利用”1=1”这个表达式,如下

SELECT s FROM Student s WHERE 1=1 AND s.id=:id AND s.name=:name

当增加查询条件时,只需要增加“AND查询条件即可”,无需做额外的逻辑判断。

相关文章

  • jpa 方法名查询sql语句

    通些关键字实现SQL命令 //And --- 等价于 SQL 中的 and 关键字,比如 findByHeight...

  • Spring Data JPA问题集锦(一)

    -------采用SQL语句查询JPA导致BigInteger cannot be cast to java.la...

  • 使用Spring Data JPA的Specification构

    Spring Data JPA最为优秀的特性就是可以通过自定义方法名称生成查询来轻松创建查询SQL。Spring ...

  • Spring Data JPA进阶

    Spring Data JPA进阶 目录 ddl属性配置 通过解析方法名查询 关联查询 spring.jpa.pr...

  • Java自学-JDBC 查询

    在JDBC中使用ResultSet查询SQL语句 执行查询SQL语句 步骤 1 : 查询语句 executeQue...

  • Hibernate的Criteria的一些实用case

    简单的查询 SQL A是一个JPA entity Criteria SQL A是一个JPA entity Crit...

  • mysql数据库查询语句

    1.简单的查询基本表的SQL语句 (1)查询语句 (2)查询语句 Student表的删除SQL语句: 选课表的操作...

  • wireshark抓包mysql

    官网下载地址 wireshark download 场景1:抓某一个接口指定查询sql语句(例如jpa中调用的sq...

  • JPARepository查询(findby)

    JpaRepository的查询 Spring Data JPA框架在进行方法名解析时,会先把方法名多余的前缀截取...

  • JPA

    JPA有规定的语句格式,如果按照规定的语句格式写是不用写SQL的 JPA连下面的SQL也不用写,直接可以按照规定的...

网友评论

      本文标题:jpa 方法名查询sql语句

      本文链接:https://www.haomeiwen.com/subject/mdvidctx.html