`
hngmduyi
  • 浏览: 335116 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

泛型数据访问对象模式

阅读更多
GenericDAO
/**
 * 所有DAO都共享的CRUD(create, read, update, delete) 基本数据访问操作的定义
 */
public interface GenericDAO<T, ID extends Serializable,E extends Exception> {

	/**根据ID查询唯一对象*/
    T findById(ID id) throws E;
    
   /**  查询所有对象     */
    List<T> searchAll()  throws E;
    
    /** 条件查询*/
    List<T> search(T condition)  throws E;
    
    /**
     * 插入或修改
     */
    public void save(T entity) throws E;
    
    /**删除*/
    void delete(ID id)  throws E;
    
    void deleteBat(ID[] ids)  throws E;
    
}

IEmpDao

public interface IEmpDao extends GenericDAO<Employee, Integer,SQLException> {

}

EmpDao,//在方法体里面写上自己的具体方法实现即可!
public class EmpDao implements IEmpDao {

	public void delete(Integer id) throws SQLException {
	}

	public void deleteBat(Integer[] id) throws SQLException {
	}

	public Employee findById(Integer id) throws SQLException {
		return null;
	}

	public void save(Employee entity) throws SQLException {

	}

	public List<Employee> search(Employee condition) throws SQLException {
		return null;
	}

	public List<Employee> searchAll() throws SQLException {
		return null;
	}
}
分享到:
评论

相关推荐

    C++设计新思维:泛型编程与设计模式之应用

    3. 行为型模式:如策略模式(Strategy)、观察者模式(Observer)、访问者模式(Visitor)等,关注对象之间的交互和职责分配。 三、多线程编程 在《C++面向对象多线程编程.pdf》中,可能涵盖了C++11引入的多线程...

    EF,MVC使用泛型仓储模式和工作单元实现增删查改

    本教程将探讨如何在EF和MVC环境下,利用泛型仓储模式和工作单元模式来实现数据访问层的增删查改操作。 首先,了解仓储模式。仓储模式是Martin Fowler在其著作《企业应用架构模式》中提出的一种设计模式,它提供了一...

    抽象工厂 SQL 和Access 利用泛型读取表中数据 WCF发布出去

    在"利用泛型读取表中数据"的情境下,开发人员可能定义了一个泛型类或方法,可以处理任何类型的数据,无论是整数、字符串还是自定义对象。这样做使得代码更灵活,能适应多种数据类型,同时减少类型转换的必要。 WCF...

    数据工厂泛型类

    在这种情况下,数据工厂泛型类可能包含一个工厂方法,用于根据指定的数据库类型创建相应的数据访问对象。 在实际应用中,可能会有以下应用场景: 1. 数据迁移:从一个数据库系统迁移到另一个,如从Oracle迁移到SQL...

    泛型工具类

    在描述中提及的“dao的超类”,即数据访问对象(Data Access Object,简称DAO)模式中的基类或抽象类。DAO模式是软件架构设计中常用的一种模式,用于将数据访问逻辑封装在独立的对象中,从而隔离业务逻辑层与数据...

    SSH泛型代码实例

    - **数据访问**:在Spring Data JPA或MyBatis等持久层框架中,使用泛型定义Repository接口,可以实现对特定类型的实体进行操作,例如`List&lt;User&gt; findByUsername(String username)`。 2. **Struts框架中的泛型** ...

    Asp.Net 泛型 三层

    三层架构是一种常见的软件设计模式,它将应用程序分为三个逻辑层:表示层(UI)、业务逻辑层(BLL)和数据访问层(DAL)。这种分层设计有助于提高代码的可维护性、可扩展性和模块化。在Asp.Net中,三层架构的应用...

    泛型dao

    在Java编程语言中,"泛型DAO"(Generic DAO)是一种设计模式,它允许开发者创建可重用的数据访问对象(DAOs),以处理多种不同类型的实体对象,而无需为每种对象编写单独的DAO实现。这种方法提高了代码的复用性和可...

    ssh通用泛型DAO

    总的来说,"ssh通用泛型DAO"是一种设计模式,旨在简化SSH框架下的数据访问层开发,提高代码复用性,减少重复工作,同时通过泛型提供类型安全的保障。理解和熟练运用这一模式,能够有效地提升Java Web应用的开发效率...

    再发一个基于Hibernate+Spring 泛型GenericDao 的工程源码.

    标题中的“基于Hibernate+Spring 泛型GenericDao”的工程源码指的是一个整合了Spring框架和Hibernate ORM技术的项目,其中使用了泛型设计模式来实现数据访问对象(DAO)。这个项目可能旨在提供一种通用、可复用且...

    泛型实体层三层架构示例

    泛型实体层三层架构是一种常见的软件设计模式,广泛应用于企业级应用开发中,它将应用程序分为数据访问层(DAL)、模型层(Model)和业务逻辑层(BLL)这三个主要部分,以实现代码的模块化和可重用性。在这个示例中...

    java泛型BaseDao与BaseService

    BaseDao是数据访问对象(DAO)的基类,通常包含了对数据库的基本操作,如增删查改。在Java中,我们可以使用泛型来让BaseDao更加通用。例如,我们可以声明一个泛型接口`BaseDao&lt;T&gt;`,其中T代表我们将要操作的实体类型...

    JAVA学习笔试(数据基础+泛型编程)-适合小白

    本笔记主要涵盖了数据基础和泛型编程两大主题,同时也涉及到类和对象、数据类型、类的初始化和加载以及单例模式等多个知识点。 1. **数据基础** - **形参实参的使用**:在函数调用时,形参是方法定义中的参数,而...

    Delphi 泛型 接口约束的实例

    3. **设计模式实现**:接口约束常用于实现策略模式或访问者模式等设计模式,使得代码更加灵活和易于扩展。 在“IntfConstraint”实例中,我们可以预期它会包含一个或多个泛型类或方法,其中定义了接口约束。例如: ...

    List泛型和DataSet

    // 访问数据 DataTable customersTable = dataSet.Tables["Customers"]; foreach (DataRow row in customersTable.Rows) { Console.WriteLine(row["CustomerID"]); } ``` 对比`List泛型`和`DataSet`,前者更适用于...

    java软件开发dao层泛型模式

    泛型DAO模式是一种通用的数据访问层设计模式,它通过使用Java泛型来提供对不同类型的对象进行统一的操作接口。这种模式使得开发者可以在不了解具体实体类的情况下实现对数据库的基本CRUD(Create、Read、Update、...

    泛型程序设计与STL

    Traits技术是泛型编程中的一种模式,它定义了关于某种类型的信息,如类型本身的特性或者类型上可用的操作。Traits通常用于解决某些类型缺乏所需特性的局限性,使得算法能够更加灵活地适应不同的数据类型。 #### ...

    数据结构与算法(面向对象的C++设计模式)

    《数据结构与算法(面向对象的C++设计模式)》一书深入探讨了软件开发中的核心要素:数据结构和算法,以及如何利用面向对象的C++设计模式来优化这些元素。书中不仅涵盖了基础理论,还提供了实践应用的指导,旨在帮助...

Global site tag (gtag.js) - Google Analytics