`
youanyyou
  • 浏览: 196429 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

spring3.0学习笔记(1)

阅读更多

用过spring2.5的朋友应该都知道它的一些简单的应用,如:

bean.xml中配置<bean id="userDAO" class="cn.ling.spring3.dao.impl.UserDAOImpl">

然后在要用到的类中用注解注入,如下

@ContextConfiguration("classpath:beans.xml")
public class UserDAOTest {
 
 @Resource(name="userDAO")
 private UserDAO userDAO;
 

 public void testSave() {
  this.userDAO.save(new User());
 }

}

或者不用注解,如下:

public void testSave() {
  ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");

  
  UserDAO userDAO = (UserDAO)context.getBean("userDAO");
  userDAO.save(new User());
 }

在这里,spring3.0给我们提供了一个新功能,可以避免上面的强制转换
  UserDAO userDAO = context.getBean("userDAO", UserDAO.class);

呵呵,可能这个没方便多少!

 

如果你不大了解XML或者是不想用xml来配置bean,想用java风格来配置bean的话,那么spring3.0下面的这个特性就很合胃口了。首先再引入两个包:asm-3.2.jar和cglib-2.2.jar,我在下面上传了。

接着,在bean.xml中加入一句:<context:component-scan base-package ="cn.ling.spring3.config"> </context:component-scan>

然后建一个类cn/ling/spring3/config/AppConfig .java里面的代码如下:
@Configuration
public class AppConfig {
 @Bean
 public UserDAO userDAO() {
  return new UserDAOImpl();
 }

}

这个在bean.xml中相当于<bean id = "userDAO" class="userDAO"/>
这样就可以了。

 

看到这,可能你会问,那类里面的属性怎么注入呢。

其实道理也很简单,在上面的AppConfig.java中,再搞一个@Bean,引用第一个bean就可以了。修改如下(只在AppConfig.java中修改就可以了)。

@Configuration
public class AppConfig {
 @Bean
 public UserDAO userDAO() {
  return new UserDAOImpl();
 } 
 @Bean
 public UserService userService() {
  UserServiceImpl service = new UserServiceImpl();
  service.setUserDAO(userDAO());          //在这里就注入了userDAO属性。
  return service;
 }
}

 

那么数据库的参数怎么配置呢?这个就搞得有点偏复杂了。如下,也是只在AppConfig.java中修改。

首先定义几个属性,用注入的方式。

private @Value("#{jdbcProperties.url}")String  jdbcUrl;
private @Value("#{jdbcProperties.username}")String  username;
private @Value("#{jdbcProperties.password}")String  password;

然后,再加一个@Bean

@Bean
public DataSource  dataSource(){
return  new  DriverManagerDataSource(jdbcUrl,username,password);
}

最后在bean.xml中加入一句<util:properties  id="jdbcProperties"  location="classpath: cn/ling/dao/jdbc.properties"/>

 

如何取得SessionFactory呢?如下

@Bean
public SessionFactorysessionFactory(){
   //wire up a session factory
   AnnotationSessionFactoryBean  asFactoryBean  =   new AnnotationSessionFactoryBean();
  asFactoryBean.setDataSource(dataSource());   //这里的dataSource就是上面讲的那个方法。
  //add itional config
   return asFactoryBean.getObject();
}

这一讲就到这,下一讲是另一个重点:SpEL表达式。

深圳人才网 深圳招聘网 深圳人才招聘网 深圳人才大市场 

企业、个人免费注册,获取想要的 深圳 软件工程师招聘信息 月薪最低3000-8000,更有高端猎头职位! 

www.szrcwz.com                                                                                                                                           

                  Google 提供的广告

分享到:
评论

相关推荐

    Spring3.0学习笔记

    尚学堂的Spring学习笔记.doc可能包含对这些特性的详细解释、实例代码以及如何在实际项目中应用的指导,对于想要深入理解Spring 3.0的开发者来说是一份宝贵的参考资料。通过阅读这份笔记,你可以系统地学习Spring 3.0...

    基于注解的spring_3.0.x_MVC学习笔记

    在本篇基于注解的Spring 3.0.x MVC学习笔记中,我们将深入探讨Spring MVC在3.0版本中的变化,以及如何通过注解实现快速开发。Spring 3.0.x相较于2.5版本有着显著的改进,尤其在MVC模块上,提供了更加灵活和强大的...

    spring6.0学习笔记

    通过阅读《spring6.0学习笔记.md》这份文档,开发者可以系统地了解这些新特性和变化,逐步掌握Spring 6.0的核心技术,提升自己的开发技能。文档中应该会详细解析每个知识点的应用场景、使用方法以及最佳实践,帮助...

    spring2.0学习笔记+spring定时任务

    标题中的“spring2.0学习笔记+spring定时任务”表明了这个压缩包文件包含的是关于Spring框架2.0版本的学习资料,特别是关于Spring的定时任务功能。Spring是Java开发中最广泛应用的轻量级框架之一,它提供了一整套...

    spring学习笔记

    本学习笔记将深入探讨Spring 3.0 MVC框架,帮助读者理解并掌握其主要特性。 首先,Spring MVC设计的核心理念是高度可配置性。每个功能模块都可以根据需求进行定制,这意味着开发者可以根据项目需求调整框架的工作...

    Spring MVC学习笔记MD.7z

    这个压缩包“Spring MVC学习笔记MD.7z”包含了作者在学习Spring MVC过程中的笔记、源代码以及相关文档,非常适合初学者或希望深入理解Spring MVC的开发者。 首先,`SpringMVC-Study.7z` 可能是作者整理的Spring MVC...

    spring_mvc学习笔记

    在Spring MVC的学习过程中,了解和掌握其核心概念与机制至关重要。Spring MVC是Spring框架的一个模块,主要用于构建Web应用程序。在Spring 3.0.x版本中,Spring MVC进行了大量的改进,引入了许多新特性和优化,使其...

    Spring2.5、3.0、3.1轻松入门+中级+高级教程14合一

    - **基于注解的spring_3[1].0.x_MVC学习笔记**: 这份笔记将详细解释Spring 3.0.x版本中的注解驱动开发,包括依赖注入、AOP和数据绑定等。 - **Spring入门教程**: 这是Spring框架的基础教程,涵盖了Spring的核心概念...

    Spring3 MVC 学习笔记 入门

    ### Spring3 MVC 学习笔记入门知识点解析 #### 一、Spring MVC 概念与架构 **Spring MVC** 是 Spring Framework 的一个重要模块,主要用于构建基于 Web 的应用。它实现了 Model-View-Controller(MVC)设计模式,...

    Spring MVC 学习笔记 十四 对locale和theme的支持

    这篇学习笔记将深入探讨这两个概念及其在实际开发中的应用。 1. **Locale(地区设置)支持** - `Locale`是Java中的一个类,用于表示特定的语言和地区。例如,`zh_CN`代表简体中文,`en_US`代表美国英语。 - ...

    springMVC学习笔记

    ### SpringMVC学习笔记 #### 一、SpringMVC概述 **1.1 什么是SpringMVC** SpringMVC作为Spring Framework的一个重要组成部分,主要针对Web应用开发提供了一个功能全面的MVC(Model-View-Controller)框架。它是...

    DWR学习资料

    DWR学习资料 :DWR 3.0 上传文件.txt DWR3.0反向Ajax示例.txt DWR3.0学习笔记.txt DWR3.0学习网址.txt dwr分页.doc DWR分页代码.doc DWR中文文档.doc DWR中文文档.pdf dwr做comet的完整实现.doc Spring整合DWR comet ...

    Spring+JDBC集成学习笔记(可参考ppt附件38-46页)

    **Spring+JDBC集成学习笔记** 在Java Web开发中,Spring框架因其强大的功能和灵活性而被广泛应用。Spring提供了与JDBC的集成,使得数据库操作更加便捷、高效且易于管理。以下将详细介绍Spring如何与JDBC结合,以及...

    spring第一次课笔记

    本笔记将详细解析Spring框架的基础知识,帮助你更好地理解并掌握Spring的核心概念。 首先,我们需要了解Spring框架的主要模块: 1. **核心容器**:这是Spring框架的基础,包括BeanFactory和ApplicationContext。...

    spring总结笔记

    ### Spring框架概述与基本配置 #### 一、Spring框架简介 Spring框架是一个开源的企业级Java应用框架,由Rod Johnson创建...通过这些内容的学习,开发者可以更好地理解和掌握如何使用Spring框架构建高质量的应用程序。

    Spring学习笔记

    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd ...

    SpringMVC笔记.zip

    SpringMVC 已经成为目前最主流的 MVC 框架之一,并且随着 Spring3.0 的发布,全面超越 Struts2,成为最优秀的 MVC 框架。它通过一套注解, 让一个简单的 Java 类成为处理请求的控制器, 而无须实现任何接口。 同时它...

    软件工程师学习笔记大全(C++,JAVA)4.rar

    这份名为“软件工程师学习笔记大全(C++,JAVA)4.rar”的压缩文件包含了软件工程师在学习C++和Java编程语言时的重要参考资料。这些文档详细涵盖了从基础到高级的各种主题,对于提升技能和准备面试非常有帮助。以下...

Global site tag (gtag.js) - Google Analytics