关于 Spring boot QueryDsl 在编译时到不到父类 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
glacial
V2EX    Java

关于 Spring boot QueryDsl 在编译时到不到父类

  •  
  •   glacial Oct 3, 2020 2876 views
    This topic created in 2033 days ago, the information mentioned may be changed or developed.

    我在 springboot 的项目中使用了 QueryDsl, 如果使用了父类并且不在一个包下在编译时会报错找不到父类的"Q 类" 例如 :QRootEntity

    RootEntity 类路径是在 com.zp.mars.entity 中 RootEntity

    User 类路径是在 com.zp.mars.user.domain 中 User

    这个时候去编译 User 类会报不找到 QRootEntity 类, 也就是说 QueryDsl 插件是默认不会找到父类并生成父类的 Q 类的 这个时候有两种解决办法

    1.项目中加上一个 package-info 类

    @QueryEntities(value = {RootEntity.class}) package com.zp.mars.entity; import com.querydsl.core.annotations.QueryEntities; import com.zp.mars.entity.RootEntity; 

    2.因为我用的是微服务这样在每个项目的中加上 package-info 类我觉得有点麻烦.所以我就把生成好的 QRootEntity 类拷到了 com.zp.mars.entity 下 这样也可以编译通过. 因为我的 RootEntity 基本上不会有变化了所以我觉得可以这么做

    不知道大家还有没有更好的办法

    5 replies    2023-12-23 19:28:00 +08:00
    Jooooooooo
        1
    Jooooooooo  
       Oct 3, 2020
    放到一个 common 包里, 大家都引这个包.
    glacial
        2
    glacial  
    OP
       Oct 3, 2020
    @Jooooooooo 是的 我的 com.zp.mars.entity.RootEntity 就是个一个 common 包里面
    crclz
        3
    crclz  
       Oct 3, 2020
    歪个楼,我个人认为 QueryDSL 很无用。

    事务类请求直接使用 JpaRepository 。

    查询类请求直接写 sql,一方面是因为 sql 本身是一个很成熟、易编写、易理解的语言,另一方面是因为 IDEA 有 sql 智能提示。
    wangyanrui
        4
    wangyanrui  
       Oct 3, 2020 via Android
    @glacial common 包也导入 querydsl 的 jar 和 maven 插件即可
    CaspianJou
        5
    CaspianJou  
       Dec 23, 2023
    @crclz 主要动态条件这种场景,Specification 写起来太繁琐,代码可读性也不够,这时候 QueryDSL 就很香
    About     Help     Advertise     Blog     API     FAQ     Solana     5326 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 40ms UTC 09:26 PVG 17:26 LAX 02:26 JFK 05:26
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86