dede建設(shè)網(wǎng)站教程sem推廣
目錄
- 一 Spring概述
- 二 .Spring 的體系結(jié)構(gòu)
- 三 Spring的開(kāi)發(fā)環(huán)境
- 3.1 配置pom.xml文件
- 四 項(xiàng)目案例:
- 4.1 創(chuàng)建實(shí)體類(lèi)
- 4.2 在pom.xml中引入依賴(lài)
- 4.3 配置Spring-config.xml文件
- 4.4 Test
?作者簡(jiǎn)介:Java-小白后端開(kāi)發(fā)者 🥭公認(rèn)外號(hào):球場(chǎng)上的黑曼巴
🍎個(gè)人主頁(yè):不會(huì)飛的小飛俠24
🍊個(gè)人信條:謹(jǐn) · 信
💞當(dāng)前專(zhuān)欄:高級(jí)內(nèi)容
🥭本文內(nèi)容:JAVA -----mybatis框架【mybatis的批量刪除 】
更多內(nèi)容點(diǎn)擊👇
小飛俠的博客>>>>歡迎大家!!!
一 Spring概述
1.1 Spring是為了解決企業(yè)應(yīng)用開(kāi)發(fā)的復(fù)雜性而創(chuàng)建的一個(gè)輕量級(jí)的Java開(kāi)發(fā)框架。Spring的核心是控制反轉(zhuǎn)(IoC)和面向切面編程(AOP)。傳統(tǒng)的Java程序,類(lèi)與類(lèi)之間存在較強(qiáng)的依賴(lài)關(guān)系,增加了程序開(kāi)發(fā)的難度,開(kāi)發(fā)某一個(gè)類(lèi)的時(shí)候還要考慮對(duì)另一個(gè)類(lèi)的影響,一個(gè)類(lèi)的修改往往導(dǎo)致另一個(gè)類(lèi)不得不跟著要修改,程序可維護(hù)性和可拓展性變差。使用Spring可以降低代碼間的依賴(lài)程度(耦合度),為代碼“解耦”,提高程序的可拓展性、可復(fù)用性和可維護(hù)性,使主業(yè)務(wù)專(zhuān)注于自身的開(kāi)發(fā)。
1.2 Spring降低耦合度的方式有兩種:IoC 與 AOP。IoC 是控制反轉(zhuǎn)的意思,它的作用是使得主業(yè)務(wù)在相互調(diào)用過(guò)程中,不用再自己維護(hù)關(guān)系,即無(wú)須自己創(chuàng)建要使用的對(duì)象了,而是由Spring容器統(tǒng)一管理,自動(dòng)“注入”。AOP是面向切面編程的意思, AOP技術(shù)不用再由程序員用硬編碼的方式將系統(tǒng)級(jí)服務(wù)“混雜”到主業(yè)務(wù)邏輯中了,而是由Spring 容器統(tǒng)一完成“織入”。
1.3 Spring還提供對(duì)其他框架的支持,可以支持MyBatis,Hibernate,struts等框架,簡(jiǎn)化這些框架使用,通過(guò)整合使它們高效地協(xié)同工作。
二 .Spring 的體系結(jié)構(gòu)
Spring 有七大功能模塊,分別是Spring Core、AOP、ORM、DAO、MVC、WEB和Context。 Spring體系架構(gòu)如圖4.1所示。
1.core模塊:Spring的核心庫(kù) 提供Ioc 功能。
2.Aop模塊:Spring的AOP庫(kù).提供AOP的攔截器機(jī)制。
3.ORm模塊:提供對(duì)ORM框架的支持和管理。
4.DAO模塊:提供對(duì)JDBC的支持,并進(jìn)行封裝,并支持和管理事務(wù)。
5.MVC模塊:提供MVC的支持 更加簡(jiǎn)單和方便。
6.Web模塊:提供對(duì)常見(jiàn)的框架支持。
7.Context :提供Bean的訪問(wèn)方式,其他程序可通過(guò)Context訪問(wèn)Spring的Bean資源。
三 Spring的開(kāi)發(fā)環(huán)境
3.1 配置pom.xml文件
之所以引入Spring-context.jar 只因?yàn)樵谝蕾?lài)此jar包時(shí),會(huì)依賴(lài)其他三個(gè),即 自動(dòng)下載相關(guān)依賴(lài)–可查看受否成功
<!--引入spring的依賴(lài)--><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>5.3.9</version></dependency>
四 項(xiàng)目案例:
之前大家在一個(gè)類(lèi)中調(diào)用另一個(gè)類(lèi)都是在本類(lèi)中先new一個(gè)要調(diào)用的另一個(gè)類(lèi)對(duì)象,再調(diào)用其方法,這次用spring實(shí)現(xiàn)一個(gè)類(lèi)中不new 另一個(gè)類(lèi)的對(duì)象也能調(diào)用到另一個(gè)類(lèi)。
4.1 創(chuàng)建實(shí)體類(lèi)
package cn.kgc.spring01.entity;import lombok.Data;@Data
public class User {private String username;private Integer id;public User(){System.out.println("user()");}public User(Integer id) {System.out.println("User(String username, Integer id)");this.username = username;this.id = id;}public User(String username, Integer id) {System.out.println("User(String username, Integer id)");this.username = username;this.id = id;}
}
4.2 在pom.xml中引入依賴(lài)
<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>cn.kgc.spring01</groupId><artifactId>spring01</artifactId><version>1.0-SNAPSHOT</version><name>spring01</name><!-- FIXME change it to the project's website --><url>http://www.example.com</url><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target></properties><dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.11</version><scope>test</scope></dependency><!--引入spring的依賴(lài)--><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>5.3.9</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.24</version></dependency></dependencies>
</project>
4.3 配置Spring-config.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsd">
<!--聲明需要托管的對(duì)象--><!--通過(guò)構(gòu)造方法完成對(duì)象初始化 需要提供對(duì)應(yīng)的構(gòu)造方法--><bean id="user" class="cn.kgc.spring01.entity.User"><constructor-arg name="id" value="1"></constructor-arg><constructor-arg name="username" value="jack"></constructor-arg></bean>
</beans>
4.4 Test
public void test03() {ApplicationContext ac = new ClassPathXmlApplicationContext("spring-config.xml");User user = ac.getBean("user", User.class);System.out.println("user = " + user);}