tangyuan
1. 項(xiàng)目介紹
TangYuan是一個(gè)基于Java的持久層框架崎逃。提供的持久層框架包括SQL Maps和Data Access Objects(DAO)
2. 項(xiàng)目特性
- 數(shù)據(jù)源相關(guān)
支持多數(shù)據(jù)源,讓讀寫分離睛琳,多數(shù)據(jù)庫的應(yīng)用變得簡(jiǎn)單。支持?jǐn)?shù)據(jù)源組飞醉,在分庫分表的大數(shù)據(jù)量應(yīng)用環(huán)境將更加方便奈懒。
- 事務(wù)相關(guān)
原生的支持事務(wù)的傳播和隔離,無需依托第三方框架邪乍,同時(shí)支持多數(shù)據(jù)源的JDBC事務(wù)降狠。
- 緩存相關(guān)
原生提供多種緩存的的支持,并同時(shí)支持多種緩存的混合使用庇楞。
- 數(shù)據(jù)映射相關(guān)
支持用用戶自定義的配置榜配,同時(shí)提供提供基于規(guī)則的映射配置。
- 分庫分表支持
原生的支持基于Hash吕晌、Range蛋褥、Mod、Random模式的分庫分表設(shè)置睛驳,同時(shí)支持用戶自定義的分庫分表策略烙心。
- 數(shù)據(jù)訪問相關(guān)
支持單條的SQL語句訪問,同時(shí)并支持復(fù)雜的組合SQL語句訪問乏沸,讓數(shù)據(jù)庫的應(yīng)用開發(fā)更為高效淫茵、簡(jiǎn)單。
- Mongo訪問相關(guān)
3. 系統(tǒng)架構(gòu)
4. 版本和Maven依賴
<dependency>
<groupId>org.xson</groupId>
<artifactId>tangyuan</artifactId>
<version>1.0.0</version>
</dependency>
5. 代碼片段
<sql-service id="updateProjectP2" dsKey="writetvr" txRef="tx_02">
<if test="{through} == 2">
<update rowCount="{nCount}">
update project set
project_state = 25,
audit_time = #{audit_time|now()},
update_time = #{update_time|now()}
where
project_sn = #{project_sn} AND
project_ctrl_state = 1 AND
project_state = 20
</update>
<exception test="{nCount} != 1" code="-1" message="項(xiàng)目審核失敗"/>
<selectOne resultKey="{project}">
select * from project where project_sn = #{project_sn}
</selectOne>
<if test="{project.reservation_mode} == 2">
<insert>
INSERT INTO project_apply (
project_sn, provider_id, provider_name, bidding_amount,
create_time, apply_state, reservation_state
) VALUES (
#{project_sn}, #{project.provider_id}, #{project.provider_name}, #{bidding_amount|0},
#{create_time|now()}, 2, 10
)
</insert>
</if>
</if>
<else>
<update rowCount="{nCount}">
update project set
task_ctrl_state = 2,
audit_no_time = #{audit_no_time|now()},
update_time = #{update_time|now()}
where
project_sn = #{project_sn} AND
task_ctrl_state = 1
</update>
</else>
</sql-service>
6. 使用教程
7. 聯(lián)系交流
- QQ群:518522232 *請(qǐng)備注關(guān)注的項(xiàng)目
- 郵箱:xson_org@126.com
- 項(xiàng)目地址: https://github.com/xsonorg/tangyuan