V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
4912941
V2EX  ›  Java

JPA 的 Criteria 查询,怎么使用 Mysql 的 find_in_set 函数

  •  
  •   4912941 · 2016-02-23 15:01:34 +08:00 · 6049 次点击
    这是一个创建于 3201 天前的主题,其中的信息可能已经有所发展或是发生改变。
    6 条回复    2016-02-24 10:00:06 +08:00
    hustlike
        1
    hustlike  
       2016-02-23 15:11:15 +08:00
    jpa 就是数据库无关的?
    zonghua
        2
    zonghua  
       2016-02-23 15:16:04 +08:00
    直接写语句,注解有参数:

    nativeQuery=true

    这样使用原生语句,就能用特定的函数啦。



    给个星吧, Spring 写的论坛

    http://spring-abc.xyz/

    https://github.com/zh-h/spring-abc
    4912941
        3
    4912941  
    OP
       2016-02-23 15:23:01 +08:00
    @zonghua 有许多查询条件,用 nativeQuery 的话需要拼 sql 语句,很容易出错。希望通过 Criteria 的方式。。。是不是实现不了
    4912941
        4
    4912941  
    OP
       2016-02-23 15:23:38 +08:00
    @zonghua 给星了
    zonghua
        5
    zonghua  
       2016-02-23 16:33:43 +08:00
    @4912941 那就用 Mybatis 咯,可以多个 ORM 同时使用。
    fwrq41251
        6
    fwrq41251  
       2016-02-24 10:00:06 +08:00
    jpa 支持的函数看这里,如果没有那就是没有了: https://en.wikibooks.org/wiki/Java_Persistence/Criteria#Functions
    你非要用 Criteria 写的话,重新设计下表吧。把你要 find_in_set 的这个 column 里的内容分开用别的表来存。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3296 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 12:36 · PVG 20:36 · LAX 04:36 · JFK 07:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.