SSM框架学习——day1

发布于:2025-07-15 ⋅ 阅读:(22) ⋅ 点赞:(0)

SSM框架概述

SSM框架是Java开发中常用的组合框架,由Spring、Spring MVC和MyBatis三个开源框架整合而成。主要用于构建企业级Web应用程序,具有轻量级、模块化、易扩展等特点。

Spring框架作为核心,提供依赖注入(DI)和面向切面编程(AOP)功能,管理对象生命周期和配置。Spring MVC是基于Spring的Web框架,处理HTTP请求和响应,实现MVC架构。MyBatis是持久层框架,简化数据库操作,通过XML或注解配置SQL映射。

SSM框架核心组件

Spring框架提供IoC容器,管理应用组件及其依赖关系。通过注解如@Autowired实现依赖注入,@Component标识组件。AOP支持日志、事务等横切关注点的模块化处理。

Spring MVC通过DispatcherServlet前端控制器分发请求,@Controller处理请求并返回视图。支持RESTful风格,@RequestMapping定义URL映射。

MyBatis通过SqlSessionFactory创建会话,Mapper接口与XML文件绑定。动态SQL、缓存机制简化数据库交互,避免手动处理JDBC代码。

SSM框架整合配置

整合SSM需配置web.xml初始化Spring容器和Spring MVC。Spring配置文件定义数据源、事务管理器、MyBatis整合等。MyBatis配置SqlSessionFactoryBean,扫描Mapper接口。

<!-- Spring配置示例 -->
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
    <property name="url" value="jdbc:mysql://localhost:3306/test"/>
    <property name="username" value="root"/>
    <property name="password" value="password"/>
</bean>
// MyBatis Mapper接口示例
public interface UserMapper {
    @Select("SELECT * FROM users WHERE id = #{id}")
    User selectUser(int id);
}

SSM框架优势与适用场景

SSM框架适合中小型项目,轻量级且灵活。Spring的IoC和AOP降低耦合,增强可维护性。Spring MVC简化Web开发,MyBatis提供高效的数据库操作。相比SSH(Spring+Struts+Hibernate),SSM更易上手,性能更优。

缺点在于配置较繁琐,需手动编写SQL。大型项目可考虑Spring Boot简化配置,或使用JPA替代MyBatis。

初识spring:

Spring Framework

Spring Framework 是一个开源的Java/Java EE全栈轻量级框架,提供基础设施支持。核心特性包括依赖注入(DI)和面向切面编程(AOP),简化企业级应用开发。主要模块:

  • 核心容器:Bean管理、配置(XML或注解)。
  • 数据访问:JDBC、ORM、事务管理支持。
  • Web模块:MVC框架、RESTful服务开发。
  • 集成:支持消息队列、远程调用等。

Spring Boot

Spring Boot 是 Spring Framework 的扩展,旨在简化独立、生产级Spring应用的搭建。特点:

  • 自动配置:基于依赖自动配置组件(如内嵌Tomcat)。
  • 起步依赖:通过Maven/Gradle简化依赖管理。
  • 命令行界面:支持Groovy脚本快速开发。
  • 监控:内置Actuator模块提供健康检查、指标收集。

Spring Cloud

Spring Cloud 为分布式系统开发提供工具集,基于Spring Boot的快速构建能力。核心功能:

  • 服务发现:Eureka、Consul等注册中心支持。
  • 负载均衡:Ribbon客户端负载均衡。
  • 配置中心:Spring Cloud Config集中管理配置。
  • 熔断器:Hystrix实现服务容错。
  • API网关:Zuul或Spring Cloud Gateway路由控制。

三者关系:Spring Framework为基础,Spring Boot简化单应用开发,Spring Cloud扩展至微服务架构。

spring framework系统构架(上层依赖下层)

AOP在不变源程序的基础上增强功能

耦合度的定义

耦合度(Coupling)指软件系统中模块之间相互依赖的程度。高耦合意味着模块间联系紧密,修改一个模块可能影响其他模块;低耦合则表明模块相对独立,便于维护和扩展。

核心容器(基于对象):

IOC控制反转:使用对象,由主动new转换为外部提供对象,将创建控制权由程序转移到外部

spring技术对ioc进行实现

spring提供容器,称为IOC容器,充当外部。

负责创建对象,初始化操作,被创建和管理的对象在IOC容器中统称bean

DI依赖注入

bean与bean直接的依赖关系的过程,称为依赖注入

IOC入门案例思路:

1.管理什么?(service和Dao)

2.如何将被管理的对象告知IOC容器(配置)

3.被管理的对象交给IOC容器,如何获取IOC容器(接口)

4.IOC容器得到后,如何从容其中获取bean(接口方法)

5.使用Spring导入哪些坐标(pom.xml)

 1.导入Spring坐标

 2.定义spring管理的类(接口)

 3.创建spring配置文件,配置对应类作为spring管理的bean(id不能定义重复)

4.初始化容器

ApplicationContext ctx =new ClassPathxmlApplicationContext("applicationContext.xml)";

 


网站公告

今日签到

点亮在社区的每一天
去签到