
spring
文章平均质量分 72
点滴~
进阶中的工程师
展开
-
在MyBatis整合到Spring的过程中,调用DAO(数据访问对象)方法时,实际上是通过调用SQL的代理对象来实现的,这个代理对象是在Spring容器启动时生成的
因此,MyBatis整合到Spring后,调用DAO方法时所使用的SQL代理对象,是在Spring容器启动时,通过扫描Mapper接口并创建来生成的。这个代理对象利用Java的动态代理机制实现,能够拦截对Mapper接口方法的调用,并将其转发给MyBatis的SqlSession执行。原创 2025-03-24 23:48:34 · 400 阅读 · 0 评论 -
在Spring Boot中,可以通过实现一些特定的接口来拓展Starter
通过实现上述接口,开发者可以灵活地拓展Spring Boot Starter的功能。这些接口允许开发者在Spring Boot应用程序的不同阶段进行自定义处理,从而实现复杂的功能和配置。在创建自定义Starter时,可以根据具体需求选择合适的接口来实现。在Spring Boot中,开发者可以通过实现一些特定的接口来拓展Starter。这些接口允许开发者自定义Spring Boot应用程序的配置和行为,从而创建功能丰富且易于使用的Starter。原创 2025-03-24 23:43:28 · 588 阅读 · 0 评论 -
Spring Boot启动过程?
Spring Boot 的启动过程是一个复杂且有序的流程,它整合了 Spring 框架的众多特性,并进行了自动化配置,以快速搭建起一个可用的应用程序。通过以上步骤,Spring Boot 实现了从应用启动到运行的自动化流程,大大简化了 Java 应用的开发和部署过程。原创 2025-02-26 23:55:13 · 1035 阅读 · 0 评论 -
Spring相关知识点
spring原创 2025-02-19 23:05:39 · 105 阅读 · 0 评论 -
【尚硅谷】spring学习笔记(6):Bean 的作用域
<!-- 使用bean的scope属性来配置bean的作用域 singleton:默认值.容器初始时创建bean实例.在整个容器的生命周期内只创建这个bean.单例的. prototype:原型的.容器初始化时不创建bean实例.而在每次请求时都创建一个新的bean实例,并返回. --> <bean id="ca...原创 2018-06-08 15:44:33 · 204 阅读 · 0 评论 -
【尚硅谷】spring学习笔记(13):组件装配
组件装配<context:component-scan> 元素还会自动注册 AutowiredAnnotationBeanPostProcessor 实例, 该实例可以自动装配具有 @Autowired 和 @Resource 、@Inject注解的属性.使用 @Autowired 自动装配 Bean@Autowired 注解自动装配具有兼容类型的单个 Bean属性构造器, 普通字段(...原创 2018-06-15 15:28:01 · 320 阅读 · 0 评论 -
【尚硅谷】spring学习笔记(14):spring AOP基础-动态代理
代码混乱:越来越多的非业务需求(日志和验证等)加入后, 原有的业务方法急剧膨胀. 每个方法在处理核心逻辑的同时还必须兼顾其他多个关注点. 代码分散: 以日志需求为例, 只是为了满足这个单一需求, 就不得不在多个模块(方法)里多次重复相同的日志代码. 如果日志需求发生变化, 必须修改所有模块.动态代理:package com.atguigu.spring.aop;public interfac...原创 2018-06-23 16:07:58 · 473 阅读 · 1 评论 -
【尚硅谷】spring学习笔记(7):配置Bean使用外部属性文件
在配置文件里配置 Bean 时, 有时需要在 Bean 的配置里混入系统部署的细节信息(例如: 文件路径, 数据源配置信息等). 而这些部署细节实际上需要和 Bean 配置相分离Spring 提供了一个 PropertyPlaceholderConfigurer 的 BeanFactory 后置处理器, 这个处理器允许用户将 Bean 配置的部分内容外移到属性文件中. 可以在 Bean 配置文件里...原创 2018-06-09 16:04:17 · 208 阅读 · 0 评论 -
【尚硅谷】spring学习笔记(8):SpEL
public class Address { private String city; private String street; public String getCity() { return city; } public void setCity(String city) { this.city = city; } public String getStree...原创 2018-06-09 20:21:57 · 212 阅读 · 0 评论 -
【尚硅谷】spring学习笔记(9):spring IOC 容器可以管理 Bean 的生命周期
Spring IOC 容器可以管理 Bean 的生命周期, Spring 允许在 Bean 生命周期的特定点执行定制的任务. Spring IOC 容器对 Bean 的生命周期进行管理的过程:通过构造器或工厂方法创建 Bean 实例为 Bean 的属性设置值和对其他 Bean 的引用调用 Bean 的初始化方法Bean 可以使用了当容器关闭时, 调用 Bean 的销毁方法在 Bean 的声明里设置...原创 2018-06-10 17:57:16 · 453 阅读 · 0 评论 -
【尚硅谷】spring学习笔记(5):继承 Bean和依赖Bean
继承 BeanSpring 允许继承 bean 的配置, 被继承的 bean 称为父 bean. 继承这个父 Bean 的 Bean 称为子 Bean子 Bean 从父 Bean 中继承配置, 包括 Bean 的属性配置子 Bean 也可以覆盖从父 Bean 继承过来的配置父 Bean 可以作为配置模板, 也可以作为 Bean 实例. 若只想把父 Bean 作为模板, 可以设置 <bean&...原创 2018-06-08 11:41:13 · 230 阅读 · 0 评论 -
【尚硅谷】spring学习笔记(4):XML 配置里的 Bean 自动装配
XML 配置里的 Bean 自动装配在 Bean 配置文件里设置 autowire 属性进行自动装配将会装配 Bean 的所有属性. 然而, 若只希望装配个别属性时, autowire 属性就不够灵活了. autowire 属性要么根据类型自动装配, 要么根据名称自动装配, 不能两者兼而有之.一般情况下,在实际的项目中很少使用自动装配功能,因为和自动装配功能所带来的好处比起来,明确清晰的配置文档更...原创 2018-06-08 10:53:04 · 304 阅读 · 1 评论 -
spring之AOP由浅入深
1.AOP的作用 在OOP(面向对象编程 Object Oriented Programming)中,正是这种分散在各处且与对象核心功能无关的代码(横切代码)的存在,使得模块复用难度增加。AOP则将封装好的对象剖开,找出其中对多个对象产生影响的公共行为,并将其封装为一个可重用的模块,这个模块被命名为“切片”(Aspect),切片将那些与业务无关,却被业务模块共同调用的逻辑提取并封装起来,...转载 2018-04-04 18:17:48 · 174 阅读 · 0 评论 -
spring事务管理:什么是事务?
前言我们在实际业务场景中,经常会遇到数据频繁修改读取的问题。在同一时刻,不同的业务逻辑对同一个表数据进行修改,这种冲突很可能造成数据不可挽回的错乱,所以我们需要用事务来对数据进行管理。事务的概念事务必须服从ACID原则。ACID指的是原子性(atomicity)、一致性(consistency)、隔离性(isolation)和持久性(durability)。通俗理解,事务其实就是一系列指令的集合。...转载 2018-04-05 12:46:04 · 11619 阅读 · 0 评论 -
spring注解关键字
spring注解:(1)@Controller 控制器(2)@Autowired 按照类型匹配,可以完成对类成员变量,方法及构造函数进行标注,完成自动装配的工作 @Autowired(required=false) 在找不到匹配Bean时也不报错(3)@Qualifier 注释指定注入bean的名称,防止冲突,可以对成员变量、方法入参、构造函数入参进行标注(4)@Compone...转载 2018-05-10 10:51:04 · 1141 阅读 · 0 评论 -
【尚硅谷】spring学习笔记(10):通过调用工厂方法创建 Bean
通过调用静态工厂方法创建 Bean调用静态工厂方法创建 Bean是将对象创建的过程封装到静态方法中. 当客户端需要对象时, 只需要简单地调用静态方法, 而不同关心创建对象的细节。要声明通过静态方法创建的 Bean, 需要在 Bean 的 class 属性里指定拥有该工厂的方法的类, 同时在 factory-method 属性里指定工厂方法的名称. 最后, 使用 <constrctor-arg...原创 2018-06-13 11:14:04 · 216 阅读 · 0 评论 -
【尚硅谷】spring学习笔记(1):HelloWorld
1、安装SPRING TOOL SUITE 这个 Eclipse 插件。2、搭建spring开发环境,引入jar包。3、创建spring项目3.1、创建一个HelloWorld类public class HelloWorld { private String name; public void setName( String name) { this.name = name; }...原创 2018-06-06 14:10:30 · 1436 阅读 · 1 评论 -
【尚硅谷】spring学习笔记(11):FactoryBean
实现 FactoryBean 接口在 Spring IOC 容器中配置 BeanSpring 中有两种类型的 Bean, 一种是普通Bean, 另一种是工厂Bean, 即FactoryBean. 工厂 Bean 跟普通Bean不同, 其返回的对象不是指定类的一个实例, 其返回的是该工厂 Bean 的 getObject 方法所返回的对象 package com.atguigu.spring.bea...原创 2018-06-13 14:59:43 · 345 阅读 · 0 评论 -
【尚硅谷】spring学习笔记(2):Spring 的 IOC 容器里配置 Bean
配置形式:基于 XML 文件的方式;基于注解的方式在 xml 文件中通过 bean 节点来配置 bean:<!-- 通过 bean 节点配置bean --> <bean id="helloWorld" class="com.atguigu.spring.helloworld.HelloWorld2"> <property name="name" value...原创 2018-06-06 15:20:30 · 266 阅读 · 1 评论 -
【尚硅谷】spring学习笔记(3):引用其它 Bean、内部 Bean、集合属性
引用其它 Bean组成应用程序的 Bean 经常需要相互协作以完成应用程序的功能. 要使 Bean 能够相互访问, 就必须在 Bean 配置文件中指定对 Bean 的引用在 Bean 的配置文件中, 可以通过 <ref> 元素或 ref 属性为 Bean 的属性或构造器参数指定对 Bean 的引用. 也可以在属性或构造器里包含 Bean 的声明, 这样的 Bean 称为内部 Bean...原创 2018-06-07 17:14:09 · 424 阅读 · 1 评论 -
【尚硅谷】spring学习笔记(12):在 classpath 中扫描组件
组件扫描(component scanning): Spring 能够从 classpath 下自动扫描, 侦测和实例化具有特定注解的组件. 特定组件包括:@Component: 基本注解, 标识了一个受 Spring 管理的组件@Respository: 标识持久层组件@Service: 标识服务层(业务层)组件@Controller: 标识表现层组件对于扫描到的组件, Spring 有默认的...原创 2018-06-14 18:33:51 · 320 阅读 · 1 评论 -
Spring MVC 处理Http请求过程
4. DispatcherServlet根据处理器Handler获取处理器适配器HandlerAdapter执行HandlerAdapter处理一系列的操作,如:参数封装,数据格式转换,数据验证等操作。3. 处理器映射器根据请求url找到具体的处理器,生成处理器执行链HandlerExecutionChain(包括处理器对象和处理器拦截器)一并返回给DispatcherServlet。10. DispatcherServlet对View进行渲染视图(即将模型数据model填充至视图中)。原创 2018-04-10 22:06:21 · 793 阅读 · 0 评论