使用JadePool很简单,分三步实现。
第一步:建立数据库连接,JadePool支持两种数据库连接方式
1、通过db.xml配置数据库连接信息
2、通过Java代码建立数据库连接
两种方式,可任选一种
第二步:在以下例举的四个类中选择一款合适的Jdml工具,大多数情况下,推荐使用Jade
1、ProcessVO //用于事务型数据库,需要用户打开并关闭事务、处理异常
2、Jade //用于事务型数据库,已经处理了异常,默认打开了事务,调用j.commit();执行并关闭事务。
3、Access //用于非事务型数据库,需要用户处理异常
4、Base //用于非事务型数据库,已经处理异常
第三步:创建Jade对象,调用Jade方法
举例:
第一步:建立数据库连接
方式一、配置db.xml数据库连接信息
db.xml文件应当保存在应用程序的classes/META-INF/目录下,与Hibernate、JPA的数据库连接文件的位置相同。注意:classes/META-INF对应软件工程中的java源文件的根目录下的/META-INF目录,在创建软件工程时,将db.xml文件放入此目录中。
1、完整的db.xml文件样例:
[html]
<?xml version="1.0" encoding="GBK"?>
<!--
Document : db.xml
Created on : 2009-06-25 00:21:48
Author : hkm
Description : Purpose of the document as following.
-->
<!DOCTYPE db [
<!ELEMENT db (resource|password|user|driver|url)*>
<!ELEMENT url (#PCDATA)>
<!ELEMENT driver (#PCDATA)>
<!ELEMENT user (#PCDATA)>
<!ELEMENT password (#PCDATA)>
<!ELEMENT resource (#PCDATA)>
]>
<db>
<url>jdbc:sqlserver://127.0.0.1\\dbo:1436;databaseName=javafaces2012</url>
<driver>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver>
<user>root</user>
<password>123</password>
<resource>java:comp/env/jdbc/hkm_javafaces2012</resource>
</db>
如果配置了数据源,简洁的写法是:
[html]
<?xml version="1.0" encoding="GBK"?>
<db>
<url></url>
<driver></driver>
<user></user>
<password></password>
<resource>java:comp/env/jdbc/hkm_javafaces2012</resource>
</db>
如果没有配置数据源,简洁的写法是:
[html]
<?xml version="1.0" encoding="GBK"?>
<db>
<url>jdbc:sqlserver://127.0.0.1\\dbo:1436;databaseName=javafaces2012</url>
<driver>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver>
<user>root</user>
<password>123</password>
<resource></resource>
</db>
如果配置了db.xml文件,可以这样创建Jade对象:
Jade j=new Jade();
j.方法();//执行各种CRUD操作的方法
j.commit();
方式二、通过Java代码建立数据库连接,例如:
[java]
public static synchronized Connection getCon() {
Connection con = null;
String url = "jdbc:sqlserver://127.0.0.1\\dbo:1436;databaseName=javafaces2012";
String userName = "root";
String password = "123";
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
con = DriverManager.getConnection(url, userName, password);
} catch (SQLException ex1) {
ex1.printStackTrace();
} catch (ClassNotFoundException ex) {
ex.printStackTrace();
}
return con;
}
此时,创建Jade对象的方法是这样
Jade j = new Jade(getCon());
j.方法();//执行各种CRUD操作的方法
j.commit();
第二步:创建Jdml对象
如果使用db.xml配置的连接,调用默认的构造函数创建对象,如:
ProcessVO pvo=new ProcessVO();
Jade j=new Jade();
Access a=new Access();
Base b=new Base();
如果使用Jave代码配置的连接,调用带参数的构造函数创建对象,如:
ProcessVO pvo=new ProcessVO(getCon());
Jade j=new Jade(getCon());
Access a=new Access(getCon());
Base b=new Base(getCon());
第三步:调用dml方法:
[java]
Jade j=new Jade();
boolean b = j.executeSqlFile("d:\\insertRecord.sql"); //执行sql文件
String s0 = j.queryDbInfo();//查询数据库的结构信息
String s1 = j.queryTableInfo(tableName);//查询数据库表的结构信息
int num0=j.insert(tableName, list);//插入一组记录
int num1=j.update(tableName, list);//更新一组记录
Object keyValue=j.saveOne(tableName, m);//插入或更新一条记录,返回主键
int num2=j.save(tableName, m);//插入或更新一条记录,返回保存的记录数
Map m=j.queryOne(querySql);//可以是任意复杂的查询语句
List<Map> list=j.query(querySql);//可以是任意复杂的查询语句
int num3=j.delete(deleteSql);//sql删除语句
j.commit();//事务提交并关闭连接
j.cancel();//事务回滚,并关闭连接