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

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

05年的时候开始写这个框架的1代版本。。。
08年时进入互联网公司重构写了2代版本。。。
14年重构写了现在的3代版本(有java 和 .net 的两个平台版本)。。。
最近被迫加了xml sql mapper的支持。。。
然后顺带加了sql注解。。。
终于包也变大到0.1Mb了。。。

上次一个群里的朋友说,这是个清奇的框架。这个讲法很有意思啊。。

总体上来讲,这个框架的特点就是不喜欢反射、不喜欢配置(但仍然避免不了)!!!是希望通过良好的接口设计,来完全成简洁的操控体验。或许你觉得随便手写点sql都比它好(怎么可能呢,哈哈~~)

对于一些老人来说,这样描述可能给较好:它相当于 mybatis + mybatis-puls (有个对标物,容易理解些)。。。不过我没用过它们,可能讲得也不对。

另外,它很小,它很快,它很自由(也有人说,太自由反而难控制)

这一篇,先Hello world一下:
  • 建个任何类型的java项目,引入框架包
<dependency>
    <groupId>org.noear</groupId>
    <artifactId>weed3</artifactId>
    <version>3.2.2.4</version>
</dependency>

<!-- 这个是顺带的,数据库连接器总要有一个 -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.47</version>
</dependency>
  • 不用任何配置,三行代码就可运行
// hello world 走起...(数据库链接改个对口的...)
public static void main(String[] args){
    DbContext db  = new DbContext("user","jdbc:mysql://127.0.0.1:3306/user","root","1234");
    String rst = db.sql("SELECT 'hello world!'").getValue();//获取值
    System.out.println(rst);
}
  • 应该算是简单的吧

不能hello world的东西不是好东西。哈哈:-P

weed3 支持纯java链式写法 或者 xml sql写法 或者 注解sql写法。安排上会先介绍纯java写法。。。再慢慢讲开来。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐