ioc

Castle 开发系列文章

杀马特。学长 韩版系。学妹 提交于 2020-03-12 06:55:55
Castle是针对.NET平台的一个开源项目,从数据访问框架ORM到IOC容器,再到WEB层的MVC框架、AOP,基本包括了整个开发过程中的所有东西,为我们快速的构建企业级的应用程序提供了很好的服务。4月份以来,Terrylee写了一系列的Castle的文章,这里做一下总结,后续还有Facility系列等,本部分内容会不断的更新。 第一部分:ActiveRecord学习实践系列 1. Castle ActiveRecord学习实践(1):快速入门指南 2. Castle ActiveRecord学习实践(2):构建配置信息 3. Castle ActiveRecord学习实践(3):映射基础 4. Castle ActiveRecord学习实践(4):实现One-Many关系的映射 5. Castle ActiveRecord学习实践(5):实现Many–Many关系的映射 6. Castle ActiveRecord学习实践(6):延迟加载和使用Where子句 7. Castle ActiveRecord学习实践(7):使用HQL查询 8. Castle ActiveRecord学习实践(8):数据有效性的验证 9. Castle ActiveRecord学习实践(9):使用ActiveRecord的一些技巧 10. Castle ActiveRecord学习实践(10)

SpringBoot 学习笔记

不打扰是莪最后的温柔 提交于 2020-03-11 09:15:01
1.SpringBoot 2.SpringBoot 核心注解 @SpringbootApplication 相当于 @Configuration,@ComponentScan,@EnableAutoConfiguration 1) @Configuration JavaConfig 形式的 Spring IOC 容器的配置文件: springmvc-servlet.xml(sts spring-ssm) 任何一个标注了 @Bean 的方法,其返回值作为一个 bean 定义注册到 Spring 的 IoC 容器,方法名将默认成该 bean 定义的 id 2) @ComponentScan: 自动扫描并加载符合条件的组件 (比如 @Component 和 @Repository 等)或者 bean 定义,最终通过注解 @EnableAutoConfiguration 将这些 bean 定义加载到 IoC 容器中 3) @EnableAutoConfiguration: 借助 @Import 的帮助,将所有符合自动配置条件的 bean 定义加载到 IoC 容器 来源: https://www.cnblogs.com/dxjx/p/12460278.html

Spring中的IOC是什么意思

大憨熊 提交于 2020-03-11 02:22:34
这里是修真院后端小课堂,每篇分享文从 【背景介绍】【知识剖析】【常见问题】【解决方案】【编码实战】【扩展思考】【更多讨论】【参考文献】 八个方面深度解析后端知识/技能。 大家好,我是IT修真院武汉分院的汪天驰,一枚正直纯洁善良的java程序员。 今天给大家分享一下,修真院官网java任务1,深度思考中的知识点—— Spring中的IOC是什么意思 (1)背景介绍: Spring是一个开源的轻量级Java SE(Java 标准版本)/Java EE(Java 企业版本)开发应用框架,其目的是用于简化企业级应用程序开发。 应用程序是由一组相互协作的对象组成。 Spring框架除了帮我们管理对象及其依赖关系,还提供像通用日志记录、性能统计、安全控制、异常处理等面向切面的能力, 还能帮我管理最头疼的数据库事务,本身提供了一套简单的JDBC访问实现,提供与第三方数据访问框架集成(如Hibernate、JPA),与各种Java EE技术整合(如Java Mail、任务调度等等),提供一套自己的web层框架Spring MVC、而且还能非常简单的与第三方web框架集成。 从这里我们可以认为Spring是一个超级粘合平台,除了自己提供功能外,还提供粘合其他技术和框架的能力,从而使我们可以更自由的选择到底使用什么技术进行开发。 Spring IOC SpringIOC-Iversion of

Spring5源码分析(三):依赖注入源码

寵の児 提交于 2020-03-11 01:48:36
写在前面 在分析 Spring依赖注入 的过程之前,建议您先了解: Spring IOC 源码解析 ,这样或许会让你的思路更加清晰。 1.依赖注入介绍 依赖注入,即 Spring 中的 DI(Dependency Injection) 在我们学习 Spring 的使用时,我们最熟悉它的特点是: IOC 控制反转 和 DI 依赖注入 。Spring 通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体将其所依赖的对象的引用传递给它。也可以说,依赖被注入到对象中。 书面介绍 :依赖注入,就是指对象是被动的接受依赖类而不是自己主动去寻找。 也就是说对象不是从IOC容器中查找它的依赖类,而是在容器实例化对象的时候,已经将该对象所依赖的类注入给了该对象。 2.何时进行依赖注入 当 Spring IOC 容器启动时完成 定位 、 加载 、 注册 操作,此时 IOC容器已经获取到 applicationContext.xml 配置文件中的全部配置,并以 BeanDefinition 类的形式保存在一个名为:beanDefinitionMap 的 ConcurrentHashMap 中。如下所示: //存储注册信息的BeanDefinition private final Map < String , BeanDefinition > beanDefinitionMap = new

Spring 03 依赖注入

有些话、适合烂在心里 提交于 2020-03-10 11:35:55
依赖注入:Dependency Injection。它是 spring 框架核心 ioc 的具体实现。 我们的程序在编写时,通过控制反转,把对象的创建交给了 spring,但是代码中不可能出现没有依赖的情况。 ioc 解耦只是降低他们的依赖关系,但不会消除。例如:我们的业务层仍会调用持久层的方法。 那这种业务层和持久层的依赖关系,在使用 spring 之后,就让 spring 来维护了。 简单的说,就是坐等框架把持久层对象传入业务层,而不用我们自己去获取。 构造函数注入 使用类中的构造函数,给成员变量赋值。注意,赋值的操作不是我们自己做的,而是通过配置的方式,让 spring 框架来为我们注入。 /** */ public class AccountServiceImpl implements IAccountService { private String name ; private Integer age ; private Date birthday ; public AccountServiceImpl ( String name , Integer age , Date birthday ) { this . name = name ; this . age = age ; this . birthday = birthday ; } @Override public

Spring核心技术之Ioc和AOP

烂漫一生 提交于 2020-03-10 07:52:08
一、Spring应用环境的配置: 1. 在classpath中添加以下包: 1) SPRING_HOME/dist/spring.jar、 2) SPRING_HOME/lib/jakarta-commons/commons-logging.jar 3) SPRING_HOME/lib/log4j/log4j-1.2.xx.jar 2.在classpath中添加Spring的配置文件:applicationContext.xml 在SPRING_HOME/samples/jpetstore/war/WEB-INF目录下有样板文件。 二、IoC容器: 1. IoC概念:反向控制、控制反转。对象不需要主动去查找依赖类的实例。而是由其它应用给它注入。 DI:依赖注入。 2. Spring对IoC的支持:Spring 提供了BeanFactory和ApplicationContext这两种IoC容器,来帮助你管理Bean、Bean之间的依赖关系以及Bean的生命周期。 三、Spring中IoC: 1. Bean装配:在Spring配置文件中用<bean>标记来装配一个Bean. <bean id="Bean在Spring容器中的唯一标识" class="Bean类的全限定名">...</bean> 2. 用setter方法注入它的依赖类: 1)

Spring框架学习的第三天(SpringIOC注解开发和SpringDI注解开发_Spring注解开发操作数据库完成增删改查)

为君一笑 提交于 2020-03-10 04:04:22
一、SpringIOC注解开发 1.pom.xml导入依赖 <!--Spring依赖--> <dependencies> <!--spring核心依赖--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.2.4.RELEASE</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.13</version> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.12</version> </dependency> </dependencies> 2.@Component注解替代bean标签完成SpringIOC中对象的配置 3.在实际项目开发时使用的是Component衍生的注解,Spring中提供了与Component等效的三个注解:@Service @Controller @Repository 3.1

Spring MVC

☆樱花仙子☆ 提交于 2020-03-09 05:00:55
Spring IOC/DI IOC:控制反转(Inverse Of Control) DI:依赖注入(Dependency Injection) Spring是一个基于IOC和AOP的结构J2EE系统的框架 IOC 反转控制 是Spring的基础,Inversion Of Control 简单说就是创建对象由以前的程序员自己new 构造方法来调用,变成了交由Spring创建对象 DI 依赖注入 Dependency Inject. 简单地说就是拿到的对象的属性,已经被注入好相关值了,直接使用即可。 AOP AOP 即 Aspect Oriented Program 面向切面编程 首先,在面向切面编程的思想里面,把功能分为核心业务功能,和周边功能。 所谓的核心业务,比如登陆,增加数据,删除数据都叫核心业务 所谓的周边功能,比如性能统计,日志,事务管理等等 周边功能在Spring的面向切面编程AOP思想里,即被定义为切面 在面向切面编程AOP的思想里面,核心业务功能和切面功能分别独立进行开发 注解 拦截器 来源: CSDN 作者: 冰原狼 链接: https://blog.csdn.net/qq_38025939/article/details/104719822

干货 | 速速收藏:五分钟带你了解Spring IOC原理!

岁酱吖の 提交于 2020-03-08 22:34:10
spring容器高层视图 Spring 启动时读取应用程序提供的Bean配置信息,并在Spring容器中生成一份相应的Bean配置注册表,然后根据这张注册表实例化Bean,装配好Bean之间的依赖关系,为上层应用提供准备就绪的运行环境。 Bean缓存池:HashMap实现 IOC容器介绍 Spring 通过一个配置文件描述 Bean 及 Bean 之间的依赖关系,利用 Java 语言的反射功能实例化 Bean 并建立 Bean 之间的依赖关系。 Spring 的 IoC 容器在完成这些底层工作的基础上,还提供了 Bean 实例缓存、生命周期管理、 Bean 实例代理、事件发布、资源装载等高级服务。 BeanFactory 是 Spring 框架的基础设施,面向 Spring 本身; ApplicationContext 面向使用 Spring 框架的开发者,几乎所有的应用场合我们都直接使用 ApplicationContext 而非底层的 BeanFactory。 BeanFactory BeanFactory体系架构: BeanDefinitionRegistry : Spring 配置文件中每一个节点元素在 Spring 容器里都通过一个 BeanDefinition 对象表示,它描述了 Bean 的配置信息。而 BeanDefinitionRegistry

easySpring | 手写SpringIOC、AOP

被刻印的时光 ゝ 提交于 2020-03-08 18:49:49
easySpring 在学到Java的Spring容器概念这里,我参考网上的博客和自己的理解实现了一个简易的Spring容器也就是这个项目。该项目分为 up 和 down 两部分。 up 模块只实现了最简单的IOC和AOP功能,两者并没有联系起来。 后来在 down 中实现了更复杂的IOC、AOP功能,并使两者能够很好地进行协作。 1. 简单的IOC和AOP的实现 1.1 简单的IOC容器实现 先从简单的 IOC 容器实现开始,最简单的 IOC 容器只需4步即可实现,如下: 加载 xml 配置文件,遍历其中的 标签 获取标签中的 id 和 class 属性,加载 class 属性对应的类,并创建 bean 遍历 标签中的 标签,获取属性值,并将属性值填充到 bean 中 将 bean 注册到 bean 容器中 代码结构如下: SimpleIOC // IOC 的实现类,实现了上面所说的4个步骤 SimpleIOCTest // IOC 的测试类 Car // IOC 测试使用的 bean Wheel // 同上 ioc . xml // bean 配置文件 容器实现类 SimpleIOC 的代码: package easySpring . up . ioc ; import org . w3c . dom . Document ; import org . w3c . dom .