`

Spring介绍

 
阅读更多
[b]1. IoC : Inversion of Control 控制反转

应用本身不负责personDAO的创建和维护,而是由外部容器负责,使用依赖注入
来获取对象;
控制权就由应用移到了外部容器,控制权的转移就是反转;

class PersonServiceBean {
  new personDAO();
}

如何实现依赖注入? 反射
Dependency Injection : DI
  
2. 依赖注入

(1) 方法: 构造函数;setter;
(2) 在运行期,由外部容器动态的

3. 为何使用Spring; ------- 面试

(1) 降低耦合度;
  Service->DAO;
  以前的做法:直接在Service中new出DAO;
     还有通过Factory和属性文件,通过面向接口编程实现;
  Spring:通过构造函数或setter方法,通过接口实现;

(2) 使用Spring的服务;
  事务管理;消息服务;
  如Hibernate和JDBC中对事务的控制,每个方法都要写事务控制语句;
  itcastbbs解决了这个问题;通过Filter,控制每个请求;
  Spring管理事务:设置属性

(3) 单例模式支持;
  以前需要编码;Spring做简单配置即可;

(4) AOP技术,实现:权限拦截等等;

(5) 众多的辅助类:如JdbcTemplate, HibernateTemplate

(6) 对主流的应用框架提供了集成支持:Hibernate, JPA, Struts,Hibernate;

---- 简化开发

4. 轻量级与重量级概念的划分:[/b]

标准:使用了多少的服务
Spring: 默认不为应用打开;
EJB: 默认为应用打开;

5. 使用

(1) jar: spring.jar, commons-logging.jar
(2) 配置:beans.xml
  名字随意取,内容可以在文档中搜索beans
  beans.xml放在src-> classpath下
(3) 如何配置beans.xml;
(4) 实例化Spring容器
  两种方法: 见ppt
  类路径; 文件系统路径;
  建议使用类路径下;
 
  --- 使用单元测试:检查环境是否成功搭配;
 

6. bean内部原理:

开发模拟的Spring容器

ItcastClassPathXmlApplication
  -- 定义1个bean:BeanDefinition,专门用于存放<bean>属性值;
  --通过List存放全部的BeanDefinition
  -- (1) init
   使用dom4j读取配置文件;
   为什么使用命名空间?·····················
  -- (2) 实例化bean: 存入map中;
   privateMap<String, Object> singtons = newHashMap():
  -- (3) 获取bean getBean
   singtons.get(beanName);
  
使用刚才的模拟容器:测试

7. Spring什么时候创建bean实例?

-- 验证:Spring什么时候创建bean实例?容器实例化,还是getBean();
  判断:在HellWorldServiceImpl构造函数中syso:我被创建了
  结果:默认情况下,容器实例化的时候创建;
 
-- 容器中保存几份bean对象;
  判断: hellword1==hellword2
  结果: 1份
 
8. bean的作用域;
默认情况下是单例的。
<beanscope="singleton">
scope="prototype"      --- 每次getBean返回一个新的对象;[可以通过7判断]
lazy-int="true"  ---容器启动时不创建对象,需要的时候(getBean)创建;

== <beans>中可以初始化所有的bean

init-method="init"      ---bean初始化后立即完成一个操作(bean.init())
destroy-method="destroy" ---bean销毁前立即完成一个操作(bean.destroy()) 
  ==AbstractApplicationContext.close();
   通过上述代码可以发现bean.destroy的执行
  
9. bean的创建:ppt
(1) 类构造器实例化: 掌握这一种即可

(2) 对象工厂来创建 :很少用
  HelloWorldServiceFactroy
   public staticHelloWorldServiceBean createHelloWorldServiceBean()
    newHelloWorldServiceBean;
  --- Spring中的配置:ppt
   <bean
    id="HelloWorldServiceBean"
    factory-method="createHelloWorldServiceBean()">
(3) 实例工厂方法实例化:几乎不用,它需要实例化工厂
  ...

===========  上述知识点 ===========

1. 如何把bean交给Spring管理
2. 如何实例化Spring容器;
3. bean的作用域;
4. 如何指定bean的初始化方法和销毁方法;


===========  上述知识点 ===========


分享到:
评论

相关推荐

    spring介绍

    spring介绍笔记。学习spring很好的文档

    spring详细介绍

    Spring框架是Java平台的一个开源应用框架,由Rod Johnson创建,并首次在2003年发布。它被广泛应用于各种规模的Java应用开发中。Spring提供了一个全面的编程和配置模型,可以用于企业级应用开发。Spring的核心是控制...

    体验控制反转的理念及Spring介绍技术文档

    ### 体验控制反转的理念及Spring框架介绍 #### 1. Spring 框架概述 Spring框架自2002年由Rod Johnson在其著作《Expert One-on-One J2EE Design and Development》中提出以来,逐渐成为了企业级Java应用开发中最受...

    JAVA Spring介绍 ppt

    **Java Spring 框架简介** Java Spring 是一个开源的轻量级企业级应用程序框架,以其卓越的灵活性和模块化而闻名。它提供了一个全面的编程和配置模型,旨在简化Java开发并促进良好的编程实践。Spring的核心特性包括...

    spring介绍及应用

    Spring框架是一个开放源代码的J2EE应用程序框架,由Rod Johnson发起,是...Spring框架主要由七部分组成,分别是 Spring Core、 Spring AOP、 Spring ORM、 Spring DAO、Spring Context、 Spring Web和 Spring Web MVC。

    spring介绍ppt 介绍spring的基本概念和使用

    【Spring框架概述】 Spring是一个广泛使用的开源Java框架,它的核心目标是简化企业级应用程序的开发复杂性。由Rod Johnson创建,Spring提供了一种轻量级的解决方案,避免了使用Enterprise JavaBeans (EJB)带来的...

    spring原理和介绍

    Spring 框架原理和介绍 Spring 框架是一个开源框架,为了解决企业应用程序开发复杂性而创建的。其主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。 ...

    Spring介绍与IOC

    Spring和 IOC 介绍 及简要配置说明,

    Spring 简介 Spring 简介

    本节将详细介绍Spring的基本概念、特点以及它如何作为一个容器和框架来工作。 首先,Spring 是一个开源的Java框架,由Rod Johnson创建,最初是为了应对EJB(Enterprise JavaBeans)在企业应用开发中带来的复杂性。...

    JAVA中spring介绍:JAVA spring的优缺点详解

    JAVA spring的优缺点详解

    JAVA中spring介绍&心得&项目&相关练习

    Spring框架:引领企业级应用开发的强大引擎 Spring框架,作为Java企业级应用开发的领军者,以其独特的优势,为开发者提供了高效、灵活且易于维护的解决方案。它不仅仅是一个简单的框架,更是一套完整的开发理念和...

    上传JAVA中spring介绍

    Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。它由Rod Johnson于2002年首次提出,旨在解决企业应用开发的复杂性。Spring框架提供了基础的功能性支持,包括事务管理、安全控制、数据访问、远程...

    Java Spring 的框架简介外文文献加翻译

    **Java Spring 框架简介** Spring 是一个广泛使用的开源Java框架,主要设计用于简化企业级应用程序开发。它由Rod Johnson在2003年创建,最初作为一个轻量级的IoC(Inversion of Control,控制反转)容器,如今已...

    Pro Spring for Integeration

    - **第四章:企业级Spring介绍** —— 探讨了Spring框架在企业级应用中的高级用法。 - **第五章:Spring Integration介绍** —— 全面介绍了Spring Integration框架,包括其设计理念和主要组件。 - **第六章:通道...

    java教材37-Spring介绍(IT job就业培训).doc

    本章主要介绍Spring框架的基本概念、核心特性以及如何在实际开发中应用。 Spring的核心理念是控制反转(Inversion of Control,简称IOC)和面向切面编程(Aspect-Oriented Programming,简称AOP)。控制反转是指...

    Pro Spring Integration

    4. 企业Spring介绍:扩展Spring框架的知识,特别关注企业环境中的应用。 5. Spring Integration介绍:正式进入Spring Integration的讲解,介绍其基本组件和集成架构。 6. 通道:详细讲解Spring Integration中的消息...

    spring介绍&心得&项目&相关练习.zip

    Spring是一个轻量级的开源Java框架,用于构建企业级应用程序。它提供了丰富的功能,包括依赖注入(DI)、面向切面编程(AOP)、容器管理、事务管理等,使得开发者能够更加专注于业务逻辑的实现而不必过多关注底层的...

    Spring Cloud介绍ppt

    单体架构vs微服务架构,dubbo与spring cloud对比,spring cloud整体架构,简单架构,eureka介绍,hystrix介绍, feign介绍,spring cloud config配置介绍,zuul配置中心介绍, spring cloud开发步骤,docker自动化...

Global site tag (gtag.js) - Google Analytics