【Java框架】SSM-Spring总结:IOC、DI、AOP、JDBC、事务管理、实际案例
〇、概述
1、常用资料
2、组成
一、控制反转与依赖注入
(一)Spring概述
1、介绍
以IOC和AOP为内核的框架
通过IOC实现控制,使用spring创建对象,与DI描述同一个概念
DI是对象的属性,注入好值,直接使用
2、目录结构
60个jar文件,分三类:class文件,javadoc文档,sources框架源文件
4个模块
core核心工具类
beans所有应用都用到的jar包
context是IOC功能上的扩展服务和企业级服务(如EJB或JNDI)
expression定义表达式语言
(二)控制反转与依赖注入
1、IOC
从IOC容器中关联对象类【通过容器控制应用程序】
创建对象交给IOC容器处理,颠倒控制权,实现控制反转
2、DI
应用程序依赖容器创建并注入所需要的外部资源
3、IOC/DI的实现
(1)Spring核心容器
最基本和最重要的包:BeanFactory&ApplicationFactory
Beans
管理bean的配置文件:applicationContext.xml等,配置bean和内部的属性
BeanFactory工厂模式,可以读取bean的配置文件,通过getBean可以生成bean的对象
ApplicationContext:可以读取文件系统、web系统或类路径
(2)IOC/DI的实现方式
动态注入bean组件中的方式:属性setter方法(添加setter方法)或构造方法(ref="")注入
二、Bean
1、Bean的配置
<bean><property>
2、Bean的作用域
作为bean标签中的一个属性
共7种,最常见的是singleton单例作用域和prototype原型作用域
singleton单例作用域:始终指向同一个对象,是spring默认的作用域
prototype原型作用域:每次创建一个新的bean实例
3、Bean的装配方式
(1)基于XML的装配
两种方式:设置注入(bean中的property)和构造注入(constructor-arg)
(2)基于注解的装配
常用注解:
@Component:泛化方式描述bean
@Repository:数据访问层DAO层的类标识为bean
@Service:业务层的类标识为bean
@Controller:将控制层的类标识为Spring中的Bean
@Autowired:标注对应的变量、方法,完成Bean的自动配置工作【按照Bean类型装配】
@Resource:作用与@Autowired相同【按照Bean的实例名称进行装配】【需要注入的类中注入,写autowired或resource注解标识从哪个bean中拿到】
@Qualifier:与@Autowired注解配合使用,将@Autowired默认的Bean类型装配修改为按Bean的实例名称装配
配置:
基本方式:按照bean的实例进行配置
高效方式:对包内的所有Bean文件进行扫描,配置-<context: component-scan base-package="Bean所在的包路径">
(3)自动装配
三、AOP
四、数据开发
五、事务管理
【Java框架】SSM-Spring总结:IOC、DI、AOP、JDBC、事务管理、实际案例的更多相关文章
- Spring MVC 中使用AOP 进行事务管理--XML配置实现
1.今天写一篇使用AOP进行事务管理的示例,关于事务首先需要了解以下几点 (1)事务的特性 原子性(Atomicity):事务是一个原子操作,由一系列动作组成.事务的原子性确保动作要么全部完成,要么完 ...
- spring IOC DI AOP MVC 事务, mybatis 源码解读
demo https://gitee.com/easybao/aop.git spring DI运行时序 AbstractApplicationContext类的 refresh()方法 1: pre ...
- Spring(IOC、AOP和事务)
目录 Spring介绍 Spring IOC 传统代码对象管理的弊端 实现过程 bean标签属性介绍 对象创建方式 工厂bean bean的作用域 SpringBean的生命周期*** 依赖注入 注解 ...
- Spring之IOC、AOP和事务
IOC 什么是IOC?如果你回答:Spring是个IOC容器,实现原理是反射,没了.这样证明你没有真正理解IOC. IOC的意思是控制反转,还有个外号叫依赖注入(DI).为什么起这么晦涩难懂的名字呢? ...
- Spring MVC 中使用AOP 进行事务管理--注解实现
注解实现实现事务管理很简单,和配置式差不多,配置文件的头文件也要加相应的支持.配置数据源,并开启事务管理支持即可. <bean id="transactionManager" ...
- Spring理解IOC,DI,AOP作用,概念,理解。
IOC控制反转:创建实例对象的控制权从代码转换到Spring容器.实际就是在xml中配置.配置对象 实例化对象时,进行强转为自定义类型.默认返回类型是Object强类型. ApplicationCon ...
- 解释Spring中IOC, DI, AOP
oc就是控制翻转或是依赖注入.通俗的讲就是如果在什么地方需要一个对象,你自己不用去通过new 生成你需要的对象,而是通过spring的bean工厂为你长生这样一个对象.aop就是面向切面的编程.比如说 ...
- spring的IOC和AOP
spring的IOC和AOP 1.解释spring的ioc? 几种注入依赖的方式?spring的优点? IOC你就认为他是一个生产和管理bean的容器就行了,原来需要在调用类中new的东西,现在都是 ...
- spring的IOC和AOP详细讲解
1.解释spring的ioc? 几种注入依赖的方式?spring的优点? IOC你就认为他是一个生产和管理bean的容器就行了,原来需要在调用类中new的东西,现在都是有这个IOC容器进行产生,同时, ...
- Spring的IOC和AOP之深剖
今天,既然讲到了Spring 的IOC和AOP,我们就必须要知道 Spring主要是两件事: 1.开发Bean:2.配置Bean.对于Spring框架来说,它要做的,就是根据配置文件来创建bean实例 ...
随机推荐
- fastapi教程进阶
一个简单的栗子 from fastapi import FastAPI app = FastAPI() @app.get("/") async def root(): return ...
- Beats:运用 Logstash 来加工 Metricbeat 数据
文章转载自:https://elasticstack.blog.csdn.net/article/details/116496272
- 服务器设置X-Frame-Options Header响应头(Tomcat,服务器,项目)
解决方案(修改tomcat配置文件) 打开Tomcat配置文件(conf\web.xml)搜索 httpHeaderSecurity有两处地方 <!--第一处将注释放开--> <fi ...
- 使用 Loki 搭建个人日志平台
文章转载自:https://blog.kelu.org/tech/2020/01/31/grafana-loki-for-logging-aggregation.html 背景 Loki的第一个稳定版 ...
- Springboot之 Mybatis 多数据源实现
简介 上篇讲解了 JPA 多数据源实现:这篇讲解一下 Mybatis 多数据源实现 .主要采用将不同数据库的 Mapper 接口分别存放到不同的 package,Spring 去扫描不同的包,注入不同 ...
- P4588 [TJOI2018]数学计算 (线段树)
用线段树维护操作序列,叶子结点存要乘的数,非叶子结点存区间乘积,每次输出tr[1] 就是答案. 1 #include<bits/stdc++.h> 2 #define ll long lo ...
- CEOI2020 道路(Roads) Solution
直接来构造. 考虑扫描线.从左到右扫,考虑当前扫到了一个左端点,我们把这个左端点连到其他点上. 我们可以找到这个点下方离他最近的线段,并且记下每条线段上方在扫描线左侧且最靠右,与这条线段中间没有其他线 ...
- IDEA插件MyBatisCodeHelper-Pro的破解与使用
0.前言 本文中的IDEA版本是2020.3,使用的插件版本是MyBatisCodeHelper-Pro 2.8.9,3.0+版本目前没找到激活的方式 和本文插件类似的还有mybatisX,但我不喜欢 ...
- scrapy操作mysql/批量下载图片
1.操作mysql items.py meiju.py 3.piplines.py 4.settings.py -------------------------------------------- ...
- Linux实战笔记_CentOS7_无法识别NTFS格式的U盘
注:因为CentOS 默认不识别NTFS的磁盘格式,所以我们要借助另外一个软件ntfs-3g来挂载.自带的yum源没有这个软件,要用第三方的软件源,比如阿里的epel. #安装ntfs-3g cd / ...