什么是DAO
DAO是Data Access Object数据访问接口,数据访问:故名思义就是与数据库打交道。夹在业务逻辑与数据库资源中间。
DAO的功能:
1. DAO用来封装Data Source的..就比如,Connection conn = DAOFacotry.createConnection()..
就可以把Driver. URL. username, passpword这一些放在DAO中
以后要更改数据库的类型.比如要把MSSQL换成Oracle的话..只需要更改DAOFacory里面的getConnection()里面的Driver.URL.之类的..
2. DAO也是把对数据库的操作(比如最基本的CRUD操作)全部封装在里面..
比如说你要你要插入一个新的用户..那么.在DAO中我们只需要提供一个insertUser(User user)这一个方法就可以了..具体的操作是在DAO中实现的...
那么对于要调用DAO的时候.我们只要知道insertUser(User)是用来插入一个新的用户...而不需要知道是如何实现的。
一般 DAO是与Abstract Factory模式一起来用的...
Factory来建立数据库和定位具体的DAO(比如说是UserDao..CustomerDao..)..一般将getConnection设置为static..也可以把HibernateSessionFactory这一个公共类放在这一AbstractFactory类中去...
|
public class DAOFactory {
private static final SessionFactory sessionFacotory;
// 定义一个TrheadLocal .
static Session currentSession().....
public UserDao getUserDAO() { return new UserDaoImpl(sesssion);}
pulbic OtherDao getOtherDAO() { return new OtherDaoImpl(session);}
......
}
public interface UserDao {
public insertUser(FormBean)
public updateUser(FormBean);
}
然后就实现DAO的接口: (Struts的FormBean...VO来的..)
public class UserDaoImpl implements UserDao {
private Session session;
public UserDaoImpl(Session session){
this.session = session;
}...
public insertUser(FormBean) {
..//..
session.save(UsERPO);
..//..
return FormBean;
}
public FormBean updateUser(FormBean) {
..//..
session.update(UserPO);
..//..
return FormBean;
}
}
最后定义你的PO:
public class UserPO {
String firstname, lastname, password..........
} |
分享到:
相关推荐
浅谈DAO设计模式的理解 DAO(Data Access Object)设计模式是一种常用的软件设计模式,它的主要目的是将业务逻辑与数据库访问相分离,降低耦合性,提高系统的可维护性和扩展性。下面是对DAO设计模式的理解和实现的...
DAO模式的核心理念是将业务逻辑与数据访问层进行解耦,这样即使数据库结构发生变化,只需修改DAO层的实现代码,而无需改动业务逻辑代码,增强了系统的可维护性和可扩展性。 在BBS网站的开发中,通常会面临数据库...
进阶部分,你可以探索如何简化Session的生成,减少手动管理,以及DAO(Data Access Object)的设计模式,这可以提高代码的可复用性和可维护性。同时,深入研究关联映射和继承映射,能够帮助你在数据库设计上实现更...
"浅谈SQL Server数据库访问" 本文主要介绍了Microsoft SQL Server数据库的基本概念和访问方法,讨论了三种常用的数据库访问接口DAO、ODBC和ADO,并提供了一些示例程序来访问SQL Server数据库。此外,本文还介绍了...
通常,这部分会包含数据访问对象(DAO)或者网络请求库,如Retrofit或Volley,用来获取远程数据,以及SQLite数据库或SharedPreferences来处理本地数据存储。 **二、视图(View)** 视图层是用户界面的实现,通常是...
- **M层(Model)**:在这个例子中,可能包含一个`Person`类,用于封装用户ID和密码,以及一个`DAO`(数据访问对象)接口,用于与数据库交互验证用户身份。`DAOFactory`工厂类用于创建`PersonDAO`实例,以便在业务...
在 Spring 中整合 Hibernate,主要是为了利用 Spring 提供的事务管理和 DAO 支持,提高代码的可维护性和可扩展性。Spring 通过配置文件(通常是 XML 格式)来管理 Bean,包括 Hibernate 的 SessionFactory 和 ...
Yii适合开发大型Web应用,它不仅提供了丰富的功能,比如DAO/ActiveRecord、缓存、安全性和主题化等,还拥有详尽的教程和文档。Yii的优点还包括社区活跃、对UTF-8的支持、以及对PHP4和PHP5的兼容性。但是,Yii在对...
5. 编写DAO(Data Access Object)层,利用Hibernate API进行数据操作。 6. 创建JSP页面,使用Struts标签库展示数据和处理用户输入。 【参考资料与学习资源】 学习Struts和Hibernate的开发者可以通过官方文档、在线...
在实际开发中,为了提高代码的可维护性和可复用性,我们通常会使用DAO(Data Access Object)模式来封装这些数据库操作。此外,ORM(Object-Relational Mapping)框架如Hibernate和MyBatis也可以简化数据库操作,...
三层架构是一种软件设计模式,它将应用程序分为表现层(UI)、业务逻辑层(BLL)和数据访问层(DAL)。表现层负责与用户交互,业务逻辑层处理业务规则和流程,而数据访问层则负责与数据库的交互。这种分层设计使得...
在Asp.net开发中,多层架构是一种常见的设计模式,旨在提高代码的可维护性、可扩展性和可重用性。这种架构将应用程序分为数据层、业务逻辑层(或称逻辑层)和表示层,每个层都有明确的职责,使得各层之间解耦合。 1...
DAO是一种设计模式,它将数据访问逻辑从业务逻辑中抽象出来,使得业务逻辑不与特定的数据源绑定。DAO通常封装原生数据库访问接口,以对象的方式提供数据库访问能力。在许多PHP框架中,如YII,DAO是通过封装PDO实现的...
6. ODBCDirect:DAO的新模式,适用于远程数据源访问。 7. OLEDB:底层数据访问接口,用于开发面向ADO的第三方驱动或C++组件。 8. 远程数据访问控件(RDC):用于RDO数据绑定,将结果集输出到数据源控件。 9. 远程数据...
在现代Web开发中,Model-View-Controller(MVC)架构模式已经成为标准,SpringMVC、Spring和Hibernate的组合更是广泛应用于大型企业级项目。本文将深入探讨如何搭建基于SpringMVC、Spring3和Hibernate4的开发环境。 ...