news 2026/1/11 5:52:56

SSM框架学习

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
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一种数据序列化格式,优点:容易阅读;容易与脚本语言交互;以数据为核心,重数据轻格式。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2025/12/30 15:55:43

Diskinfo下载官网日志分析TensorRT异常退出原因

Diskinfo下载官网日志分析TensorRT异常退出原因 在AI推理系统部署的实战中&#xff0c;一个看似简单的“容器启动后立即退出”问题&#xff0c;往往让开发者耗费数小时排查。尤其是当使用NVIDIA官方提供的TensorRT镜像时&#xff0c;进程静默终止、无明显错误输出的情况屡见不…

作者头像 李华
网站建设 2026/1/10 6:42:15

压缩解压缩算法 BFP-8bit

整个算法设计基于ORAN协议中的BFP压缩算法&#xff1b;对于压缩处理&#xff0c;首先记录无符号最大值的最高有效位&#xff08;0~14&#xff09;&#xff0c;根据最高有效比特位确定压缩处理过程中的压缩因子&#xff1b;压缩处理过程用于完成对数据的压缩&#xff0c;输出压缩…

作者头像 李华
网站建设 2026/1/1 15:30:45

山东港口科技借助 TDengine 构建智慧港口“数据基石”

作者&#xff1a;山东港口, 张艳明 小T导读&#xff1a;在智慧港口的建设过程中&#xff0c;面对海量物联网设备产生的时序数据&#xff08;如设备状态、能耗、作业效率等&#xff09;的高效接入与实时分析需求&#xff0c;山东港口科技选择采用 TDengine TSDB 时序数据库作为…

作者头像 李华
网站建设 2025/12/26 14:24:31

如何将LobeChat与自有GPU资源结合实现低成本高并发?

如何将LobeChat与自有GPU资源结合实现低成本高并发&#xff1f; 在AI应用从“能用”迈向“好用”的今天&#xff0c;越来越多企业开始重新审视自己的技术选型&#xff1a;当一个客服机器人每天要处理上千次对话时&#xff0c;调用OpenAI这类云端API的成本是否可持续&#xff1f…

作者头像 李华
网站建设 2025/12/22 17:21:36

论文AI率爆表?实测这款降AI工具,10分钟把AIGC从95%降到安全线以内!

✅ 一文看懂如何降低ai率、稳过论文检测 后台不少人问我&#xff1a; “论文的AI率太高怎么办&#xff1f;导师说要降低ai率&#xff0c;但我试了好几个免费降ai率工具都不太行。” 我当时也焦虑过。首稿检测AI率95%&#xff0c;直接被退回来。后来陆续试了十几款论文降aigc、a…

作者头像 李华
网站建设 2025/12/18 17:10:28

ubuntu编译安装FreeRDP Version 3.x.x 版本

一次性把依赖装齐 sudo apt install -y \build-essential git cmake ninja-build pkg-config \libssl-dev libx11-dev libxext-dev libxinerama-dev \libxcursor-dev libxdamage-dev libxv-dev libxkbfile-dev \libasound2-dev libcups2-dev libpulse-dev libjpeg-dev \libusb-…

作者头像 李华