第七章 DAO模式
一.JDBC的封装
1.JDBC的封装:
DAO位于业务逻辑和持久化数据之间,实现对持久化数据的访问。将数据库都封装起来,对外提供相应的接口
2.DAO模式的作用:
1.隔离业务逻辑代码和数据访问代码
2.隔离不同数据库的实现
3.DAO模式的组成部分:
1.DAO接口
2.DAO实现类
3.实体类
4.数据库连接和关闭工具类
二.Properties类
Properties类位于java.util包中,继承自Hashtable类,常用的方法有:
方法 |
作用 |
String getProperty(String key) |
用指定的键在此属性列表中搜索属性,通过参数key得到所对用的值. |
Object setProperty(String key,String values) |
调用Hashtable的方法put,通过调用基类的put()方法来设置键-值对 |
Void load(InputStream inStream) |
从输入流中读取属性列表(键和元素对),通过对指定文件进行装载获取该文件中所以键-值对 |
Void clear() |
清除所装载的键-值对,该方法由基类Hashtable提供. |
例: public class BaseDao {
private static String driver;//数据库驱动字符串
private static String url;//连接url字符串
private static String user;//数据库用户名
private static String password ;//用户名
Connection con = null;//数据库连接对象
static{//静止代码块,在类加载的时候执行
initial();
};
public static void initial(){
Properties parms=new Properties();
String configFile="database.properties";//配置文件的路径
//加载配置文件到输入流中
InputStream is=BaseDao.class.getClassLoader().getResourceAsStream(configFile);
try {
//从输入流中读取属性列表
parms.load(is);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//获取对应的值
driver=parms.getProperty("driver");
url=parms.getProperty("url");
user=parms.getProperty("user");
password=parms.getProperty("password");
}
}