毕业实习Day3①——SSM框架搭建理论基础

本文介绍了SSM框架(Spring、SpringMVC、Mybatis)的基本理论,包括Spring的IOC和AOP特性,SpringMVC的DispatcherServlet工作流程,以及Mybatis的持久层操作框架优势。内容涵盖各框架的好处、核心组件以及它们在实际应用中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SSM框架搭建理论基础

昨天查阅了SSM框架(Spring + Spring MVC +Mybatis)的基础知识和概念后,对这个框架有了一定的了解,并根据别人的经验初试用IDEA+Maven 整合SSM框架实现简单的增删改查。总的来说,这对写代码是全新的体验,代码量也比较少。
在上课的时候,也记录了Spring + Spring MVC +Mybatis三个框架的笔记,具体如下:

Spring:

好处
1.不依赖于应用服务器。
2.IOC(控制反转)技术实现组件控制,通过DI(依赖注入)技术提高了组件之间的解耦。
3.通过AOP(面向切面编程)技术实现安全、事务、日志功能的统一管理,提高复用。
4.Spring框架可以几乎与其他任何框架进行良好的整合使用。 5.Spring所有项目之间不相互依赖。

IOC : 控制反转. 本质: 将手动创建对象的工作,交给Spring容器实现完成.
1.在Spring容器中可以配置创建实例对象.无论带参,无参构造实例都是可以实现的.Spring.xml容器中配置:
2.如何通过注解的用法代替Spring配置文件中的写法.实现IOC控制.
2.1: 首先需要在实体类中:
采用注解.@Component , @Controller , @Service , @Repository
2.2: 基于spring容器配置注解的扫描和支持.<context:component-scan base-package=“父包”>
切记 : 当采用IOC注解的方式进行对象的创建,在没有指定对象名的情况下,默认生成对象名称: 类名称首字母小写作为: 默认的对象名.

DI : 依赖注入.含义 : 指的是针对实体类中: 属性成员赋值操作.
1.= 针对实体中的属性实现注入: 采用容器配置写法实现.
1.1:类中依赖的属性: 必须get/set封装.
1.2:进行注入:
2. 属性的注入: 也可采用注解的写法实现.//无需提供属性的get/set封装方法实现注入.
@Resource(name=”对象名”) //根据对象名称进行spring容器查找,并注入.Private BanJi bj1;
@Autowired //根据类型进行spring容器查找,找到指定类型对象,直接注入.Private BanJi bj1;
案例: ioc + di 实现以下功能
1.采用spring容器完全配置的写法实现分层开发与调用.
2.采用spring容器注解的写法实现分层开发与调用.

AOP:面向切片概述:切面的原理: 将 业务操作 与 安全,日志,事务 结合使用的过程称为面向切面编程.
静态代理: 是一种编程方法. 对原有功能进行功能增强.
动态代理: 就是将代理类与代理功能进行拆分编写的一种方式.
方式一:根据jdk的动态代理接口实现 : InvocationHandle实现动态代理.
Object o1 = Proxy.newProxyInstance();
方式二: spring默认切面使用方式.Cglib插件实现的动态代理.
切面的一些概念:
目标类: 用户需要调用的业务功能类.类中:有目标方法.
切面: 代理类.
通知: 代理类中额外功能.分类: 前置,后置,环绕,返回值,异常处理等。
切入点: 代理类明确 代理谁的 规则.
织入: 将代理功能 + 目标功能 组织到一起.

SpringMVC

概述
1.springMVC的加载核心控制器:DispatcherServlet.
内部: 1.1:初始化方法中将进行各种组件解析器的加载.
2. HandlerMappings核心组件:创建映射器:
将客户端的请求地址 : 用于匹配所有的@RequestMapping注解地址.
如果没有自定义的解析器将采用默认的: BeanNameUrlHandlerMapping.
3. HandlerAdapters适配器: 可以负责调用找到的Controller对象和方法.
默认适配器: SimpleControllerHandlerAdapter
4. ViewResolvers: 视图解析器. 当用户响应视图时,
用作视图页面的解析展示.
默认视图解析器: InternalResourceViewResolver.
所有的用户请求都将在DispatcherServlet中的doService()方法中实现:
1.匹配器的匹配.
2.匹配成功后的适配器调用.
3.返回结果视图解析器的解析.
4.最终由DispatcherServlet完成响应.

SpringMVC框架实现
1搭建项目环境.导入jar包.
2编写Controller与jsp.
3编写核心配置SpringMVC.xml.
4编写web.xml配置前端控制器.
Springmvc的加载控制器: DispatcherServlet
5测试请求响应.

Mybatis

1.概述: 一个持久层操作框架.
2 .Mybatis与hibernate 使用区别:
Hibernate : 可以高度的对jdbc实现封装. 不用编写sql,即可映射操作数据库. 针对复杂的多表关系, 可以方便关联操作. 场景: 当业务实体之间关系关联操作时,hibernate擅长处理. 不擅长: 复杂的业务关联关系.
示例: OA.政府档案,数据管理系统.

Jdbc: 其实所有的持久层框架都是以JDBC为基础,进行封装优化.
好处: 单个操作效率高. 缺点: 参数传递,返回值封装.

Mybatis : 其实针对jdbc的完美封装, 保留了jdbc的sql编写方式. 优化了参数绑定,返回值封装等缺点.学习成本低.
示例: 网上电商, 金融项目,
主体架构:SqlMapConfig.xml(核心配置文件) : 体现SqlSessionFactory,SqlSession.

Mapper.xml(动态sql语句实现)

MappedStatement(方便动态加载sql,用于绑定参数,封装返回值).

DB(数据库)

Mybatis框架实现:
1.创建项目,导入框架.
2.SqlMapConfig配置文件,编写数据库的连接配置.
3.测试数据库连接是否正常.
4.编写Mapper.xml文件中的动态sql.
5.测试sql执行操作是否正常.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值