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

Spring入门篇

moocer JAVA开发工程师
难度中级
时长 7小时 0分
  • public class A{ private String username; private String password; public A(String username,String password){ this.username=username; this.password=password; } } <bean id="a" class="com.entity.A" > <constructor name="username" value="admin"/> <constructor name="password" value="zht" /> </bean> 不需要一个属性对应一个参数的构造方法,多个属性在同一个构造方法配置多个参数也可以. 如果在<constructor-arg value="">标签上没有设置name属性.它会根据bean实体类中构造方法的定义顺序进行初始化.
    查看全部
  • 使用依赖depends-on depends-on属性表示该bean初始化之前强制执行指定的一个或者多个bean初始化. 在初始化animals之前强制初始化person与dog. <beans> <bean id="animals" class="com.own.entity.Animals" depends-on="person,dog" > <..> </bean> <bean id="person" class="com.own.entity.Person"> <..> </bean> <bean id="dog" class="com.own.entity.Dog"> <..> </bean> </beans> 默认情况下IOC容器会在启动时实例化并初始化所有的bean(如果是设置注入方式则先创建bean,再用set()方法初始化,创建与初始化bean的顺序默认是按照xml中配置bean的顺序,如果是构造注入方式则创建bean的时候便进行了初始化.) 延迟初始化bean(使用lazy-init属性) 项目中bean很多时,会给系统造成负担,可以使用lazy-init属性来标注bean延迟初始化,在需要的时候IOC再将它初始化,默认为false. 无论是<property>,还是<constructor-arg>标签,IOC容器启动时只会创建没有使用lazy-init属性配置的bean.当用到使用了lazy-init="true"的bean的时候,IOC容器才创建该bean.(其实IOC容器内部也是要通过new关键字创建对象) <bean id="animals" class="com.own.entity.Animals" lazy-init="true"/> 如果所有bean都延迟初始化,则直接: <beans default-lazy-init="true" > </beans>
    查看全部
  • bean的销毁 bean使用后需要及时销毁,这样及时释放内存而不是等待java虚拟机自动回收. 有两种方式: 1.在配置文件中通过destroy-method属性来销毁. 在bean的实体类中增加一个销毁方法,名称任意.然后在bean中配置destroy-method属性指明销毁bean的方法.如果将所有的bean都统一定义一个同样名称的销毁方法, 可以直接<beans default-destroy-method="destroy"> public class A{ private String username; public destroy(){ this.username=""; } } <bean id="a" class="A" destroy-method="destroy" /> 2.实现DisposableBean接口. bean的实体类实现此接口,此接口有一个destroy()方法,通过实现此接口,重写destroy方法,在方法里编写销毁bean的操作.不需要在配置文件中配置. 当调用ApplicationContext的销毁方法之后,IOC容器会自动调用destroy方法来进行销毁.
    查看全部
  • bean的使用 在Spring中配置完bean后,有3种方式来获得配置好的每一个bean. 1.使用BeanWrapper(没什么用) 2.使用BeanFactory 3.使用Application 1.BeanWrapper接收任意单个类作为参数来初始化一个BeanWrapper,他可以读取Bean内部的属性并给属性赋值. BeanWrapper bw=new BeanWrapperImpl(new User()); bw.setPropertyValue("username","admin"); 2.使用BeanFactory获取bean BeanFactory factory=new XmlBeanFactory(new ClassPathResource("xxx.xml")); factory.getBean(""); 3.使用ApplicationContext获取bean ApplicationContext factory=new ClassPathXmlApplicationContext("xxx.xml"); factory.getBean("");
    查看全部
  • Bean的生命周期 1.bean的初始化 2.bean的使用 3.bean的销毁 bean的初始化有两种方式 1.在配置文件中的<bean>标签使用init-method属性指定初始化方法来完成初始化. 在bean的实体类中增加一个初始化方法,方法名任意,然后在bean的配置中通过init-method来指定初始化的方法. public class A{ private String username; public void init(){ this.username="admin" } } <bean id="a" class="A" init-method="init /> 那么在a新建的时候就会调用init-method指定的方法完成a的部分初始化工作. 如果给所以bean的初始化方法都定义为同样的名称,则可以直接<beans default-init-method="init">. 2.实现InitializingBean接口. 该接口中有一个afterPropertiesSet()方法,在该方法完成初始化工作. IOC容器新建a实体的时候就会调用afterPropertiesSet()方法进行实体的初始化工作. xml配置文件不需要添加额外的配置. xml配置文件中就不用对初始化了的属性进行依赖注入,如果配置了系统会忽略.
    查看全部
  • Bean作用域
    查看全部
  • CGLIB代理的工作原理是在运行时生成目标类的子类,Spring配置这个生成的子类委托方法调用到原来的目标 子类是用来实现Decorator模式,织入通知
    查看全部
  • Proxying interfaces
    查看全部
  • ProxyFactoryBean3
    查看全部
  • ProxyFactoryBean2
    查看全部
  • ProxyFactoryBean
    查看全部
  • pointcut SpringAop
    查看全部
  • SpringAop不是为了提供完整的AOP实现,而是为了整合SpringIoc,帮助企业解决常见问题。
    查看全部
  • AOP实现方式
    查看全部
  • @Bean init和destroy方法
    查看全部

举报

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

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