`

配置DAO代理 一个小错误

阅读更多

在配置DAO代理的时候

 

<!-- 定义DAO代理 -->
 <bean id="addressDAOProxy"
   class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
  <property name="transactionManager">
   <ref bean="transactionManager" />
  </property>
  <property name="target">
   <ref local="addressDAO" />
  </property>
  <property name="transactionAttributes">
   <props>
    <prop key="insert*">PROPAGATION_REQUIRED</prop>
    <prop key="update*">PROPAGATION_REQUIRED</prop>
    <prop key="delete*">PROPAGATION_REQUIRED</prop>
    <prop key="*">PROPAGATION_REQUIRED,readOnly</prop>
   </props>
  </property>
 </bean> 

 

出现如下错误:

 

Referenced bean 'addressDAO' not found

cvc-id.1: There is no ID/IDREF binding for IDREF 'addressDAO'.

 

问题原因:

配置DAO代理前面没有配置DAO或者配置错误:

 

<!-- 定义DAO -->
 <bean id="AddressDAO" class="com.demo.hibernate.dao.AddressDAO">
  <property name="sessionFactory">
   <ref bean="sessionFactory"/>
  </property>
 </bean>

 

改为:

 

<bean id="addressDAO" class="com.demo.hibernate.dao.AddressDAO">

正确。

 

分享到:
评论

相关推荐

    DAO模式设计

    DAO(Data Access Object)模式是软件开发中常用的设计模式,主要目的是为了将数据访问层与业务逻辑层解耦,提供一个抽象层来处理数据库操作。DAO模式的核心思想是通过创建一个独立于具体数据库操作的对象(即DAO)...

    Mybatis通用DAO设计封装(mybatis)

    统一异常处理,例如定义一个`BizException`,捕获并包装数据库操作过程中可能出现的异常,提供友好的错误信息给前端。 7. **代码生成器**: 利用Mybatis的代码生成器,可以根据数据库表自动生成对应的Mapper接口...

    ibatis的批量插入DAO实例

    4. **实现DAO接口**:虽然Ibatis使用动态代理自动实现了DAO接口,但我们还需要提供一个接口实现类,以便在需要的时候进行事务控制。 5. **编写Service逻辑**:在业务层,我们收集要插入的数据到List中,然后调用DAO...

    自动生成Mybatis 实体类、DaoMapper、XML可视化界面工具

    Mybatis 是一个流行的Java持久层框架,它简化了数据库操作,通过XML或注解的方式配置SQL映射,将数据访问层的代码与业务逻辑层分离。这个工具专注于自动生成Mybatis的相关组件,如实体类(Entity)、DaoMapper接口...

    Mybatis的Mapper方式整合elasticsearch的DSL调用,基于接口和代理生成bean注入的方式进行调用

    3. **配置Bean注入**:在Spring配置中,将生成的代理类作为一个Bean注入到需要使用Elasticsearch查询的地方。这样,每次调用`EsSearchMapper`的方法时,实际上是在调用代理类的方法。 4. **实现DSL构建**:在代理类...

    JAVA错误文档.pdf

    load方法在没有实际访问数据库的情况下返回一个代理对象,而get方法立即访问数据库并返回实体对象。 10. 日志输出:文档中出现了e.printStackTrace()和System.out.println()等日志输出语句,这些通常用于调试目的,...

    SSH框架配置说明(配置文件的管理)

    SSH框架,全称为Struts2、Spring和Hibernate的集成框架,是Java Web开发中常见的一个高效、稳定的架构。本文将详细介绍SSH框架配置过程中需要注意的一些关键点,帮助开发者解决可能出现的问题。 首先,关于SSH框架...

    sspring深入1

    然而,静态代理的缺点是需要为每个目标类创建一个代理类,且当接口发生变化时,代理类也需要相应更新。 2. 动态代理:JDK的动态代理机制允许在运行时创建代理对象,无需实现接口,但目标对象必须实现至少一个接口。...

    spring 练习小项目

    Spring是一个广泛使用的开源Java框架,它提供了一个全面的编程和配置模型,旨在简化企业级应用的开发。这个小项目是学习和掌握Spring技术栈的绝佳实践机会。 首先,让我们深入了解Spring的核心特性: 1. **依赖...

    SSH集成代理2.0版和struts.xml中控制器搭配

    SSH集成代理2.0版是对这些框架进行优化和整合的一个版本,旨在提供更好的性能和更简便的开发体验。在本主题中,我们将深入探讨SSH集成代理2.0版与Struts框架中的控制器如何协同工作。 首先,让我们从SSH框架的基础...

    mybatis小教程

    3. **MBG配置文件**:MBG的使用始于一个配置文件(通常为`generatorConfig.xml`),在这个文件中,你需要定义数据源信息、生成的目标目录、生成的Java类的模板等。例如,你需要指定数据库连接URL、用户名、密码,...

    ssm例子一直报错userDao无法注入

    1. **配置文件错误**:检查Spring的配置文件(如`applicationContext.xml`或`beans.xml`),确保`UserDao`接口的实现类已经被正确地定义为bean,并且设置了正确的扫描路径。例如: ```xml &lt;!-- 如果UserDaoImpl...

    ssm项目,纯java代码,没有xml配置。

    一个纯Java配置的SSM项目通常包括以下部分: - src/main/java:包含所有Java源代码,包括配置类、业务逻辑、DAO等。 - src/main/resources:存放资源文件,如数据库配置、日志配置等。 - src/main/webapp:Web应用...

    Spring基础教程

    在业务层中,我们将使用Spring来设置业务代理(businessdelegates)和数据访问对象(DAO)的依赖性。这些依赖性是通过Spring的依赖注入功能实现的,它允许对象定义它们需要的依赖项,而不是自行创建它们。这种方式提高了...

    基于ssm微信小程序的短视频系统源码数据库.zip

    这是一个基于SSM(Spring、SpringMVC、MyBatis)框架和微信小程序开发的短视频系统的源码数据库项目。该项目主要用于毕业设计,展示了如何利用Java后端技术和微信小程序前端技术实现一个短视频分享应用。 首先,...

    请教:spring事务不起作用

    在`MyTransactionTemplate.java`中,这是一个自定义的事务模板类,它继承自Spring的`TransactionTemplate`。这个类用于在非代理对象中进行事务操作,通常在AOP无法自动管理事务的场景下使用。你需要检查其中的`...

    SSH配置 自己做的

    1. Struts:这是一个基于MVC(Model-View-Controller)设计模式的Java Servlet web框架,主要用于处理用户请求,管理业务逻辑,并将数据展示在视图上。 2. Spring:这是一个全面的企业级应用框架,提供了依赖注入...

    spring jar 包详解

    Spring框架作为Java企业级开发中不可或缺的一部分,其强大的功能和灵活的配置机制使得它成为构建复杂应用的首选。在深入理解Spring框架的过程中,掌握其核心JAR包及其功能至关重要。以下是对Spring框架中关键JAR包的...

    blazeds与java(spring)通信配置说明

    BlazeDS 是 Adobe 推出的一个开源项目,提供了轻量级的消息代理服务,使得 Flex 和 Java 之间可以使用 AMF(Action Message Format)高效地进行数据交互。以下将详细介绍配置过程及其涉及的技术点。 1. **BlazeDS ...

    acegi的详细配置实现

    综上所述,Acegi Security是一个功能强大且高度可配置的安全管理工具,它支持多种认证机制和授权策略,可以满足不同类型应用程序的需求。通过深入理解其架构和配置细节,开发者可以更好地利用Acegi Security来保护...

Global site tag (gtag.js) - Google Analytics