zoukankan      html  css  js  c++  java
  • Spring筆記

    Spring

    对于开发者来说,开发者使用Spring框架所做的主要是两件事:1、开发Bean;2、配置bean。对于Spring框架来说,它要做的,就是根据配置文件来创建Bean实力,并调用Bean实例的方法完成“依赖注入”—这就是所谓的IoC的本质。这就要求开发者在使用Spring框架是,眼中看到的是“XML配置”,心中想的是“java代码”。后面学习时,要尽可能的理解“每段XML配置”在底层所对应的“java代码调用”。

    问题:1、什么是Bean?什么是javabeen?(好好思考理解)

    Spring的核心机制:IoC(控制反转)是Spring框架的核心。依赖注入(java应用大多数都是由一些互相协作的对象构成的,sprin把这种互相协作关系称为依赖关系,假如A组件调用了B组件的方法,我们称A组件依赖于B组件)

       所谓的依赖注入,是指程序运行过程中,如果需要另一个对象协作(调用它的方法,访问它的属性时,无需再代码中创建被调用者,而是依赖外部容器的注入。Spring的依赖注入对调用者和被调用者机会没有任何要求,完成对POJO之间依赖关系的管理)

       依赖注入通常有如下

    1、设值注入:IoC容器使用属性的setter方法来注入被依赖实例。   2、构造注入:IoC容器使用构造器来注入被依赖实例。

     

    理解implements和extends

    implements一般是实现接口。
    extends 是继承类。

    接口一般是只有方法声明没有定义的,
    那么java特别指出实现接口是有道理的,因为继承就有感觉是父类已经实现了方法,而接口恰恰是没有实现自己的方法,仅仅有声明,也就是一个方法头没有方法体。因此你可以理解成接口是子类实现其方法声明而不是继承其方法。
    但是一般类的方法可以有方法体,那么叫继承比较合理。
    引入包可以使用里面非接口的一切实现的类。那么是不是实现接口,这个你自己决定,如果想用到那么你不是实现,是不能调用这个接口的,因为接口就是个规范,是个没方法体的方法声明集合。我来举个例子吧:接口可以比作协议,比如我说 一个协议是“杀人”那么这个接口你可以用 砍刀去实现,至于怎么杀砍刀可以去实现,当然你也可以用抢来实现杀人接口,但是你不能用杀人接口去杀人,因为杀人接口只不过是个功能说明,是个协议,具体怎么干,还要看他的实现类。
    那么一个包里面如果有接口,你可以不实现。这个不影响你使用其他类。

     

    Spring整合Struts2

       Spring提供了一个ContextLoaderListener,该监听器类实现了ServletContextListener接口。该类可以作为Listener使用,它会在创建时自动查找WEB-INF/下的applicationContext.xml文件,因此,如果只有一个配置文件,并且文件名为applicationContext.xml,则只需在web.xml文件中增加如下配置便可。

    <listener>

         <listener-class>org.springframework.web.context.ContextLoaderListene</listener-class>

    </listener>

    如果有多个配置文件需要载入,则考虑使用<context-param…>元素来确定配置文件名。ContextLoaderListener加载时,会查找名为contextCcofigLocation的初始化参数。因此,配置<context-param…/>是应指定参数名为contextConfigLoacation。

    带多个配置文件的web.xml文件如下:

    <?xml-app  xmls=”http//java.sun.com/xml/ns/javaee”

               Xmls=”http://www.w3.org/2001/XMLSchema-instance”

    Xsi:schemaLoaction=http://java.sun.com//xml/ns/javaee

    http://java.sun.com/xml/ns/javaee/web-app.xsd”version=”3.0”>

    <!—指定多个配置文件-->

    <context-param>

         <!—参数名为ContextConfigLocation-->

         <param-name>contextConfigLocation</param-name>

         <!—多个配置文件之间以“,”隔开-->

         <param-value>/WEB-INF/daoContext.xml,/WEB-INF/applicationContext.xml

         </param-value>

         <!—使用ConfigLoaderListener初始化Spring容器-->

  • 相关阅读:
    我的第二个思维导图,用来介绍框架
    如何减少基于DataSet框架的代码输入量(一)
    近日
    关于客户端如何获取服务器时间的方法
    匹配用逗号分隔的数字(防sql注入检查)
    十六进制字符串转整形
    sql获取自增行号
    body不出现滚动条方法
    vs2010 无法调试 无法进入断点 断点无效
    Textarea 高度自适应 根据内容自适应高度
  • 原文地址:https://www.cnblogs.com/OP-RONG/p/4200294.html
Copyright © 2011-2022 走看看