SSM框架学习

Spring

系统架构

IoC(Inversion of Control)控制反转:

使用对象时在程序中不要主动使用new产生对象,转换由外部提供对象。

Spring技术把IoC思想进行了实现,IoC容器把大量对象的创建、初始化等一系列工作,被创建或被管理的对象在IoC容器中统称为Bean。使用对象时不仅可以直接从IoC容器中获取,并且获取到的bean已经绑定了所有依赖关系。

<bean id="" name="" class="" scope="" init-method="" destory-method=""> bean标签表示配置bean,id属性表示给bean起名字,name表示别名可以有多个,class属性表示给bean定义类型,scope有两个值singleton和prototype可以控制bean对象单例还是非单例,init-method和destory-method用来配置bean生命周期。

DI(Dependency Injection)依赖注入:

在容器中建立bean与bean之间的依赖关系的整个过程,称为依赖注入。删除new 提供一个set方法,配置文件进行绑定。

<property name="" ref="">property标签表示配置当前bean的属性,name属性表示配置哪一个具体的属性,ref属性表示参照哪一个bean

①setter注入:简单类型(在bean中定义引用类型属性并提供可访问的set方法,配置中使用property标签value属性注入简单类型数据),引用类型(在bean中定义引用类型属性并提供可访问的set方法,配置中使用property标签ref属性注入引用类型对象) ②构造器注入:简单类型,引用类型。自己开发的模块推荐使用setter注入。

依赖自动装配(按类型装配,按名称装配,构造器):IoC根据bean所依赖的资源在容器中自动查找并注入到bean中的过程称为自动装配。 @Authwired解决引用类型注入@Qualifier指定注入的bean的id@Value注入简单类型@PropertySource注入外部文件

集合注入:

数据源对象管理:先把版本驱动加到Meaven的pom文件中,选择构造器注入

加载properties文件,开启context命名空间,修改四处

使用context空间加载properties文件

使用属性占位符value="${}"读取文件中的属性

BeanFactory是IoC容器的顶层接口,初始化BeanFactory对象时,加载的bean延迟加载

ApplicationContext接口是Spring容器的核心接口,初始化时bean立即加载

ApplicationContext接口提供基础的bean操作相关方法,通过其他接口扩展其功能

创建容器:①使用绝对路径②加载类路径下的配置文件。

第三方bean,定义一个方法获得要管理的对象,添加@bean,表示当前方法的返回值是一个bean

@Configuration使用@Import()注解手动加入配置类到核心配置,该注解只能添加一次,多个数据加大括号

纯注解开发

Spring整合MyBatisPlus

MyBatisPlus中有哪些bean需要Spring去整合

在pom文件中增加spring-jdbc和mybatis-spring坐标,增加mybatis配置类,里面是扫描类型别名的包和映射的包。

整合Junit

@Runwith(SpringJUnit4ClassRunner.class)

@ContextConfiguration

AOP(Aspect Oriented Programming)

面向切片编程,在不改变原始代码的基础上进行代码增强。

连接点(JoinPoint)代表所有的方法

切入点(Pointcut)代表要追加功能的方法

通知(Advice)代表共性功能

通知类定义通知的那个类

切面(Aspect)描述切入点与通知的关系

①导AOP相关坐标②定义接口dao和实现类③定义通知类,制作通知④定义切入点,设置一个私有的无返回的方法进行

Spring事务

SpringMVC

完成表现层,也就是Web框架。

1.导入坐标springmvc和servlet

2.使用controller定义bean

返回json格式

3.springmvc配置类,加载刚才开发的bean

4.定义一个servlet容器启动的配置类,在里面加载spring的配置,设置哪些请求归属springmvc处理,加载spring容器配置

工作流程如下

SSM整合

Maven高级

私服仓库分类

SpringBoot

YAML一种数据序列化格式,优点:容易阅读;容易与脚本语言交互;以数据为核心,重数据轻格式。

相关推荐
AI视觉网奇3 分钟前
ue 角色驱动衣服 绑定衣服
笔记·学习·ue5
wdfk_prog1 小时前
[Linux]学习笔记系列 -- [drivers][input]serio
linux·笔记·学习
ZH15455891313 小时前
Flutter for OpenHarmony Python学习助手实战:GUI桌面应用开发的实现
python·学习·flutter
编程小白20264 小时前
从 C++ 基础到效率翻倍:Qt 开发环境搭建与Windows 神级快捷键指南
开发语言·c++·windows·qt·学习
学历真的很重要4 小时前
【系统架构师】第二章 操作系统知识 - 第二部分:进程与线程(补充版)
学习·职场和发展·系统架构·系统架构师
深蓝海拓4 小时前
PySide6,QCoreApplication::aboutToQuit与QtQore.qAddPostRoutine:退出前后的清理工作
笔记·python·qt·学习·pyqt
酒鼎4 小时前
学习笔记(3)HTML5新特性(第2章)
笔记·学习·html5
L***一4 小时前
2026届大专跨境电商专业毕业生就业能力提升路径探析
学习
.小墨迹4 小时前
apollo学习之借道超车的速度规划
linux·c++·学习·算法·ubuntu
ZH15455891314 小时前
Flutter for OpenHarmony Python学习助手实战:模块与包管理的实现
python·学习·flutter