草庐IT

java - 对使用 Spring JDBC 的 DAO 类进行单元测试

我有几个DAO对象用于从数据库中检索信息,我真的想为它们编写一些自动化测试,但我很难弄清楚如何去做。我正在使用Spring的JdbcTemplate运行实际查询(通过准备好的语句)并将结果映射到模型对象(通过RowMapper类)。如果我要编写单元测试,我不确定我会/应该如何模拟对象。例如,由于只有读取,我会使用实际的数据库连接,而不是模拟jdbcTemplate,但我不确定这是否正确。这是批处理中最简单的DAO的(简化)代码:/***Implementationofthe{@linkBusinessSegmentDAO}interfaceusingJDBC.*/publicclass

java - 对使用 Spring JDBC 的 DAO 类进行单元测试

我有几个DAO对象用于从数据库中检索信息,我真的想为它们编写一些自动化测试,但我很难弄清楚如何去做。我正在使用Spring的JdbcTemplate运行实际查询(通过准备好的语句)并将结果映射到模型对象(通过RowMapper类)。如果我要编写单元测试,我不确定我会/应该如何模拟对象。例如,由于只有读取,我会使用实际的数据库连接,而不是模拟jdbcTemplate,但我不确定这是否正确。这是批处理中最简单的DAO的(简化)代码:/***Implementationofthe{@linkBusinessSegmentDAO}interfaceusingJDBC.*/publicclass

hibernate - Spring+Hibernate,Autowire sessionFactory 到 hibernate DAO

我有一个HibernateDAO,根据HibernateAPI3和Spring3.x,我只使用了一个sessionFactory和NOT一个HibernateDaoSupport+getHibernateTemplate()-我希望这是一个不错的选择...-现在我的目标是使用注释将sessionFactory自动连接到我的DAO中。在我的spring.xml我有这个:在数据包里面我有我所有的DAO和服务类。这是我的简单HibernateDao:@RepositorypublicclassPersonHDAOimplementsPersonDAO{privateSessionFactor

hibernate - Spring+Hibernate,Autowire sessionFactory 到 hibernate DAO

我有一个HibernateDAO,根据HibernateAPI3和Spring3.x,我只使用了一个sessionFactory和NOT一个HibernateDaoSupport+getHibernateTemplate()-我希望这是一个不错的选择...-现在我的目标是使用注释将sessionFactory自动连接到我的DAO中。在我的spring.xml我有这个:在数据包里面我有我所有的DAO和服务类。这是我的简单HibernateDao:@RepositorypublicclassPersonHDAOimplementsPersonDAO{privateSessionFactor

java - 针对 HSQLDB 测试 DAO 的 Spring/Hibernate/Junit 示例

我正在尝试实现一个JUnit测试来检查DAO的功能。(DAO将创建/读取基本的对象/表关系)。我遇到的问题是DAO(对于非测试代码)的持久性是通过使用Spring/Hibernate的内部解决方案完成的,这消除了通常的*.hbm.xml我发现的大多数示例都包含的模板。因此,我在理解如何设置JUnit测试以实现DAO以创建/读取(只是非常基本的功能)到内存中HSQLDB时遇到了一些麻烦。我找到了一些示例,但内部持久性的使用意味着我无法扩展示例显示的某些类(我似乎无法正确设置application-context.xml)。谁能建议我可以查看的任何项目/示例(或任何文档),以进一步了解实现

java - 为什么在 Dao 设计模式或其他设计模式中使用接口(interface)

请参阅以下Dao设计模式的组件:数据访问对象模式或DAO模式用于将低级数据访问API或操作与高级业务服务分开。以下是数据访问对象模式的参与者。数据访问对象接口(interface)-此接口(interface)定义要在模型对象上执行的标准操作。数据访问对象具体类-该类实现上述接口(interface)。该类负责从数据源获取数据,数据源可以是数据库/xml或任何其他存储机制。模型对象或值对象-此对象是简单的POJO,包含get/set方法来存储使用DAO类检索到的数据。当我们有一个具体的类时,为什么我们需要一个INTERFACE,为什么我们不能直接使用它?这可能是一个幼稚的问题,但请帮助

java - 为什么在 Dao 设计模式或其他设计模式中使用接口(interface)

请参阅以下Dao设计模式的组件:数据访问对象模式或DAO模式用于将低级数据访问API或操作与高级业务服务分开。以下是数据访问对象模式的参与者。数据访问对象接口(interface)-此接口(interface)定义要在模型对象上执行的标准操作。数据访问对象具体类-该类实现上述接口(interface)。该类负责从数据源获取数据,数据源可以是数据库/xml或任何其他存储机制。模型对象或值对象-此对象是简单的POJO,包含get/set方法来存储使用DAO类检索到的数据。当我们有一个具体的类时,为什么我们需要一个INTERFACE,为什么我们不能直接使用它?这可能是一个幼稚的问题,但请帮助

java - Spring框架中的DAO和Service层到底是什么?

Spring框架中的DAO和Service层到底是什么?我正在寻找理论上的答案。 最佳答案 就Spring而言,没有区别。按照惯例,您可以用@Repository标记DAO类,用@Service标记服务。前者还做了一些持久层异常翻译。既然您在理论上问:DAO应该执行原始数据库操作并将它们转换为一些更高级别的构造(对象、集合)。服务应该调用DAO并执行业务操作。通常,事务划分是在服务层上执行的,以跨越多个DAO调用。最后,DAO应该从持久性细节中抽象出业务逻辑,理想情况下允许在不更改业务逻辑(服务)的情况下切换持久层。由于持久性提供程

java - Spring框架中的DAO和Service层到底是什么?

Spring框架中的DAO和Service层到底是什么?我正在寻找理论上的答案。 最佳答案 就Spring而言,没有区别。按照惯例,您可以用@Repository标记DAO类,用@Service标记服务。前者还做了一些持久层异常翻译。既然您在理论上问:DAO应该执行原始数据库操作并将它们转换为一些更高级别的构造(对象、集合)。服务应该调用DAO并执行业务操作。通常,事务划分是在服务层上执行的,以跨越多个DAO调用。最后,DAO应该从持久性细节中抽象出业务逻辑,理想情况下允许在不更改业务逻辑(服务)的情况下切换持久层。由于持久性提供程

java - 为什么服务层和 dao 层总是有单一的实现接口(interface)?

我已经工作过/见过一些spring-hibernateWeb应用程序项目,它们的接口(interface)与实际的服务和dao类一样多。我一直认为这两个是拥有这些单一实现接口(interface)的主要原因:Spring可以将实际实现连接为给定类中的依赖项(松散耦合)publicclassPerson{@AutowiredprivateAddressaddress;@AutowiredprivateAccountDetailaccountDetail;publicPerson(Addressaddress,AccountDetailaccountDetail){//constructo