开源中国

我们不支持 IE 10 及以下版本浏览器

It appears you’re using an unsupported browser

为了获得更好的浏览体验,我们强烈建议您使用较新版本的 Chrome、 Firefox、 Safari 等,或者升级到最新版本的IE浏览器。 如果您使用的是 IE 11 或以上版本,请关闭“兼容性视图”。
Simple-Edbc首页、文档和下载 - 支持多数据源的轻量级 ORM 框架 - 开源中国社区
Float_left Icon_close
全部项目分类
GPL
Java
跨平台
Coody
分享
收藏
8 人收藏
收录时间:2017-06-06
Simple-Edbc 详细介绍

simple-edbc

一个简单易用的ORM框架。集成hibernate与mybatis部分特征于一身

支持原生SQL语句、支持各种弹性装载

支持注解控制表名、字段名

支持注解控制数据源与数据源继承关系

可配合Spring事物管理

简化模型与数据库对应关系,提供默认驼峰与下划线命名规则

文档地址:https://shimo.im/doc/Gd6NqYolg7wfEAHJ/

注意事项:

在系统开发中对于数据库模型尽量不要使用基础数据类型,所有的实体类需继承BaseModel。文档中灰色方法为不常用方法,红色为常用方法。

面向问题:

  1. 规避繁琐的mapper关系
  2. 避免SQL语句误操作
  3. 简化繁琐的语句
  4. 控制数据源
  5. 简化事务管理

一、 数据库字段对应说明

1, 默认数据表为反驼峰式命名,对象模型中字段与数据库字段一致(如)。

2, 当数据库表与模型不统一时,使用@Table("实际表名")在数据模型类上标记即可

3, 当数据库字段与模型不统一时,使用@Column("实际字段名")在数据模型字段上标记即可

二、 数据源控制

1, 如对查询实时要求较高,可在方法上面标记DBSource注解强制操作指定库

2, DBSource注解对相同类内部方法调用不生效。

3, 如若使用其他数据源,可DBSource("dataSource001")在方法头部用注解进行设置

4, 数据源控制有上下方法层级继承关系。

5, 当存在上级数据源且指定当前数据源场景下,优先使用本级别数据源

 

三、 条件控制器

条件控制器Where是JDBC全局通用的控制条件模型。功能强大几乎兼容所有条件。

 

使用方案:

Where where=new Where();

where.set("type",1)

.set("status",2)

.set("channel","in",{"channel001","channel002"})

.set("level",">=",30).set("userName","is not null");

 

a) set(String, String, Object...)

字段

可空

描述

String

Not Null

字段名

String

Not Null

条件符

Object…

Null

参数值

使用案例:

Where where=new Where();

where.set("status","in",1,2,3,4);



Where where=new Where();

where.set("status","not in",1,2,3,4);





Where where=new Where();

where.set("status","=",1);



Where where=new Where();

where.set("status","<>",1);



Where where=new Where();

where.set("status",">=",1);



Where where=new Where();

where.set("title","like","%admin%");

 

字段

可空

描述

String

Not Null

字段名

Object

Null

参数值,当次参数为数组或集合,默认in操作

b) set(String, Object)

使用案例:

Where where=new Where();

where.set("status",new Integer[]{ 1,2,3,4}); //in操作



Where where=new Where();

where.set("status", 1); //等于操作


<!-- 动态数据源配置 (不使用可不配置)-->四、 配置方式:

 <bean id="dynamicDataSource"  

        class=" com.simple.db.handle.DiyDBSource">  

        <!-- 通过key-value的形式来关联数据源 -->  

        <property name="targetDataSources">  

            <map key-type="java.lang.String">  

                <entry value-ref="dataSource" key="dataSource"></entry> 

            </map>  

        </property>  

        <property name="defaultTargetDataSource" ref="dataSource" />  

    </bean>

    <!-- 数据源模版配置 -->

<bean id = "jdbcTemplate" class= "org.springframework.jdbc.core.JdbcTemplate">

<!—-注入动态数据源(不使用可配置默认dataSource)-->

        <property name = "dataSource" ref="dynamicDataSource"/>   

</bean>

<bean id = "jdbcHandle" class= "com.simple.db.handle.JdbcHandle"> 

<!—-注入Spring模版-->

        <property name ="jdbcTemplate" ref="jdbcTemplate"/>

</bean>

<!—配置动态数据源切面-->

<bean id="diySourceAspect" class=" com.simple.db.aspect.DBAspect ">

</bean>

<aop:config>

<aop:aspect id="diySourceAop" ref="diySourceAspect">

<aop:pointcut id=" dbPointcut"

expression="@annotation(com.simple.db.annotation. DBSource) " />

<aop:around method="DBMonitor" pointcut-ref="dbPointcut"/>

</aop:aspect>

</aop:config>

一、 版权所有

作者:WebSOS

反馈邮箱:644556636@qq.com

 

Simple-Edbc

选择将代码托管在码云
你还在等什么

可能是中国最大最好的代码托管平台


大家对 Simple-Edbc 的评论 (全部 1 条评论)
{{repayCom.userName}}
Coody
很轻量的一套ORM
顶部