我是這樣理解DAO的,對嗎?
我在寫一個WEB的輕型應用,想應用DAO,我想DAO模式的主要目的是,使具體的資料庫SQL語句與應用分離,我是這樣用的,是不是DAO模式
1.INewsDao 介面
public interface INewsDao {
public List getNews(int count,Date today);
...
}
2.NewsDaoOracleImpl 是對應Oracle資料庫的一個實現
public class NewsDaoOracleImpl implements INewsDao {
private static NewsHome home=new NewsHome(); //EJB或JDO物件
public List getNews(int count, Date today) {
String sql="select * from news where ...";
List myList=home.getNews(sql); //EJB或JDO呼叫
return myList;
}
}
3.NewsDaoFactory 類工廠public class NewsDaoFactory {
//返回INewsDao介面型別
public static INewsDao getDao() {
INewsDao newdao = null;
try {
newdao = (INewsDao) Class.forName(
"my.dao.NewsDaoOracleImpl")
.newInstance();
} catch (ClassNotFoundException ce) {
System.out.println("get News Dao ClassNot Found");
ce.printStackTrace();
System.out.println("get News Dao ClassNot Found end...");
} catch (Exception ce) {
System.out.println("get News Dao Exception");
ce.printStackTrace();
System.out.println("get News Dao Exception end...");
}
return newdao;
}
}
多謝!
1.INewsDao 介面
public interface INewsDao {
public List getNews(int count,Date today);
...
}
2.NewsDaoOracleImpl 是對應Oracle資料庫的一個實現
public class NewsDaoOracleImpl implements INewsDao {
private static NewsHome home=new NewsHome(); //EJB或JDO物件
public List getNews(int count, Date today) {
String sql="select * from news where ...";
List myList=home.getNews(sql); //EJB或JDO呼叫
return myList;
}
}
3.NewsDaoFactory 類工廠public class NewsDaoFactory {
//返回INewsDao介面型別
public static INewsDao getDao() {
INewsDao newdao = null;
try {
newdao = (INewsDao) Class.forName(
"my.dao.NewsDaoOracleImpl")
.newInstance();
} catch (ClassNotFoundException ce) {
System.out.println("get News Dao ClassNot Found");
ce.printStackTrace();
System.out.println("get News Dao ClassNot Found end...");
} catch (Exception ce) {
System.out.println("get News Dao Exception");
ce.printStackTrace();
System.out.println("get News Dao Exception end...");
}
return newdao;
}
}
多謝!
相關文章
- 我是這樣理解EventLoop的OOP
- 設計模式之Mediator(中介者)這樣理解 對嗎?設計模式
- Mr Banq, 我是這樣做java的,您覺的正常嗎?或者說合理嗎?Java
- 我是這樣學習前端的前端
- 你知道的反射是這樣嗎?(二)反射
- 為什麼要這樣設計,還是我理解錯誤
- 這些屬性的含義,我的理解對嗎?(jdbc2.0或hibernate)JDBC
- 關於強化學習的事後經驗回放,我是這樣理解的強化學習
- 向高手請教?怎樣實現這樣的DAO模式模式
- 我對軟體工程這門課的理解軟體工程
- 渲染大量資料我是這樣操作的
- 我是這樣成為年薪30萬的前端!前端
- 為了落地DDD,我是這樣“PUA”大家的
- 對於程式設計師說的話 專案經理們是這樣理解的程式設計師
- 我對抽象的理解抽象
- 我對引擎的理解
- 我對SNS的理解
- Flutter Engine 編譯 —— 我是這樣讀原始碼的Flutter編譯原始碼
- 封裝element-ui表格,我是這樣做的封裝UI
- 面試大廠,我是這樣準備專案的面試
- 我是這樣才除錯好nodeclub原始碼的除錯原始碼
- 在面試官面前我是這樣介紹CAS的面試
- 【MySQL】我這樣分析MySQL中的事務,面試官對我刮目相看!!MySql面試
- 前端面試題:這是我理解的MVVM,請注意查收~~前端面試題MVVM
- 老闆今天問我為什麼公司的資料庫這麼爛,我是這樣回答的......資料庫
- 據我瞭解免費OA系統是這樣的
- 1.對Java平臺的理解。“Java是解釋執行”對嗎Java
- 假如我是面試官,我會這樣虐你面試
- 『假如我是面試官』RabbitMQ我會這樣問面試MQ
- 我對JavaScript物件的理解JavaScript物件
- 我對聚合根的理解
- 談談你對 Java 平臺的理解?“Java 是解釋執行”,這句話正確嗎?Java
- 最近面試遇到的種種應聘者,你是這樣的嗎?面試
- 深度解析:智慧手錶正在死亡 真的是這樣嗎?
- 我理解的Ajax,與你相同嗎?
- ⚡️ 省錢 90%!我是這樣優化網站圖片的優化網站
- “3遍讀書法” 我是這樣自學程式設計的程式設計
- GitHub 工程師:我眼中的理想上司是這樣子的Github工程師