public class DaoUp extends Object
DaoUp.me().init(new File("db.properties"));
Dao dao = DaoUp.me().dao();
dao.insert(.......);
// 注意,不是每次用完Dao就关,是整个程序关闭的时候才关!!
// 程序结束前关闭相关资源.
DaoUp.me().close();
请参阅test源码中的DaoUpTest获取Dao的入门技巧.Modifier and Type | Field and Description |
---|---|
protected boolean |
autoCloseWhenFinalize
如果本对象被GC,是否触发自动关闭
|
protected Dao |
dao
Dao对象
|
protected DataSource |
dataSource
连接池
|
protected static Class<?> |
druidFactoryClass
Druid数据源的工厂方法类
|
protected static DaoUp |
me
内置单例
|
protected String |
name
当前DaoUp的名称
|
Modifier | Constructor and Description |
---|---|
protected |
DaoUp(String name)
需要新建多个DaoUp,请继承DaoUp,从而暴露构造方法或使用工厂方法!!
|
Modifier and Type | Method and Description |
---|---|
protected DataSource |
buildDataSource(Properties props)
构建DataSource,子类可覆盖.
|
void |
close()
关闭本DaoUp,将关闭DataSource并将dao和dataSource置为null!!!
只能在程序关闭时调用,严禁在每次Dao操作后调用!!
|
Dao |
dao()
返回所持有的Dao实例,如果DaoUp还没初始化或已经关闭,这里会返回null
|
protected void |
finalize()
如果被GC,主动触发关闭,除非autoCloseWhenFinalize为false
|
DataSource |
getDataSource()
获取数据源, 如果DaoUp还没初始化或已经关闭,这里会返回null
|
void |
init(File f)
从一个文件读取数据库配置
|
void |
init(InputStream in)
从一个流读取数据库配置
|
void |
init(Properties props)
给定一个Properties配置,不能为null!!!! 最起码要包含一个叫url的参数!!!
|
void |
init(String name)
从classpath或当前目录下查找配置文件来进行初始化
|
static DaoUp |
me()
获取内置的DaoUp单例
|
void |
setAutoCloseWhenFinalize(boolean autoCloseWhenFinalize)
设置是否在本对象被GC时自动关闭相关资源.
若要设置为false, 请慎重考虑,因为绝大部分情况下设置为true并不能解决您当前遇到的问题!!
DaoUp类不是设计为即用即抛的!!!而是设计为单例模式的!!!!!!!
如果是遇到DataSource is closed之类的异常, 在考虑使用本配置前请先检讨代码!!!
|
void |
setDao(Dao dao)
主动设置Dao实例
|
void |
setDataSource(DataSource dataSource)
主动设置数据源(连接池)
|
protected static DaoUp me
protected static Class<?> druidFactoryClass
protected boolean autoCloseWhenFinalize
protected Dao dao
protected DataSource dataSource
protected String name
protected DaoUp(String name)
public static DaoUp me()
public Dao dao()
public DataSource getDataSource()
public void setDataSource(DataSource dataSource)
dataSource
- 数据源(连接池)public void setDao(Dao dao)
dao
- Dao实例public void init(String name) throws IOException
name
- IOException
public void init(File f) throws IOException
f
- 配置文件IOException
- 文件不可读取时抛出异常public void init(InputStream in) throws IOException
in
- 输入流,包含配置信息IOException
- 读取失败是抛出异常public void init(Properties props)
props
- 配置信息protected DataSource buildDataSource(Properties props)
props
- 配置信息public void close()
public void setAutoCloseWhenFinalize(boolean autoCloseWhenFinalize)
autoCloseWhenFinalize
- 是否自动关闭资源Copyright © 2017. All rights reserved.