使用SpringCloud的一下骚操作

    科技2025-06-07  64

    相信很多使用springCloud的同行对如何从库查数据很熟练了,不就是在dao层写个接口类xxxDao,然后在xxDaoMapper.xml写个相对于的文件,在这里写SQL。这应该是百分之九十九的开发者的通用方法,有没有想过,除了这种方法,还有其他方法吗?答案是有的。

    方法1:就是上面讲的百分之九十九的同行都会的,在此就不细说了。

    方法2:直接在xxxDao接口类的方法上方直接来个注解:

    @Select("select * from table where xxx") List<User> getUserList(List<Integer> userIds);

    如果仔细的朋友可能会问,如果我需要进行判空的,那个怎么办?

    放心,你想到的框架里都想到了,如果你的SQL比较复杂,那么可以用这个注解:@SelectProvider

    使用这个注解注意几点:

    1、在xxxDao类的相应方法上使用@SelectProvider,该注解有两个参数:

      1.1 Type:这里写你拼接SQL的java类,假设为UserDao2.java;

      1.2 method:这里写UserDao2.java文件的中那个方法的字符串类型,如:“getUsers”。

    2、如1中所说,你需要把复杂的SQL放到一个新类UserDao2.java类。

    代码如下:

    @SelectProvider(type = UserDao2.class,method = "getUsers") List<User> getUsers(); public class UserDao2 { public String getUsers(){ return "这里可以拼接复杂的SQL"; } }

     

    Processed: 0.019, SQL: 8