Spring
夏与ta
这个作者很懒,什么都没留下…
展开
-
spring mvc实现流程原理
没有主方法,依赖于tomcat启动。tomcat 也是Java写的,有主方法。 先有tomcat,servlet,后出现Springmvc框架 //mvc是用来前后交互。model ,views,ctrl. tomcat 和Springmvc如何交互? tomcat启动查看web.xml。 tomcat只识别servlet。 linux之下 statr.sh启动, 5. 然后,调用******catalina.sh记录了主方法所在路径也就是bootstrap所在路径。 .原创 2022-03-28 19:51:02 · 746 阅读 · 0 评论 -
spring boot启动流程
0. 启动main方法开始 1.初始化配置:通过类加载器,(loadFactories)读取classpath下所有的spring.factories配置文件,创建一些初始配置对象;通知监听者应用程序启动开始,创建环境对象environment,用于读取环境配置 如 application.yml 2.创建应用程序上下文-createApplicationContext,创建 bean工厂对象 3.刷新上下文(启动核心) 3.1 配置工厂对象,包括上下文类加载器,对象发布处理器,beanFactor.原创 2022-03-28 15:59:15 · 939 阅读 · 0 评论 -
linux常用命令
磁盘管理 pwd 显示当前路径 ll 显示目录下的文件详细信息。开头是 ‘-’是文件,是‘d’是文件夹。ll 可以加上一个目路径。显示一个目录下的列表。 ls 显示文件的文件名。不同颜色是不同的文件或文件夹。也可以加上一个路径名。显示路径下的文件。 cd 路径 跳转。 文件管理命 mkdir 创建一个目录 rm 删除文件。参数删除一个目录,需要参数 -rf cp 文件名 新文件名 复制文件为新名字的文件。 cp 文件名 /路径/路径/ 将源文件 以原名方式复制 cp -rf 文件夹 。复制原创 2022-03-12 09:35:41 · 79 阅读 · 0 评论 -
spring事务
事务: 事务是指是程序中一系列严密的逻辑操作,而且所有操作必须全部成功完成 事务四特性: ● 原子性(Atomicity):操作这些指令时,要么全部执行成功,要么全部不执行。只要其中一个指令执行失败,所有的指令都执行失败,数据进行回滚,回到执行指令前的数据状态。 ● 一致性(Consistency):事务的执行使数据从一个状态转换为另一个状态,但是对于整个数据的完整性保持稳定。 ● 隔离性(Isolation):隔离性是当多个用户并发访问数据库时,比如操作同一张表时,数据库为每一个用户原创 2022-03-12 09:30:51 · 89 阅读 · 0 评论 -
当同一个接口的有多个实现类时如何知道注入哪一个
@Qualifier 注解 当有多个相同类型的bean却只有一个需要自动装配时,将@Qualifier 注解和@Autowire 注解结合使用以消除这种混淆,指定需要装配的确切的bean。原创 2022-03-12 09:18:25 · 381 阅读 · 0 评论 -
spring bean生命周期
spring容器从xml文件中读取bean的定义并实例化bean, spring根据bean的定义填充所有属性。 如果bean实现了BeanNameAware接口,spring传递bean的id到setBeanName方法。 如果bean实现了beanFactoryAware接口,spring传递beanfactory给setBeanfactory方法 如果有任何玉 bean相关联的beanpostprocessprs,springpostProcesserBeforeInitialization(原创 2022-03-12 09:15:13 · 325 阅读 · 0 评论 -
spring模块组成
spring-core: core包是框架最基础的部分,提供依赖注入管理bean容器的功能 context: 核心模块bean工厂使得spring成为一个容器。上下文模块使他成为一个框架。这和模块消息,事务传播以及验证的支持。 aop 面向切面编程,实现了业务和系统服务的解耦和。可以不修改源代码的情况下增强代码逻辑。 spring dao 对传统JDBC进行抽象 mvc 为构建web提供功能全面的mvc框架。 orm 关系映射模块。为流行的关系对象映射api提供集成层 ...原创 2022-03-12 09:02:36 · 70 阅读 · 0 评论 -
使用Spring的好处
轻量级:spring的大小基本只有2mb; 控制反转:对象给出他们的以来而不是创建或查找以来的对象们 面向切面aop:将应用业务逻辑和系统服务分开 容器:spring 包含并管理应用中对象放入生命周期和配置。 mvc框架 事务管理:spring提供持续的事务管理接口 异常处理 ...原创 2022-03-12 08:50:37 · 151 阅读 · 0 评论 -
jdk动态代理小例子
jdk动态代理: 需要:接口;接口实现类;InvocationHandler实现类;测试类 代理要求:要求被代理的对象实现了一个接口; 代理:InvocationHandler实现类中重写的invoke方法;就是生成的代理对象实际执行的方法;其中Method就是明星接口的方法; 在测试类中使用Proxy生成代理对象; 方法入参有:被代理类的类加载器;被代理类的接口信息;和被代理类的InvocationHandler实现类; 明星接口实现类 import aop...原创 2022-01-16 12:13:22 · 157 阅读 · 0 评论 -
aspectj框架的使用
加入依赖,spring依赖和aspectj依赖。 创建目标类,接口和实现类。给这个类中加上方法。 创建切面类。 在类之上加上@Aspect 在这个类的方法上加上注解表示在哪里值为切入表达式。 创建spring配置文件,声明对象,把对象交给容器统一管理,声明对象可以用配置文件也可以用注解。 声明目标类 声明切面类 声明aspectj框架中的自动代理生成器标签。自动代理生成器用来完成对对象的创建。 5. 生成测试类。 joinpoint这个参数...原创 2022-01-02 17:39:44 · 298 阅读 · 0 评论 -
Spring 个人理解简介
什么是spring: 是一个框架,核心技术是ioc,aop实现解耦合。 是一个容器,容器中存放的是JAVA对象,需要做的是吧对象放入容器中。 开源框架 怎么使用spring: spring是一个容器,把项目中的对象放入容器中。 让容器完成对象的创建,管理对象之间的关系(属性赋值)。 程序从容器中获取对象。 什么样的对象放入容器呢 dao service controller util这些类统一放到容器中 spring中的对象默认都是单例的,在容器中叫这个名称的对象只有一个。 什么不放去spr原创 2022-01-02 17:32:26 · 234 阅读 · 0 评论 -
Spring aop
底层是动态代理 jdk动态代理 使用jdk反射包中的类实现代理对象的功能。 要求:目标类必须实现接口 cglib动态代理 使用第三个方工具库,实现代理类对象的创建。 要求目标类可以被继承,不能是final限定 目标类通过继承,生成和改写目标类。 原理:继承,子类就是代理对象。 aop被看作是动态代理规范化,把实现动态代理的步骤规范化。 切面的三要素 切面功能 切面设置位置(在哪个方法上) 切面设置时间(方法的前后环) aop的作用 不修改源代码的情况下增加原创 2022-01-02 17:30:58 · 260 阅读 · 0 评论