Spring
文章平均质量分 86
罗罗的1024
做个幸福的小吃货
展开
-
Spring源码分析--IOC容器篇
一、环境准备我们以xml配置文件示例<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/bea原创 2021-04-24 00:51:00 · 256 阅读 · 0 评论 -
Spring注册Bean的几种方式
方式一:基于XML <bean id="service" class="com.luo.service.ServiceImpl"></bean>方式二:基于@Configuration、@Bean@Configurationpublic class AppConfig { @Bean("student") public Student student(){ Student student = new Student(); s原创 2020-09-16 21:50:08 · 773 阅读 · 0 评论 -
FactoryBean和BeanFactory的区别
FactoryBean :是一个工厂Bean,可以生成某一个类型Bean实例,它最大的一个作用是:可以让我们自定义Bean的创建过程。BeanFactory :是Spring容器中的一个基类,也是很重要的一个类,在BeanFactory中可以创建和管理Spring容器中的Bean,它对于Bean的创建有一个统一的流程。FactoryBean看看源码是怎么说的package org.springframework.beans.factory;import org.springframework.l原创 2020-09-16 14:10:48 · 679 阅读 · 0 评论 -
手写模仿Spring容器
DAO层public interface Dao { public void dao();}public class DaoImpl implements Dao { @Override public void dao() { System.out.println("dao"); }}Service 层public interface Service { public void service();}public class Se原创 2020-09-15 16:08:42 · 517 阅读 · 0 评论 -
spring框架中Test单元测试的使用
import com.luo.spring.service.MyService;import org.junit.Test;import org.junit.runner.RunWith;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.test.context.ContextConfiguration;import org.springframework.test.co原创 2020-09-10 11:57:34 · 891 阅读 · 0 评论 -
什么是AOP切面编程
AOP(Aspect Oriented Programming)称为面向切面编程,它利用一种称为“横切”的技术,剖解开封装的对象内部,并将那些影响了多个类的公共行为封装到一个可重用模块,并将其名为“Aspect”,即方面。所谓“方面”,简单地说,就是将那些与业务无关,却为业务模块所共同调用的逻辑或责任封装起来,便于减少系统的重复代码,降低模块间的耦合度,并有利于未来的可操作性和可维护性。AOP代表的是一个横向的关系,在程序开发中主要用来解决一些系统层面上的问题,比如日志,事务,权限,安全控制,等待,性能统计原创 2020-09-05 22:07:29 · 1846 阅读 · 1 评论 -
spring的自动装配
基于XML的自动装配Autowiredefault/no:不自动装配byName: 根据名字进行装配,以属性名作为id,在容器中查找这个组件进行赋值byType:根据类型进行装配constructor: 使用构造器*byName<bean id="person" class="com.luo.spring.bean.Person" autowire="byName"/>bean id="car" class="com.luo.spring.bean.Car">原创 2020-08-31 10:20:02 · 1454 阅读 · 4 评论 -
spring中bean的生命周期
我们前面已经知道,bean组件如果是单例的,那么在创建IOC容器完成时就已经创建和初始化了,如果是多实例,那么在使用时才创建,那么什么时候关闭呢?通过查看继承树,发现在ConfigurableApplicationContext接口中存在close方法。接下来我们自定义bean的生命周期看看,是不是这么一个过程。<bean id="car" class="com.luo.spring.bean.Car" init-method="init" destroy-method="destroy"&原创 2020-08-30 16:32:14 · 271 阅读 · 1 评论 -
来了解下spring的FactoryBean工厂模式
说到工厂模式,相信大家都很熟悉,我简单的帮回顾回顾吧看图,哈哈~~要在spring中实现工厂模式,由很多方式,下面我列举几种静态工厂直接通过工厂获取实例。public class CarStaticFactory { private static Car getCar(String name){ Car car = new Car(); car.setName(name); return car; }}<!--facto原创 2020-08-30 11:47:56 · 1025 阅读 · 1 评论 -
spring基础(二)
bean 的作用域prototype 多实例singleton 单实例requestsession示例prototype <bean id="person" class="com.luo.spring.bean.Person" scope="prototype"> <property name="age" value="12"></property> <property name="name" value="luo">&原创 2020-08-30 10:27:08 · 220 阅读 · 0 评论 -
spring基础(一)
引用类型的赋值操作如果想对一个引用类型赋值为null,怎么办呢?是这样操作吗public class Person { public String name; private Integer age; private Car car;}--------------------------------<bean class="com.luo.spring.bean.Person"> <property name="age" value="原创 2020-08-30 00:21:59 · 272 阅读 · 1 评论 -
超详细的Spring使用
加载IOC容器的配置文件一般我们都是用的ClassPathXmlApplicationContext,见名知意,加载在类路径下的配置文件,此外,我们还可以使用FileSystemXmlApplicationContext,来加载磁盘中的配置文件。使用,在配置文件中注册bean<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"原创 2020-08-29 20:23:54 · 291 阅读 · 0 评论 -
spring的简单介绍
spring简介Spring是一个开源框架,使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。下面是spring的框架结构根据这个框架结构图,可以明显的看到,核心容器是spring框架的基础,所有的Spring模块都是在核心容器之上构建的。spring的优势1、非侵入式设计Sp原创 2020-08-29 18:55:48 · 743 阅读 · 0 评论