• Mybatis之@Provider的使用方式


    @provide

      @provide主要分为四种:@InsertProvider、@DeleteProvider、@UpdateProvider@SelectProvider,分别对应着sql中的增删改查四种操作。

      四种注解的使用方式相同,故以@SelectProvide为例进行介绍:

      @SelectProvide注解主要作用在Mapper的interface文件上,写法是

    @SelectProvide(type="XXX.class", method="exampleMethod")
    @ResultMap("Enitity")
    public Enitity getSomething();
    

      上面代码中@SelectProvide的意思是:“getSomething接口使用的是XXX这个类中exampleMethod函数返回的sql语句”,其中的两个参数,XXX.class代表指定的一个类,用户自定义;exampleMethod代表这个类中的一个函数,用来返回sql语句,这个函数返回值必须是String类型函数,返回的就是一个sql字符串。@ResultMap注释的意思是从sql的执行结果集中去数据,拼装成Enitity的实体类。

      一个参@SelectProvide

    @SelectProvider(type = SqlProvider.class, method = "selectUser2")
         @ResultMap("userMap")
         public User getUser2(@Param("userId") long userId);
    public String selectUser2(Map<String, Object> para) {
             return "select * from user where userId=" + para.get("userId");
         }
    

      多个参数@SelectProvide

    @SelectProvider(type = SqlProvider.class, method = "selectUserCheck")
         @ResultMap("userMap")
         public User getUserCheck(@Param("userId") long userId, String password);
     public String selectUserCheck(Map<String, Object> para) {
             return "select * from user where userId=" + para.get("userId") + " and password='" + para.get("1") + "'";
    }
    

      

      

  • 相关阅读:
    C#中remoting和webservice的区别
    Nhibernate了解(转载)
    深入浅出JSON
    Asp.net页面传值总结(转载)
    .Net ViewState的实现(转载)
    asp.net数据绑定之Eval和Bind区别
    PetShop数据库解读
    .Net 2.0 缓存使用(转载)
    ASP.NET中EVAL用法大全
    a:hover和a:visited书写顺序的重要性
  • 原文地址:https://www.cnblogs.com/Lyh1997/p/9966272.html
Copyright © 2020-2023  润新知