YMP在線手冊
/ JDBC持久化概述及模塊配置
JDBC持久化概述及模塊配置
JDBC持久化模塊針對關(guān)系型數(shù)據(jù)庫(RDBMS)數(shù)據(jù)存取的一套簡單解決方案,主要關(guān)注數(shù)據(jù)存取的效率、易用性和透明,其具備以下功能特征:
- 基于JDBC框架API進(jìn)行輕量封裝,結(jié)構(gòu)簡單、便于開發(fā)、調(diào)試和維護(hù);
- 優(yōu)化批量數(shù)據(jù)更新、標(biāo)準(zhǔn)化結(jié)果集、預(yù)編譯SQL語句處理;
- 支持單實(shí)體ORM操作,無需編寫SQL語句;
- 提供腳手架工具,快速生成數(shù)據(jù)實(shí)體類,支持鏈?zhǔn)秸{(diào)用;
- 支持通過存儲器注解自定義SQL語句或從配置文件中加載SQL并自動執(zhí)行;
- 支持結(jié)果集與值對象的自動裝配,支持自定義裝配規(guī)則;
- 支持多數(shù)據(jù)源,默認(rèn)支持C3P0、DBCP、JNDI連接池配置,支持?jǐn)?shù)據(jù)源擴(kuò)展;
- 支持多種數(shù)據(jù)庫(如:Oracle、MySQL、SQLServer等);
- 支持面向?qū)ο蟮臄?shù)據(jù)庫查詢封裝,有助于減少或降低程序編譯期錯誤;
- 支持?jǐn)?shù)據(jù)庫事務(wù)嵌套;
- 支持?jǐn)?shù)據(jù)庫存儲過程*;
Maven包依賴
<dependency> <groupId>net.ymate.platform</groupId> <artifactId>ymate-platform-persistence-jdbc</artifactId> <version>2.0-SNAPSHOT</version> </dependency>
注:在項(xiàng)目的pom.xml中添加上述配置,該模塊已經(jīng)默認(rèn)引入核心包及持久化基礎(chǔ)包依賴,無需重復(fù)配置。
模塊初始化配置
#------------------------------------- # JDBC持久化模塊初始化參數(shù) #------------------------------------- # 默認(rèn)數(shù)據(jù)源名稱,默認(rèn)值為default ymp.configs.persistence.jdbc.ds_default_name= # 數(shù)據(jù)源列表,多個數(shù)據(jù)源名稱間用'|'分隔,默認(rèn)為default ymp.configs.persistence.jdbc.ds_name_list= # 是否顯示執(zhí)行的SQL語句,默認(rèn)為false ymp.configs.persistence.jdbc.ds.default.show_sql= # 數(shù)據(jù)庫表前綴名稱,默認(rèn)為空 ymp.configs.persistence.jdbc.ds.default.table_prefix= # 數(shù)據(jù)源適配器,可選值為已知適配器名稱或自定義適配置類名稱,默認(rèn)為default,目前支持已知適配器[default|dbcp|c3p0|jndi|...] ymp.configs.persistence.jdbc.ds.default.adapter_class= # 數(shù)據(jù)庫類型,可選參數(shù),默認(rèn)值將通過連接字符串分析獲得,目前支持[mysql|oracle|sqlserver|db2|sqlite|postgresql|hsqldb|h2] ymp.configs.persistence.jdbc.ds.default.type= # 數(shù)據(jù)庫方言,可選參數(shù),自定義方言將覆蓋默認(rèn)配置 ymp.configs.persistence.jdbc.ds.default.dialect_class= # 數(shù)據(jù)庫連接驅(qū)動,可選參數(shù),框架默認(rèn)將根據(jù)數(shù)據(jù)庫類型進(jìn)行自動匹配 ymp.configs.persistence.jdbc.ds.default.driver_class= # 數(shù)據(jù)庫連接字符串,必填參數(shù) ymp.configs.persistence.jdbc.ds.default.connection_url= # 數(shù)據(jù)庫訪問用戶名稱,必填參數(shù) ymp.configs.persistence.jdbc.ds.default.username= # 數(shù)據(jù)庫訪問密碼,可選參數(shù),經(jīng)過默認(rèn)密碼處理器加密后的admin字符串為wRI2rASW58E ymp.configs.persistence.jdbc.ds.default.password= # 數(shù)據(jù)庫訪問密碼是否已加密,默認(rèn)為false ymp.configs.persistence.jdbc.ds.default.password_encrypted= # 數(shù)據(jù)庫密碼處理器,可選參數(shù),用于對已加密數(shù)據(jù)庫訪問密碼進(jìn)行解密,默認(rèn)為空 ymp.configs.persistence.jdbc.ds.default.password_class=
配置參數(shù)補(bǔ)充說明:
數(shù)據(jù)源的數(shù)據(jù)庫連接字符串和用戶名是必填項(xiàng),其它均為可選參數(shù),最簡配置如下:
ymp.configs.persistence.jdbc.ds.default.connection_url=jdbc:mysql://localhost:3306/mydb
ymp.configs.persistence.jdbc.ds.default.username=root
為了避免明文密碼出現(xiàn)在配置文件中,YMP框架提供了默認(rèn)的數(shù)據(jù)庫密碼處理器,或者通過IPasswordProcessor接口自行實(shí)現(xiàn);
net.ymate.platform.core.support.impl.DefaultPasswordProcessor