`

Spring 备忘 (一)

阅读更多

Spring 学习笔记 (一)

 

1. 使用版本 3.2.0的spring. 创建一个名称为TestSrping的普通web工程.

   将spring的libs文件夹中的jar拷贝到WEB-INF/lib下,注意javadoc和sourc的不需要

   

2. spring 3的版本中去掉了依赖包,所以需要额外找到commons-logging-1.1.1.jar拷贝到WEB-INF/lib下

 

   小试牛刀代码参考:test.spring包

 

3. Ioc控制反转,又叫依赖注入(Dependency Injection): 当某个Java实例(调用者)需要另一个Java实例(被调用者)

   时,在传统的程序设计过程中,通常有调用者来创建被调用者的实例.而在依赖注入的模式下,创建被调用者的工作不再

   由调用者来完成,因此称为控制反转;创建被调用者实例通常有SPring容器来完成,然后注入调用者,因此也称为依赖注入.

 

依赖注入有两种:

 设值注入: Ioc容器使用属性的setter方法来注入被依赖的实例

 构造注入: Ioc容器使用构造函器来注入被依赖的实例

 

 区别: 设置注入时,Spring先调用Bean的无参构造器,创建实例,然后调用setter方法,

       构造注入,Spring直接调用有参数的构造器

 

4. 设值注入:参考附件工程中的 test.ioc.setter包中代码

 

5. Sping 通过配置文件来配置依赖关系,参考工程中bean.xml

 

6. Spring 容器, 基本接口BeanFactory,子接口ApplicationContext

   通常ApplicationContext的实现类:

      FileSystemConfigApplicationContext,

      ClassPathXmlApplicationContext,

      AnnotationConfigApplicationContext

   Web应用中:

      XmlWebApplicationContext,

      AnnotationConfigWebApplicationContext

 

7. 国际化

   ApplicationContext接口 继承自MessageSource,  

   MessageSource接口有下面三个方法:

   String getMessage(String code,Object[] args,Locale loc)

   String getMessage(String code,Object[] args,Sring default,Locale loc)

   String getMessage(MessageSourceResolvable resolvable,Locale loc)

   当程序创建 ApplicationContext时,会自动在配置文件中查找messageBean的配置,

   一旦找到,上述三个方法被委托给该messageBean,如果没有改Bean,ApplicationContext

   查找其父配置中的messageBean,如果还没有找到,则系统会自动创建一个空的StaticMessageBean

   的Bean,该Bean能接受上面三个方法的调用.

   在Spring中通常使用ResourceBundlMessageSource这个类

   

8. ApplicationContext的事件机制

   两个对象:

   (1) ApplicationEvent:容器事件,可以是自定义的事件(一个类必须继承自ApplicationEvent)

   (2) ApplicationListener:事件监听器,在Spring中配置了实现ApplicationListener接口的Bean

       Spring容器就会把这个Bean当成容器事件的监听器.

       当系统创建Spring,加载Spring容器是会自动触发容器事件,容器事件监听器可以监听容器事件,

       也可以监听自定义事件.程序中可以通过调用ApplicationContext的publishEvent来触发事件.

   内置事件:

   (1) ContextRefreshedEvent:ApplicationContext容器初始化或者刷新时触发该事件。

   (2) ContextStartedEvent:当使用ConfigurableApplicationContext接口的start()方法启动ApplicationContext容器时触发该事件。

   (3) ContextClosedEvent:当使用ConfigurableApplicationContext接口的close()方法关闭ApplicationContext容器时触发该事件。

   (4) ContextStopedEvent: 当使用ConfigurableApplicationContext接口的stop()方法停止ApplicationContext容器时触发该事件。

   (5) RequestHandledEvent: Web相关事件,只能应用于是用DispatcherServlet的Web应用.当Spring处理用户请求结束后触发.

   (包 test.springevent)

 

9. 在Spring的Bean中获得Spring容器(ApplicationContext的引用)

   bean需要实现ApplicationContextAware 接口,该接口包含一个setApplicationContext方法,传入ApplicationContext参数.

   这样容器在实例化bean时,会调用这个方法,并把容器本身作为参数传递给这个方法.

   (包 test.bean.get.appcontext)

 

附件工程文件中,需要导入spring 3.2.0 版本的lib里面的jar包

分享到:
评论

相关推荐

    struts+spring+hibernate3+webligic812环境配置备忘录

    以下是基于标题“struts+spring+hibernate3+webligic812环境配置备忘录”的详细知识点解析: ### 一、环境搭建与配置 #### 1. WebLogic Server安装与配置 - **安装过程**:首先,下载WebLogic Server 8.1.2版本的...

    Spring 3.1配置文件示例(备忘)

    这篇备忘录将深入探讨 `applicationContext.xml` 文件在 Spring 3.1 中的角色、结构和常见配置元素。我们将讨论如何通过 XML 配置来管理 Bean、属性注入、AOP(面向切面编程)、事务管理和资源加载。 首先,`...

    基于SpringBoot+Vue的备忘录系统源码+sql数据库(课程大作业).zip

    基于SpringBoot+Vue的备忘录系统源码+sql数据库(课程大作业).zip 基于SpringBoot+Vue的备忘录系统源码+sql数据库(课程大作业).zip 基于SpringBoot+Vue的备忘录系统源码+sql数据库(课程大作业).zip 【资源说明】 项目...

    SSHF备忘之依赖包(struts2+spring2.5+hibernate+freemarker)

    在Java Web开发中,SSHF(Struts2、Spring、Hibernate和FreeMarker)是一个常见的技术栈,用于构建高效、可维护的MVC应用程序。这些框架的整合能够提供强大的功能,如模型-视图-控制器架构、依赖注入、持久化管理和...

    移动平台多媒体备忘录

    【移动平台多媒体备忘录】是一个专为手机用户设计的应用程序,它允许用户在移动设备上创建、存储和管理多媒体内容的备忘录。这款应用不仅涵盖了文本记录,还支持图片、音频和视频等多媒体形式,极大地丰富了备忘录的...

    Spring_Batch系列文章汇总

    作者通过博客园分享自己在学习和应用Spring_Batch过程中的心得体会和经验教训,目的是为了备忘和引发更深入的讨论,以便收集更多的反馈和建议。希望这样的开放心态能吸引更多经验丰富的开发者参与讨论,共同推动...

    备忘录模块

    在IT行业中,备忘录模块通常是指一个软件或应用程序中的功能部分,用于帮助用户记录、存储和管理重要的信息和待办事项。这个模块是许多个人和企业日常工作中不可或缺的工具,尤其是在java web环境下,它能够无缝集成...

    Spring2.5.3+Struts2.0.11.1+Hibernate3.2.6整合备忘 (转载)

    Spring2.5.3+Struts2.0.11.1+Hibernate3.2.6整合备忘 (转载)

    s2sh框架实例——个人备忘录系统源码

    【标题】"s2sh框架实例——个人备忘录系统源码" 提供了一个学习和研究Web开发的宝贵资源,特别适合对Java Web技术感兴趣的初学者。S2SH是Struts2、Spring和Hibernate三个开源框架的组合,是Java领域广泛应用的MVC...

    myfaces+ajax4jsf+spring+jpa+chartCreate 配置备忘.part1

    myfaces+ajax4jsf+spring+jpa+chartCreate 配置备忘 完整eclipse项目源代码

    Android大作业,基于bomb的云备忘录项目源码.zip

    这是一个基于Java技术栈的Android大作业,项目名为“Cloud-notepad”,主要实现了云备忘录的功能,使用了Bomb作为基础框架。在这个项目中,开发者利用了Spring Boot、Spring Cloud和SSM(Spring Framework、...

    java开发备忘录

    - **Spring框架**:依赖注入、AOP、事务管理等,简化企业级应用开发。 - **JDBC**:Java Database Connectivity,用于连接和操作数据库。 9. **Java SE新特性** - **Lambda表达式**:简化函数式编程,从Java 8...

    java ssm备忘录管理系统毕业论文.docx

    为了解决这些问题,需要设计和实现一个现代化的备忘录管理系统,该系统需要具有高效、可靠、安全等特点。 Java SSM 框架的应用 Java SSM 框架是一种流行的 Web 应用框架,它能够帮助开发者快速构建高效、可靠的 ...

    10备忘录系统(ssm+mysql)

    基于SSM(Spring+SpringMVC+MyBatis)框架和MySQL数据库的备忘录系统,其功能设计通常围绕着用户的日常备忘需求展开,旨在提供一个高效、便捷的信息记录和检索平台。以下是对该系统功能的详细描述: 1. 用户管理 ...

    beiwanglu.rar_备忘录代码

    【标题】"备忘录代码"指的是一个编程项目,它实现了备忘录功能。备忘录应用程序是常见的软件工具,允许用户记录、存储和管理日常生活中的待办事项、提醒和其他重要信息。在这个“beiwanglu.rar”压缩包中,包含的...

    大学 毕业设计 项目实训 个人备忘录系统(java SSH网站源代码)+JSP漂亮的界面控件.zip

    【标题】中的“大学毕业设计 项目实训 个人备忘录系统(java SSH网站源代码)”表明这是一个基于Java的SSH框架实现的个人备忘录系统,适用于大学生进行毕业设计或项目实训。SSH是Struts2、Spring和Hibernate三个开源...

    Java反射备忘录

    9. AOP(面向切面编程)与反射:反射常用于实现AOP框架,如Spring,通过动态代理实现切面逻辑。 10. 动态代理:Java的`java.lang.reflect.Proxy`类允许创建动态代理,实现接口并在运行时拦截方法调用,这与反射密切...

Global site tag (gtag.js) - Google Analytics