• xml配置SQL语句


    现在很多软件都直接使用ORM框架来进行数据库操作,也就此出现代码优先。

    ORM框架一个麻烦是效率和复杂查询语句,在有些情况下并不好,而且难以控制生成的SQL.

    另外一种则是直接写SQL语句,对于c#来说就是ado.net.

    还有类似spring.net的框架,但是遗憾的是配置SQL的库还是有一定封闭性,基本和ORM绑定,或者需要自己操作数据库,没有将生成的SQL语句提供出来,我还没有找到类似的。因此,轮子来了。

     采用XML配置SQL语句,一个语句就是一个Statement节点,携带ID属性,ID标记需要使用的SQL方法,程序将自动反射调用的类名称,方法名称,分别作为xml文件名称和节点名称。然后解析xml;

     xml内部节点被映射成程序方法,主要有Isnotempty映射实体属性为空判断,Dynamic映射我们一般的条件判断,引用了动态linq,

    方法的参数映射成SQL的参数。

    定义的主要节点:where ,set,choose,when,othersize,witch,case,default,page判断连接

    条件节点:IsNotEmpty,Dynamic

    类似你会看见:

    <Statement Id="Test" >

      select * from  test  where id=@id
      </Statement>

    或者扩展

    <Statement Id="Test" >

      select * from  test  

    <where IsNotEmpty="name">

    name=@name

    </where>
      </Statement>

    初步项目:https://github.com/jinyuttt/SmartXmlSql.git

  • 相关阅读:
    好文章记录
    求职经历
    C正确初始化方式
    linux 常用命令
    MYSQL查找从小到大排列第90%个位置的数据
    最好的单例模式
    <%= %>和${}使用差异
    后台和jsp乱码处理
    浏览器下载文件
    文件下载
  • 原文地址:https://www.cnblogs.com/jinyu20180311/p/12629026.html
Copyright © 2020-2023  润新知