SeQuaLite数据持久层框架
SeQuaLite是一个轻量级,java数据存取框架(整个jar包不到80k)。支持CRUD操作。支持对象懒加载,通过创建代理对象或空对象来代替,等有需要时再加载。支持级联保存与级联删除操作。SeQuaLite使用 prepared statement来执行查询,因此它更快,更安全。使用SeQuaLite能够避免SQL注入安全威胁。SeQuaLite能够创建和执行复杂的查询/DML,并支持分页。
SeQuaLite 的结构框图:
SeQuaLite 全局配置示例:
sample.jdbc.driver=org.gjt.mm.mysql.Driver
sample.jdbc.url=jdbc:mysql://localhost:3306/test
sample.jdbc.user=root
sample.jdbc.password=admin
sample.jdbc.autocommit=true
sample.pool.maxsize=50
sample.pool.increment=5
sample.pool.monitor.interval=5000
Bean 的映射配置实例:
<class name="Customer" table-name="customer">
<field name="id" type="java.lang.Long" column-name="ID"/>
<field name="firstName" type="java.lang.String" column-name="FIRST_NAME"/>
<field name="lastName" type="java.lang.String" column-name="LAST_NAME"/>
<field name="createDate" type="java.util.Date" column-name="CREATE_DATE"/>
<field name="contactNumber" type="java.lang.String" column-name="CONTACT_NUMBER"/>
<primary-key column-name="ID" auto-increment="true">
<sequence-sql>SELECT LAST_INSERT_ID() </sequence-sql>
</primary-key>
<child name="address" type="Address" column-name="ID" child-column-name="CUSTOMER_ID" multiplicity="many" lazy-load="proxy" on-save-cascade="true" on-delete-cascade="true" index="0"/>
<sql name="default" type="find">
SELECT * FROM customer
</sql>
</class>