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

Spring入门篇

moocer JAVA开发工程师
难度中级
时长 7小时 0分
  • 构造注入
    查看全部
    0 采集 收起 来源:Spring注入方式

    2017-01-08

  • 设值注入
    查看全部
    0 采集 收起 来源:Spring注入方式

    2017-01-08

  • Bean的生命周期 - 定义 就是在xml文件中<bean>中定义id和class - 初始化 当IOC容器,也就是context在启动的时候去加载bean配置文件里的<bean>并初始化,生成bean的实例 - 使用 单元测试或者实际开发中从bean容器中取出一个实例,然后调用相应方法 - 销毁 在bean容器停止的时候,去销毁由当前bean容器去创建的所有的bean的实例
    查看全部
  • Bean的作用域
    查看全部
  • Bean配置项
    查看全部
  • 如果这里配置了scope="prototype",那么两次执行,得到就结果就不一样了,也就是说,不是单例,每次请求(使用对象)都会创建一个新的实例 <bean id="beanScope" class="com.imooc.bean.BeanScope" scope="prototype"></bean> @Test public void testSay() { BeanScope beanScope = super.getBean("beanScope"); beanScope.say(); BeanScope beanScope2 = super.getBean("beanScope"); beanScope2.say(); }
    查看全部
  • 单例配置 在一个ioc容器中,如果配置了scope="singleton",那么这个bean就是单例的 <bean id="beanScope" class="com.imooc.bean.BeanScope" scope="singleton"></bean> 配置了scope="singleton"后, @Test public void testSay() { BeanScope beanScope = super.getBean("beanScope"); beanScope.say(); BeanScope beanScope2 = super.getBean("beanScope"); beanScope2.say(); } 输出的hashCode一样,意思就是说,无论在这里获取了多少个bean的id,实际上都是在同一个SpringIOC容器中得到的一个唯一的实例(因为一直是在同一方法中获取bean),也就是无论获取多少个,其实一直在使用同一个对象
    查看全部
  • @Test public void testSay() { BeanScope beanScope = super.getBean("beanScope"); beanScope.say(); } @Test public void testSay2() { BeanScope beanScope = super.getBean("beanScope"); beanScope.say(); } 这里,即使xml中配置了scope="singleton"也不是单例,因为这是两个不同的方法,方法里获取的bean虽然是在同一个bean中获取,但是是两次分别的获取,也就是说,虽然是在同一容器内获取,但是获取了两个不同的对象实例
    查看全部
  • Bean的作用域 ( 五种类型 )
    查看全部
  • id - 整个IOC容器中,这个bean的唯一标识 class - 具体要实例化的哪一个类,要求全限定类名,也就是包名+类名 scope - 范围,也就是作用域 constructor arguments - 构造器参数 properties - 属性 autowiring mode - 自动装配模式 lazy-initialization mode - 懒加载模式 Initalization/destruction method - 初始化/销毁的方法 以上这些配置项构成了SpringIOC容器中对于bean的配置 理论上,只有class是必须的,其他的都可以不配置,但是如果想在bean容器中得到某一个实例 有两种方式 1 - 通过id获取 (id配置项必须) 2 - 根据bean的类型获取 (只需要class就可以)
    查看全部
  • 如果使用idea找不到包 比如这里的工具类,尝试将private修饰符替换成public
    查看全部
    0 采集 收起 来源:Spring注入方式

    2017-01-07

  • 自定义作用域
    查看全部
  • 构造注入 constructor-arg 构造器参数 在InjectionServiceImpl中必须要有一个构造器,并且构造器的参数必须是injectionDAO, 意思是:在IOC容器调用InjectionServiceImpl的构造方法去创建InjectionServiceImpl这个类的实例的时候,就会根据ref="injectionDAO"把class="com.imooc.ioc.injection.dao.InjectionDAOImpl"的实例赋值给InjectionServiceImpl的构造器中声明的injectionDAO这个属性 从而完成在创建InjectionServiceImpl的时候,对injectionDAO,也就是InjectionServiceImpl的这个成员变量的赋值 这里要求InjectionServiceImpl的构造器必须被显示的初始化,并且参数必须是injectionDAO,虽然不写构造器系统会自动给一个无参默认的,但如果不写在xml标签中则获取不到该构造器名称 //构造器注入 public InjectionServiceImpl(InjectionDAO injectionDAO) { this.injectionDAO = injectionDAO; } <bean id="injectionService" class="com.imooc.ioc.injection.service.InjectionServiceImpl"> <constructor-arg name="injectionDAO" ref="injectionDAO"></constructor> </bean> <bean id="injectionDAO" class="com.imooc.ioc.injection.dao.InjectionDAOImpl"></bean>
    查看全部
    0 采集 收起 来源:Spring注入方式

    2018-03-22

  • 设值注入 - 就是set方法通过属性和成员变量的set方法进行注入 举例: IOC容器在初始化加载xml的时候声明了两个bean(id="injectionService"和id="injectionDAO"),去创建这两个对象 property是属性的意思,也就是说在InjectionServiceImpl这个类中,有一个名字叫injectionDAO的成员变量 这个成员变量的类型是InjectionDAOImpl,它的引用是injectionDAO(这个引用就是第二个bean的id,引用的injectionDAO同时是InjectionDAOImpl的实例(同样是在第二个bean中)) 它将这个实例赋值给了第一个bean中的injectionDAO,这个name="injectionDAO"是id="injectionService"的一个属性 <bean id="injectionService" class="com.imooc.ioc.injection.service.InjectionServiceImpl"> <!-- 这里的name="injectionDAO",实际上在InjectionServiceImpl类中有一个方法: //设值注入 public void setInjectionDAO(InjectionDAO injectionDAO) { this.injectionDAO = injectionDAO; } --> <property name="injectionDAO" ref="injectionDAO"></property> 这里的name=""中的内容就是setXXX方法中的XXX </bean> <bean id="injectionDAO" class="com.imooc.ioc.injection.dao.InjectionDAOImpl"></bean> 设值注入就是自动的调用类的set方法,也就是在InjectionServiceImpl中必须要有一个叫做injectionDAO的方法,SpringIOC会自动调用这个方法,为其赋值
    查看全部
    0 采集 收起 来源:Spring注入方式

    2018-03-22

  • 设值注入
    查看全部
    0 采集 收起 来源:Spring注入方式

    2017-01-07

举报

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

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