我是靠谱客的博主 动人外套,最近开发中收集的这篇文章主要介绍weed3-2.4.存储过程与查询过程,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Weed3 一个微型ORM框架(只有0.1Mb哦)

源码:https://github.com/noear/weed3
源码:https://gitee.com/noear/weed3

关于存储过程的支持,设计了两个方案
  • 1.对接数据库的存储过程调用
db.call("user_get").set("_user_id",1).getMap();
  • 2.SQL查询过程(我叫它:查询过程)

看起来跟mybatis的SQL注解代码有点儿像

//由SQL构建的一个查询
db.call("SELECT * FROM user WHERE id=@{user_id}").set("user_id",1).getMap();
还可以对它们进行实体化(变成一个独立的类)

实体化的作用在于,可将数据处理安排到别的模块(或文件夹)

  • 1.对接数据库的存储过程实体化
public class user_get extends DbStoredProcedure {
    public user_get() {
        super(DbConfig.test);

        call("user_get");
        set("_userID", () -> userID);
    }

    public long userID;
}

user_get sp  =new user_get();
sp.userID=10;
Map<String,Object> map = sp.caching(cache).getMap();//顺带加个缓存
  • 2.查询过程的实体化
public class user_get2 extends DbQueryProcedure {
    public user_get2() {
        super(db);

        sql("select * from user where type=@{type} AND sex=@{sex}");
        // 这个绑定写法,想了很久才想出来的(就是不想反射!)
        set("type", () -> type);
        set("sex", () -> sex);
    }

    public int type;
    public int sex;
}
//DbQueryProcedure 提供了与 DbStoredProcedure 相同的接口
user_get2 sp  =new user_get2();
sp.userID=10;
Map<String,Object> map = sp.caching(cache).getMap();

最后

以上就是动人外套为你收集整理的weed3-2.4.存储过程与查询过程的全部内容,希望文章能够帮你解决weed3-2.4.存储过程与查询过程所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部