为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
Spring入门篇_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

Spring入门篇

moocer JAVA开发工程师
难度中级
时长 7小时 0分
  • #spring——bean的生命周期# 生命周期:定义,初始化,使用,销毁 一.初始化: 方法1.实现org.springframework.beans.foctory.InitializingBean接口,覆盖afterPropertiesSet方法。系统会自动查找afterPropertiesSet方法,执行其中的初始化操作 方法2.配置init-method 例如设置bean中init-method="init"那么在初始化过程中就会调用相应class指定类的init()方法进行初始化工作 二 销毁(与初始化类似) 方法1.实现org.springframework.beans.foctory.DisposableBean接口,覆盖destory方法。 方法2.配置destory-method 三 配置全局初始化、销毁方法(属于默认配置,参考截图) 注意: 当三种方式同时使用时,全局(默认的)初始化销毁方法会被覆盖。 另外实现接口的初始化/销毁方式会先于配置文件中的初始化/销毁方式执行。 即使没有以上三种初始化方法也是可以编译执行的
    查看全部
  • #spring——bean的配置及作用域# 1.bean的常用配置项:(理论上只有class是必须的) id:唯一标识 class:具体是哪一个类 scope:范围 constructor arguments:构造器的参数 properties:属性 Autowiring mode:自动装配模式 lazy-initialization mode:懒加载模式 initialization/destruction method:初始化/销毁的方法 2.bean的作用域 singletion 单例 bean容器只有唯一的对象(默认模式) prototype 每次请求会创建新的实例,destory方式不生效 request 对于request创建新的实例,只在当前request内有效 session 对于session创建新的实例,只在当前session内有效 global session 基于portlet(例如单点登录的范围)的web中有效,如果在web中同session bean的作用域:
    查看全部
  • ResourceLoader
    查看全部
  • pointcut执行时执行的方法
    查看全部
  • Spring管理的对象都叫做bean
    查看全部
  • 使用byName byType,Service里面不能有构造函数。而构造器的方式,Service里面可以有 set方法。 byName是用beanid 去匹配set方法。
    查看全部
  • http://spring.io/ http://projects.spring.io/spring-framework/
    查看全部
  • Bean配置项
    查看全部
  • 常用注解
    查看全部
  • mark
    查看全部
  • Bean的自动装配主要有下面四种形式:第一种No、第二种byName、第三种byType、第四种constructor。注意大小写! 第一种No:不做任何自动装配操作,这个是默认的。此时对于“设值注入”和“构造器注入”仍然需要配置property和constructor-arg. 第二种byName:指的是根据属性名自动装配,相当于“设值注入”方式,只是省略了配置property这一步。 第三种byType:根据属性类型匹配Bean,类似“设值注入”,只是这次不按名字匹配,而是按类型匹配。如果多个Bean对应的类一样(只是id不一样),那么就会抛出异常错误。 第四种constructor:类似于“构造器注入”,只是省略了配置constructor-arg,并且不按构造器参数名来匹配所需的Bean,而是用构造器参数类型来匹配Bean。
    查看全部
  • spring
    查看全部
    0 采集 收起 来源:IOC及Bean容器

    2017-02-09

  • Aware结尾的接口,方便对Spring相应资源进行操作。 //在由配置文件创建IOC容器(上下文)时,会马上按配置顺序实例化所有的bean, //会执行每个bean对应的构造函数 和 该bean所实现的Aware类型接口所对应的某个方法,如setApplicationContext public class MoocApplicationContext implements ApplicationContextAware { public int mooc = 100; private ApplicationContext applicationContext; @Override //实现了ApplicationContextAware该接口后,可以直接获取到ioc容器——SpringIoc中的上下文内容 public void setApplicationContext(ApplicationContext applicationContext)//1-1 throws BeansException { this.applicationContext = applicationContext; System.out.println("bean1 接口1 1-1 MoocApplicationContext : " + applicationContext.getBean("moocApplicationContext").hashCode());//可直接从容器中找到某个bean } public MoocApplicationContext() { System.out.println("bean1 构造0 1-0 哈哈,我是构造方法,我最先执行"); } }
    查看全部
  • 写法如下: <bean id="beanScope" class="com.imooc.bean.BeanScope" scope="prototype"></bean> 验证如下: @Test public void testSay() {//单例模式singleton下输出相同,prototype下输出不同 BeanScope beanScope = super.getBean("beanScope"); beanScope.say(); BeanScope beanScope2 = super.getBean("beanScope"); beanScope2.say(); } @Test //在使用单例模式singleton时,本方法的输出和testSay()不一样,不能说明singleton设置不正确 //实际上是因为junit在执行每个测试方法的前后都会执行before()和after()来产生和销毁容器,导致不同方法使用的都是不同的容器 public void testSay2() { BeanScope beanScope = super.getBean("beanScope"); beanScope.say(); }
    查看全部

举报

0/150
提交
取消
课程须知
Java的高级课程,适合对Java基础知识应用自如,并熟悉MVC架构的小伙伴们。如果想成为一名Java工程师,这门课程是一定要学哒。
老师告诉你能学到什么?
掌握依赖注入、IOC和AOP的概念,并能进行简单应用。
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!