〇、Maven
0.1 什么是Maven?
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.uj5u.com/houduan/551054.html
標籤:其他
上一篇:面試最常問的陣列轉樹,樹轉陣列 c++ web框架paozhu實作
下一篇:返回列表