`

注解的力量3 -----Spring 2.5 JPA hibernate 使用方法的点滴整理(三)

阅读更多

Spring 2.5 JPA hibernate 使用方法的点滴整理(三):通过 @Autowired的使用来消除 set ,get方法.

 

<script></script> 通过 (一)(二)的介绍。我们已经做了初步的简化程序。
但是在我们编写spring 框架的代码时候。一直遵循是这样一个规则:所有在spring中注入的bean 都建议定义成私有的域变量。并且要配套写上 get 和 set方法。虽然 可以通过eclipse等工具来自动生成。但是还是会引起程序阅读性上的不便。那么既然注解这么强大。是否可以也把他精简掉呢?

当然可以。这个标签就是@Autowired 

Spring 2.5 引入了 @Autowired 注释,它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。

要实现我们要精简程序的目的。需要这样来处理:

  • 在applicationContext.xml中加入:
  1. <!-- 该 BeanPostProcessor 将自动对标注 @Autowired 的 Bean 进行注入 -->   
  2.     <bean class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor"/>

  • 修改在原来注入spirng容器中的bean的方法。在域变量上加上标签@Autowired,并且去掉 相应的get 和set方法
    1. /*国家,省份,城市,城区信息维护服务
    2.  * Created on 2008-9-26
    3.  *
    4.  * 徐泽宇 roamer
    5.  */
    6. package com.firemax.test.service;
    7. import java.util.ArrayList;
    8. import java.util.Iterator;
    9. import java.util.List;
    10. import org.apache.commons.logging.Log;
    11. import org.apache.commons.logging.LogFactory;
    12. import org.dom4j.Document;
    13. import org.dom4j.DocumentHelper;
    14. import org.dom4j.Element;
    15. import org.springframework.beans.factory.annotation.Autowired;
    16. import com.firemax.test.hibernate.AlcorTCitys;
    17. import com.firemax.test.hibernate.AlcorTCitysDAO;
    18. import com.firemax.test.hibernate.AlcorTCountries;
    19. import com.firemax.test.hibernate.AlcorTCountriesDAO;
    20. import com.firemax.test.hibernate.AlcorTProvinces;
    21. import com.firemax.test.hibernate.AlcorTProvincesDAO;
    22. import com.firemax.test.hibernate.AlcotTDistrict;
    23. import com.firemax.test.hibernate.AlcotTDistrictDAO;
    24. public class CountryService {
    25.     private static Log logger = LogFactory.getLog(CountryService.class);
    26.     @Autowired
    27.     private AlcorTCountriesDAO  alcorTCountriesDAO;
    28.     @Autowired
    29.     private AlcorTProvincesDAO  alcorTProvincesDAO;
    30.     @Autowired
    31.     private AlcorTCitysDAO          alcorTCitysDAO;
    32.     @Autowired
    33.     private AlcotTDistrictDAO       alcotTDistrictDAO;
    34.     
    35.     public CountryService(){
    36.         
    37.     }
    38.     
    39.     /**修改一个国家信息
    40.      * @param alcorTCountries
    41.      * @throws Exception
    42.      */
    43.     public void updateCountry(AlcorTCountries alcorTCountries ) throws Exception{
    44.         this.alcorTCountriesDAO.update(alcorTCountries);
    45.     }
    46.     
    47.     ....
    48.     //这里去掉了哪些DAO 变量的get 和set 方法。
    49.     
    50.  
    51. }

  • 在applicatonContext.xml中 把原来 引用的<porpery >标签也去掉。
    1. <bean id="CountryService" class="com.firemax.test.service.CountryService">
    2.         <property name="alcorTCountriesDAO" ref="AlcorTCountriesDAO" />
    3.         <property name="alcorTProvincesDAO" ref="AlcorTProvincesDAO" />
    4.         <property name="alcorTCitysDAO" ref="AlcorTCitysDAO" />
    5.         <property name="alcotTDistrictDAO" ref="AlcotTDistrictDAO" />
    6.  </bean>
    修改成
    1. <bean id="CountryService" class="com.firemax.test.service.CountryService">
    2.         
    3. </bean>
    当然,我们也可以在构造函数上使用@Auwowired 注解 。如果构造函数有两个入参,分别是 bean1 和 bean2,@Autowired 将分别寻找和它们类型匹配的 Bean,将它们作为 CountryService (Bean1 bean1 ,Bean2 bean2) 的入参来创建 CountryService  Bean。
在运行一下你的业务程序。如果没有错误。恭喜你。这个步骤我们又完成了。
分享到:
评论

相关推荐

    Spring2.5+Hibernate3.2开发手册

    Spring 2.5 和 Hibernate 3.2 是两个在企业级Java应用开发中非常重要的框架。Spring 是一个全面的后端应用框架,提供依赖注入、AOP(面向切面编程)、MVC(模型-视图-控制器)以及大量的集成支持。而Hibernate 则是...

    struts2.0 spring2.5 hibernate3.2 注解最新框架

    Struts2.0、Spring2.5和Hibernate3.2是经典的Java企业级开发框架,它们在2000年代末至2010年初广泛应用于构建大型Web应用程序。这三大框架的集成提供了完整的MVC(Model-View-Controller)架构,支持服务层和持久层...

    jersey+spring2.5+hibernate3.3+jpa

    标题 "jersey+spring2.5+hibernate3.3+jpa" 指的是一种集成技术,将轻量级的RESTful服务框架Jersey、企业级应用框架Spring 2.5、持久层框架Hibernate 3.3以及Java Persistence API(JPA)结合在一起,以实现高效且...

    Spring之Spring2.5集成Hibernate3.6

    这篇博客“Spring之Spring2.5集成Hibernate3.6”主要探讨了如何将两个经典的开源框架——Spring 2.5和Hibernate 3.6进行整合,以实现数据持久化的高效管理。 Spring 2.5版本是Spring框架的一个重要里程碑,它引入了...

    spring2.5-hibernate3.04_API

    《Spring 2.5与Hibernate 3.04 API详解》 在软件开发领域,Spring框架和Hibernate ORM工具是Java开发者的重要伙伴。本资源“spring2.5-hibernate3.04_API”提供了这两个关键库的API帮助文档,旨在帮助开发者深入...

    Struts2.0+spring2.5+hibernate3.2

    Struts2.0、Spring2.5和Hibernate3.2是经典的Java企业级开发框架组合,通常被称为SSH(Struts2、Spring、Hibernate)集成框架。这个组合在2000年代末到2010年代初广泛应用于构建大型、复杂的企业级Web应用。SSH框架...

    spring2.5 + jpa(hibernate3) 实例源码

    【标题】"spring2.5 + jpa(hibernate3) 实例源码"涉及的核心技术是Spring 2.5框架与Java Persistence API (JPA)的整合,其中JPA的具体实现是Hibernate 3。这个实例提供了如何在Spring环境中配置和使用JPA进行数据库...

    struts2.1+spring2.5+hibernate3.3整合之第一步(spring2.5+hibernate3.3)

    本教程将探讨如何将Struts2.1、Spring2.5和Hibernate3.3这三大流行框架进行整合,以构建一个强大的Java Web应用程序。首先,我们先关注Spring2.5与Hibernate3.3的整合,这是整个集成的第一步。 Spring2.5是Spring...

    Struts2+Spring2.5+Hibernate3(JPA)+ExtJS3基本后台

    Struts2、Spring2.5、Hibernate3(JPA)和ExtJS3是构建现代企业级Web应用的四大核心技术,它们各自在应用架构中扮演着关键角色。下面将详细阐述这些技术及其组合使用时的基本概念和功能。 1. **Struts2**:Struts2...

    Spring2.5+Hibernate3.3+Struts1.3整合需要用到的所有jar文件

    在Java Web开发中,Spring、Hibernate和Struts是三个非常重要的框架,它们分别负责不同的职责。Spring是一个全面的后端应用程序框架,提供了依赖注入、面向切面编程等功能;Hibernate是一个对象关系映射(ORM)框架...

    spring2.5 + hibernate3.2 实例源码

    标题 "spring2.5 + hibernate3.2 实例源码" 涉及到的是两个非常关键的Java企业级开发框架:Spring 2.5和Hibernate 3.2。这个实例源码提供了如何将这两个框架集成并进行实际应用的示例。 Spring 2.5是Spring框架的一...

    springMVC+hibernage+spring(基于spring2.5和hibernate3.0)jar包

    Spring MVC、Hibernate 和 Spring 是Java开发...尽管当前版本已经更新至Spring 5和Hibernate 5,但Spring 2.5和Hibernate 3.0的组合仍广泛应用于许多现有项目中,理解其工作原理和配置方法对于Java开发者来说至关重要。

    Spring2.5 + JPA(Hibernate)实现

    标题 "Spring2.5 + JPA(Hibernate)实现" 指的是在Spring框架的2.5版本中集成Java Persistence API (JPA) 和Hibernate ORM框架来管理数据库操作。这通常涉及利用Spring的IoC(Inversion of Control)和AOP(Aspect ...

    struts1+spring2.5+hibernate整合jar包

    Struts1、Spring2.5和Hibernate是Java Web开发中常用的三大框架,它们各自负责不同的职责,Struts1处理表现层逻辑,Spring2.5管理依赖注入和业务逻辑,Hibernate则专注于持久化层操作。将这三大框架整合在一起,可以...

    学习Spring 2.5和Hibernate 3的代码示例

    Spring 2.5和Hibernate 3是两个非常重要的Java开发框架,它们在企业级应用开发中扮演着核心角色。Spring框架提供了一个全面的编程和配置模型,旨在简化Java应用程序的开发,而Hibernate则是Java世界中领先的对象关系...

    Spring2.5整合JPA

    **Spring 2.5 整合 JPA 概述** Spring 框架以其高度的灵活性和可扩展性,已经成为Java开发中不可或缺的部分。在Spring 2.5版本中,它进一步增强了对Java Persistence API (JPA)的支持,使得开发者能够更加方便地将...

    Struts1.3 spring2.5 JPA 所需jia包

    在Spring2.5中,你可以使用XML配置或注解来声明bean,它支持多种持久化策略,包括JDBC、Hibernate和JPA。 JPA(Java Persistence API)是Java平台上的一个标准,提供了ORM(对象关系映射)的能力,允许开发者以面向...

    Spring2.5整合JPA(Hibernate实现)所需的JAR包

    在本场景中,我们关注的是如何将Spring 2.5与JPA结合,并特别通过Hibernate作为JPA的实现来构建项目。以下是你提到的各个JAR包的作用和它们在整合过程中的角色: 1. **spring.jar**: 这是Spring框架的核心库,包含...

    整合Struts2,Spring2.5,Hibernate3.3操作参考

    **整合Struts2、Spring2.5与Hibernate3.3操作参考** 在Java Web开发中,Struts2、Spring和Hibernate是三个非常重要的框架,它们分别负责MVC(Model-View-Controller)模式中的控制层、业务逻辑层和服务数据访问层。...

Global site tag (gtag.js) - Google Analytics