Spring
冰蛙ing
千帆驶尽回眸望,仍是初少年
展开
-
Spring核心功能IOC和AOP详解
1、IOC和DIIOC: 控制反转即控制权的转移,将我们创建对象的方式反转了,以前对象的创建是由我们开发人员自己维护,包括依赖关系也是自己注入。使用了spring之后,对象的创建以及依赖关系可以由spring完成创建以及注入,反转控制就是反转了对象的创建方式,从我们自己创建反转给了程序创建(spring)DI: Dependency Injection 依赖注入spring这个容器中,替你管理着一系列的类,前提是你需要将这些类交给spring容器进行管理,然后在你需要的时候,不是自己去定义,而是原创 2020-09-27 16:00:19 · 356 阅读 · 0 评论 -
SpringBoot开发:模板引擎Thymeleaf
目录 1. 引入2. 什么是模板引擎?3. Thymeleaf1. 简介2. 导入Thymeleaf3. 使用Thymeleaf4. 简单测试5. thymeleaf语法1、th属性2、标准表达式语法 本文主要介绍SpringBoot给我们推荐的Thymeleaf模板引擎,这是一个高级语言的模板引擎,语法更简单且功能更强大 参考:https://www.jianshu.com/p/7c27c50f24ec 1. 引入 在以前,我们通常将前端交给我们的html..原创 2020-09-27 13:46:45 · 264 阅读 · 0 评论 -
spring的特性?谈谈你对spring的理解?spring用来干嘛?
spring有两大核心,IOC和AOPIOC即控制反转,通常我们在项目当中需要手动new去创建对象,这种方式不利于对对象的管理,现在我们将对象的创建权利反转给spring容器,这就是控制反转。spring容器在实例化对象的时候,会根据对象之间的依赖关系,自动完成属性注入工作,这就是依赖注入AOP即面向切面编程,底层是通过动态代理的机制来实现的,支持jdk和cglib两种。默认通过jdk动态代理。通常我们在项目当中,一些公共功能的实现可以通过aop来进行解耦和统一实现,比如事务管理、日志、权限等等。原创 2020-07-31 10:15:36 · 409 阅读 · 0 评论 -
aop的实现原理
首先通过aop配置切面以及切面的增强逻辑,当spring的容器中目标类的对象的方法被调用时,aop框架就会拦截此次调用,aop框架会帮你生成一个动态代理对象,先运行增强类中的前置增强方法,再运行原业务类的业务方法,最后再运行增强类的后置增强方法注意:aop默认通过jdk提供的proxy来生成动态代理对象,但是也可以手动指定使用cglib来生成动态代理对象...原创 2020-07-30 10:54:04 · 409 阅读 · 0 评论 -
springmvc的原理?springmvc的工作流程?springmvc的源码你看过吗?
首先请求到达核心控制器dispatcherServlet,dispatcherServlet会判断请求后缀是否满足格式要求,如果满足格式要求,会查询handlerMapping,查找对应的handler,调用handlerAdapter进行参数绑定等适配工作,之后调用具体的handler进行业务逻辑处理,返回一个modelAndView对象给dispatcherServlet。dispatcherServlet调用viewResolver进行视图解析渲染,然后返回给客户端(回答这些就足够了)Dispatc原创 2020-07-30 10:52:30 · 240 阅读 · 0 评论 -
业务层的事务控制
1.事务怎么控制的?sqlsession.commit() sqlsession.roolback()connection.commit() connection.roolback()2.控制事务的关键对象是谁? connection3.怎么从业务层获取到连接对象? 将连接池对象注入到service实现类中,从而获取到连接对象 4.代码冗余由于将连接池注入到service之后,手动控制增删改的事务 出现了大量的代码冗余 解决该问题可以使用面向切面编程5.编码示例MyTra原创 2020-07-13 18:11:41 · 380 阅读 · 0 评论 -
Spring整合Mybatis
1、Spring先整合Mybatis框架。1.1.引入spring和mybatis的相关jarspring相关 mybatis相关 mysql驱动jar mybatis-spring 集成包1.2.如何整合?整合思路是什么?spring 项目管理框架(组件对象创建 使用 销毁)mybatis 数据持久层的框架 底层封装了jdbc 简化了数据库的操作将第三方框架的核心对象交由工厂管理 1.3.mybatis中有哪些核心组件 sqlsession dao对象 sq原创 2020-07-13 18:00:45 · 93 阅读 · 0 评论 -
Spring如何管理复杂对象
spring如何管理复杂对象?1、实现接口创建一个类,实现FactoryBean接口,并且制定当前对象的类型public class CalenDarFactoryBean implements FactoryBean {//复杂对象的创建方式@Overridepublic Calendar getObject() throws Exception { Calendar calendar = Calendar.getInstance(); return calendar;}/原创 2020-07-13 17:45:38 · 232 阅读 · 0 评论