【SSM】一、了解Sping 框架

〇、Maven

0.1 什么是Maven?

【SSM】一、了解Sping 框架

Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information.

一、Spring

1.1什么是Spring?

The Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications - on any kind of deployment platform.

Spring是分层的JavaSE/EEfull-stack 轻量级开源框架,Spring的两大特点是:IoC(Inverse of Control 控制反转),AOP(Aspect Oriented Programming 面向切面编程)

1.2 如何使用Maven加载Spring框架?

在pom.xml(maven的配置文件)中添加Maven所依赖的Jar的名称,也就是添加节点。

<!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>5.3.16</version>
</dependency>

1.3 Spring 的核心容器

Spring容器会负责控制程序之间的关系,而不是由程序代码直接控制。Spring为我们提供了两种核心容器,分别为BeanFactory和ApplicationContext。

1.3.1 BeanFactory

创建BeanFactory实例时,需要提供Spring所管理容器的详细配置信息,这些信息通常采用XML文件形式来管理,其加载配置信息的语法如下:

BeanFactory beanFactory = 
           new XmlBeanFactory(new FileSystemResource("F: /applicationContext.xml"));
//F: /applicationContext.xml是XML配置文件的位置

这种加载方式在实际开发中并不多用,了解即可。

1.3.2 ApplicationContext

ApplicationContext是BeanFactory的子接口,是另一种常用的Spring核心容器。它由org.springframework.context.ApplicationContext接口定义,不仅包含了BeanFactory的所有功能,还添加了对国际化、资源访问、事件传播等方面的支持。创建ApplicationContext接口实例,通常采用两种方法,具体如下:

1、通过ClassPathXmlApplicationContext创建

ApplicationContext applicationContext =
                                     new ClassPathXmlApplicationContext(String configLocation);

ClassPathXmlApplicationContext会从类路径classPath中寻找指定的XML配置文件,找到并装载完成ApplicationContext的实例化工作。

2、通过FileSystemXmlApplicationContext创建

ApplicationContext applicationContext =
                                 new FileSystemXmlApplicationContext(String configLocation);

FileSystemXmlApplicationContext会从指定的文件系统路径(绝对路径)中寻找指定的XML配置文件,找到并装载完成ApplicationContext的实例化工作。

1.3.3 ContextLoaderListener

Java项目中,会通过ClassPathXmlApplicationContext类来实例化ApplicationContext容器。而在Web项目中,ApplicationContext容器的实例化工作会交由Web服务器来完成。

Web服务器实例化ApplicationContext容器时,通常会使用ContextLoaderListener来实现,此种方式只需要在web.xml中添加如下代码:

       <context-param>
               <param-name>contextConfigLocation</param-name> 
               <param-value>
                          classpath:spring/applicationContext.xml
               </param-value>
       </context-param> 
       <listener>
               <listener-class>
                         org.springframework.web.context.ContextLoaderListener
               </listener-class>
       </listener>

1.4 什么是IoC(控制反转)?

1.4.1 依赖注入

DI的全称是Dependency Injection,中文称之为依赖注入。它与控制反转(IoC)的含义相同,只不过这两个称呼是从两个角度描述的同一个概念。

IoC:在使用Spring框架之后,对象的实例不再由调用者来创建(就是不需要像以前一样new一个对象了),而是由Spring容器来创建,Spring容器会负责控制程序之间的关系,而不是由调用者的程序代码直接控制。这样,控制权由应用代码转移到了Spring容器,控制权发生了反转,这就是控制反转。

DI:从Spring容器的角度来看,Spring容器负责将被依赖对象赋值给调用者的成员变量,这相当于为调用者注入了它依赖的实例(就是相当于为调用者无形中new好了这个对象),这就是Spring的依赖注入。

原文链接:https://www.cnblogs.com/dumupro/p/17350785.html

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:【SSM】一、了解Sping 框架 - Python技术站

(0)
上一篇 2023年4月25日
下一篇 2023年4月25日

相关文章

  • SpringBoot四大神器之Actuator的使用小结

    Spring Boot四大神器之Actuator的使用小结 Spring Boot Actuator是Spring Boot的一个扩展模块,提供了一组用于监控和管理Spring Boot应用程序的端点。在本文中,我们将详细讲解Actuator的使用方法和常用端点。 添加依赖 首先,我们需要在Maven项目中添加Actuator的依赖关系。我们可以使用以下依赖…

    Java 2023年5月15日
    00
  • java如何利用poi解析doc和docx中的数据

    当需要从 Word 文档中提取数据的时候,我们可以使用 Apache POI 来读取 “.doc” 和 “.docx” 文件。下面是如何利用 POI 解析 Word 文档中数据的攻略: 1. 添加 POI 依赖 在项目中添加以下依赖: <dependency> <groupId>org.apache.poi</groupId&g…

    Java 2023年5月20日
    00
  • 基于Spring整合mybatis的mapper生成过程

    下面是基于Spring整合MyBatis的Mapper生成过程的完整攻略。 1. 准备工作 在开始整合MyBatis和Spring之前,确保已经完成以下工作: 已经拥有一个Spring项目并且能够正常运行; 已经添加了MyBatis和MyBatis-Spring的依赖; 已经配置了MyBatis的数据源、事务管理和SqlSessionFactory等内容。 …

    Java 2023年5月20日
    00
  • SpringBoot深入分析运行原理与功能实现

    SpringBoot深入分析运行原理与功能实现 什么是SpringBoot SpringBoot是一个开源的、轻量级的框架,用于快速构建基于Spring框架的Web应用程序和微服务。相对于传统的Spring框架,它更加简单方便,提供了自动配置、嵌入式Web服务器等特性,使得开发者可以快速构建可靠的、健壮的Web应用程序。 以下是SpringBoot的一些特性…

    Java 2023年5月15日
    00
  • SpringBoot复杂参数应用详细讲解

    SpringBoot复杂参数应用详细讲解 在SpringBoot中,我们可以很方便地绑定和处理各种类型的请求参数,包括简单的字符串和数字,以及复杂的对象和集合类型。在本文中,我们将详细介绍如何处理复杂的请求参数,包括Bean对象、List和Map集合类型等。 1. Bean对象参数 对于Bean对象类型的参数,我们可以通过在控制器方法中直接声明该对象的参数来…

    Java 2023年5月15日
    00
  • 如何使用intellij IDEA搭建Spring Boot项目

    使用IntelliJ IDEA搭建Spring Boot项目的完整攻略如下: 安装IntelliJ IDEA 首先,我们需要安装IntelliJ IDEA。可以从官方网站下载并安装最新版本的IntelliJ IDEA。 创建Spring Boot项目 在IntelliJ IDEA中,我们可以使用Spring Initializr来创建Spring Boot项…

    Java 2023年5月15日
    00
  • tomcat6_apache2.2_ajp 负载均衡加集群实战分享

    Tomcat6、Apache2.2、AJP 负载均衡加集群实战分享 一、引言 本文将介绍如何使用Tomcat6、Apache2.2和AJP实现负载均衡加集群,并提供了两个示例进行演示。本文假设读者已经熟悉Linux基础知识,并且已经安装了Tomcat6和Apache2.2。 二、负载均衡加集群 2.1 集群模式 为了实现负载均衡加集群,我们需要将多个Tomc…

    Java 2023年5月19日
    00
  • 详解Spring MVC3返回JSON数据中文乱码问题解决

    下面将为你详细讲解“详解Spring MVC3返回JSON数据中文乱码问题解决”的完整攻略。 问题描述 当Spring MVC3框架返回JSON格式数据的时候,中文字符往往会出现乱码问题,需要进行解决。 解决方案 方案一:修改配置文件 在Spring的配置文件中,增加以下配置即可解决中文乱码问题。 <mvc:annotation-driven> …

    Java 2023年5月26日
    00
合作推广
合作推广
分享本页
返回顶部