weed3 3.1.开始Xml sql的使用 - noear/weed3 GitHub Wiki

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

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

使用约定***
  • 1.约定resources/weed3/ 为 xml sql 根目录
  • 2.项目开启编译参数:-parameters
一、准备开始做个简单的例子

这次需要引用一个meven插件(玩过mybatis都懂的)

框架引用

<dependency>
  <groupId>org.noear</groupId>
  <artifactId>weed3</artifactId>
  <version>3.2.2</version>
</dependency>

meven插件引用(用于生成mapper类)

<!-- 放到 build / plugins / 下面 -->
<plugin>
    <groupId>org.noear</groupId>
    <artifactId>weed3-maven-plugin</artifactId>
    <version>3.2.2</version>
</plugin>
二、现在,先写个简单的xml文件
  • resources/weed3/DbUserApi.xml
<?xml version="1.0" encoding="utf-8" ?>
<mapper namespace="weed3demo.xmlsql" :db="testdb">
    <sql id="user_get" 
         :return="weed3demo.mapper.UserModel" 
         :note="获取用户信息">
        SELECT * FROM `user` WHERE id=@{user_id}
    </sql>
</mapper>
三、可以有两种方式调用xml sql
  • 通过 db.call("@...") 调用
DbContext db = new DbContext(...);

UserModel um = db.call("@weed3demo.xmlsql.user_get")
                 .set("user_id")
                 .getItem(UserModel.class);
  • 生成Mapper接口,通过动态代理使用
1.用meven插件把它生成(双击:weed3:generator)

WX20191015-224938@2x.png

2.生成的Java文件(java/weed3demo/xmlsql/DbUserApi.java)
package weed3demo.xmlsql;
@Namespace("weed3demo.xmlsql")
public interface DbUserApi{
  /** 获取用户信息*/
  weed3demo.mapper.UserModel user_get(int user_id);
}
3.试一下
//全局
public static void main(String[] args){
  //配置一个上下文,并加上名字(给xml mapper 用)
  DbContext db = new DbContext(...).nameSet("testdb");

  //通过代理获取xml mapper
  DbUserApi dbUserApi = XmlSqlMapper.get(DbUserApi.class);
  //使用它
  UserModel tmp = dbUserApi.user_get(10);
}
⚠️ **GitHub.com Fallback** ⚠️