Spring Boot企業(yè)級(jí)項(xiàng)目開(kāi)發(fā)——入門(mén)到精通
定 價(jià):68 元
- 作者:鐘林森 羅劍 著
- 出版時(shí)間:2020/3/1
- ISBN:9787568041249
- 出 版 社:華中科技大學(xué)出版社
- 中圖法分類(lèi):TP312.8
- 頁(yè)碼:380
- 紙張:膠版紙
- 版次:1
- 開(kāi)本:16開(kāi)
《Spring Boot企業(yè)級(jí)項(xiàng)目開(kāi)發(fā)——入門(mén)到精通》站在初學(xué)者的角度,從零開(kāi)始介紹Spring Boot的基本概念、核心特性以及在實(shí)際項(xiàng)目開(kāi)發(fā)中的作用,帶領(lǐng)讀者一步一個(gè)腳印地學(xué)習(xí)并實(shí)戰(zhàn)Spring Boot相關(guān)核心技術(shù)以及常見(jiàn)的分布式中間件;除此之外,書(shū)末還重點(diǎn)介紹并實(shí)戰(zhàn)了企業(yè)中幾乎處處可見(jiàn)的系統(tǒng)——權(quán)限管理平臺(tái),以此鞏固加深前面篇章學(xué)習(xí)的相關(guān)技術(shù)。
值得一提的是,書(shū)中在介紹Spring Boot核心技術(shù)理論知識(shí)的同時(shí)也給出了相對(duì)應(yīng)的實(shí)際項(xiàng)目案例,并編寫(xiě)了相應(yīng)的代碼進(jìn)行實(shí)戰(zhàn)實(shí)現(xiàn),以此提高讀者的開(kāi)發(fā)水平和項(xiàng)目實(shí)戰(zhàn)能力。
本書(shū)共10章,分為3篇。第1篇為Spring Boot基礎(chǔ)篇,主要介紹了Spring Boot的基本概念、技術(shù)優(yōu)勢(shì)和幾大核心特性,基于Spring Boot開(kāi)發(fā)應(yīng)用系統(tǒng)時(shí)需要準(zhǔn)備的開(kāi)發(fā)環(huán)境和開(kāi)發(fā)工具,并以此作為基礎(chǔ)搭建了入門(mén)級(jí)的Spring Boot單模塊項(xiàng)目——Hello World 以此開(kāi)啟Spring Boot的學(xué)習(xí)之旅;之后則是趁熱打鐵,先后介紹并實(shí)戰(zhàn)了如何在Spring Boot項(xiàng)目讀取各種類(lèi)型的配置文件、整合數(shù)據(jù)訪問(wèn)層ORM框架Spring Data JPA/Mybatis實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的操作、整合Spring MVC實(shí)現(xiàn)一個(gè)Java Web應(yīng)用系統(tǒng)常見(jiàn)、常用的功能。
第2篇為Spring Boot核心技術(shù)與高級(jí)應(yīng)用篇,全面介紹了目前在實(shí)際項(xiàng)目開(kāi)發(fā)中Spring Boot常見(jiàn)、常用的核心技術(shù)及其對(duì)應(yīng)的代碼實(shí)戰(zhàn),其中主要包括文件的上傳下載、各種類(lèi)型郵件的發(fā)送、定時(shí)任務(wù)的實(shí)現(xiàn)、多種方式實(shí)現(xiàn)Excel的導(dǎo)入導(dǎo)出等核心技術(shù);除此之外,還重點(diǎn)介紹了目前市面上兩款主流的分布式中間件,包括緩存中間Redis、消息中間件RabbitMQ,介紹其基本概念、作用以及典型的應(yīng)用場(chǎng)景,可以說(shuō)為本書(shū)潤(rùn)色了不少。
第3篇為Spring Boot企業(yè)項(xiàng)目實(shí)戰(zhàn)與總結(jié)篇,本篇的內(nèi)容是對(duì)第1、2篇內(nèi)容做的總結(jié);重點(diǎn)介紹并實(shí)戰(zhàn)了如何基于Spring Boot搭建一個(gè)實(shí)際的企業(yè)級(jí)項(xiàng)目——權(quán)限管理平臺(tái),帶領(lǐng)讀者從系統(tǒng)功能需求分析開(kāi)始,到系統(tǒng)的整體架構(gòu)設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì),再到系統(tǒng)功能模塊劃分、前后端編碼開(kāi)發(fā)、測(cè)試、系統(tǒng)安全防御配置,后再到系統(tǒng)打包、部署、上線運(yùn)行等一整套流程,有助于讀者切身感受企業(yè)中真實(shí)項(xiàng)目的整個(gè)開(kāi)發(fā)上線流程。
本書(shū)特別適合Spring Boot實(shí)踐經(jīng)驗(yàn)為零的開(kāi)發(fā)人員閱讀;有一定Java應(yīng)用開(kāi)發(fā)經(jīng)驗(yàn)的工程師,閱讀該書(shū)后可以了解Spring Boot在構(gòu)建企業(yè)級(jí)應(yīng)用過(guò)程中所提供的思路和解決方案,進(jìn)一步了解Spring Boot底層的運(yùn)行原理;IT培訓(xùn)機(jī)構(gòu)的學(xué)員也可以通過(guò)該書(shū)系統(tǒng)地學(xué)習(xí)Spring Boot相關(guān)的核心技術(shù)。
(1)零基礎(chǔ)入門(mén)Spring Boot,由淺入深、循序漸進(jìn)地講述Spring Boot核心技術(shù)。
(2)涵蓋Spring Boot、Spring MVC、Mybatis、Shiro、Redis、RabbitMQ等技術(shù)。
(3)理論聯(lián)系實(shí)際,以企業(yè)真實(shí)項(xiàng)目為應(yīng)用場(chǎng)景實(shí)戰(zhàn)相關(guān)技術(shù),鞏固知識(shí),加深理解。
(4)書(shū)中所有知識(shí)點(diǎn)都配有代碼實(shí)戰(zhàn),能讓讀者在理解理論的同時(shí)掌握開(kāi)發(fā)技能。
(5)通過(guò)企業(yè)權(quán)限管理平臺(tái)項(xiàng)目的全程實(shí)戰(zhàn),提高讀者的項(xiàng)目開(kāi)發(fā)水平和技術(shù)運(yùn)用能力。
時(shí)光荏苒,歲月如梭,轉(zhuǎn)眼間Java已經(jīng)走過(guò)了二十多個(gè)年頭,其發(fā)展之快亦不由得令人驚嘆。如今它依舊蒸蒸日上,猶如華夏文明、傳承之火一般生生不息,歸根結(jié)底主要在于它的跨平臺(tái)及實(shí)用等特性。
現(xiàn)如今已是微服務(wù)、分布式、IOT(物聯(lián)網(wǎng))、5G以及人工智能盛行的時(shí)代,Java在這個(gè)時(shí)代的軟件開(kāi)發(fā)領(lǐng)域占據(jù)了一席之地,特別是在微服務(wù)、分布式領(lǐng)域,其開(kāi)源的微框架Spring Boot及Spring Cloud和Dubbo + ZooKeeper組合更是大大鞏固了Java在相關(guān)領(lǐng)域的地位。
現(xiàn)在,開(kāi)發(fā)者每每談起Java,都離不開(kāi)Spring Boot(Spring Cloud也是需要基于Spring Boot的),毫不客氣地講,目前企業(yè)大部分的Java應(yīng)用系統(tǒng)是以Spring Boot作為主導(dǎo)的,配以Spring MVC、Mybatis以及中間件等各種組件組合完成整個(gè)系統(tǒng)的業(yè)務(wù)功能,可以說(shuō)基本上取代了傳統(tǒng)企業(yè)級(jí)應(yīng)用系統(tǒng)中以Spring/JavaEE作為主導(dǎo)的開(kāi)發(fā)模式。
本書(shū)站在初學(xué)者的角度,從Spring Boot誕生的緣由和基本概念開(kāi)始講起,一步一個(gè)腳印地介紹了Spring Boot的基本概念、開(kāi)發(fā)優(yōu)勢(shì)和幾大核心特性,帶領(lǐng)各位讀者一步步搭建第一個(gè)Spring Boot項(xiàng)目(以Spring Boot 2.×版本為主),并以此為基礎(chǔ)介紹并實(shí)戰(zhàn)Spring Boot相關(guān)的核心技術(shù)棧,如基礎(chǔ)配置、數(shù)據(jù)層訪問(wèn)、Web應(yīng)用開(kāi)發(fā)以及其他核心技術(shù)等。
為了方便讀者理解與掌握,筆者在介紹相應(yīng)的技術(shù)點(diǎn)時(shí),結(jié)合了企業(yè)中真實(shí)項(xiàng)目的應(yīng)用案例,并配備了相應(yīng)的代碼,讓讀者在理解理論的同時(shí)也能掌握相應(yīng)的開(kāi)發(fā)技能。
筆者還介紹了目前主流的分布式中間件Redis和RabbitMQ,這可以說(shuō)是為了提升讀者的開(kāi)發(fā)能力和就業(yè)競(jìng)爭(zhēng)力而安排的。畢竟在如今IT行業(yè)競(jìng)爭(zhēng)激烈、就業(yè)壓力比較大的環(huán)境下,掌握一些分布式中間件,如緩存中間件Redis、消息中間件RabbitMQ可以給自己加分。
在本書(shū)的后介紹了企業(yè)里幾乎隨處可見(jiàn)的應(yīng)用系統(tǒng),即權(quán)限管理平臺(tái),它是前面篇章介紹的所有技術(shù)棧的大匯總,即將學(xué)到的技術(shù)應(yīng)用到真實(shí)的系統(tǒng)、真實(shí)的項(xiàng)目開(kāi)發(fā)中,才是真正的學(xué)以致用,而不是一味地停留在理論或者死記硬背的層面。
本書(shū)是一本以代碼實(shí)戰(zhàn)為主、以理論為輔的實(shí)戰(zhàn)書(shū)籍,特別適合有一定基礎(chǔ)的Java開(kāi)發(fā)者及Spring Boot初學(xué)者學(xué)習(xí),也適合高等院校和培訓(xùn)學(xué)校相關(guān)專(zhuān)業(yè)的師生作為教學(xué)參考書(shū)。
書(shū)中涉及的開(kāi)發(fā)工具與軟件版本如下:Intellij IDEA(2020)、Spring Boot(2.3.1.RELEASE)、Navicat Premium(11.0) 、JDK(1.8)、MySQL(5.7)、Redis(6.0)、RabbitMQ(3.8)、Linux Centos(7.×)、Postman(7.36.0)、Apache JMeter(5.1.1)。瀏覽器為Chrome 2020。大部分軟件下載可以前往鏈接http://www.fightjava.com/web/index/resource.html ,即“程序員實(shí)戰(zhàn)基地”的“資料中心”搜索下載。
鐘林森 網(wǎng)名debug,Java高級(jí)后端工程師。目前在國(guó)內(nèi)某互聯(lián)網(wǎng)公司擔(dān)任開(kāi)發(fā)組長(zhǎng),負(fù)責(zé)公司Java應(yīng)用后端開(kāi)發(fā),并參與公司IT基礎(chǔ)架構(gòu)體系的研發(fā)。CSDN博客專(zhuān)家,發(fā)表了大量的原創(chuàng)博客文字,博客訪問(wèn)量達(dá)百萬(wàn)人次。51CTO學(xué)院、CSDN學(xué)院及網(wǎng)易云課堂等知名教育平臺(tái)講師,教授學(xué)員上萬(wàn)人。追求技術(shù),熱愛(ài)分享,相信技術(shù)改變生活,技術(shù)成就夢(mèng)想,一直在不斷地學(xué)習(xí)和積累新知識(shí),秉承修羅之道,花名阿修羅。
第1篇Spring Boot基礎(chǔ)篇
第1章走進(jìn)Spring Boot
1.1Spring Boot概述/003
1.1.1Spring Boot簡(jiǎn)介/003
1.1.2Spring Boot的優(yōu)勢(shì)/003
1.1.3Spring Boot的幾大核心特性/004
1.2開(kāi)發(fā)環(huán)境準(zhǔn)備/004
1.2.1學(xué)習(xí)Spring Boot的前提與開(kāi)發(fā)環(huán)境和工具/004
1.2.2基于Spring Initializr構(gòu)建單模塊項(xiàng)目/005
1.2.3寫(xiě)個(gè)Hello World吧/007
1.2.4單模塊項(xiàng)目的優(yōu)缺點(diǎn)/008
1.3Spring Boot多模塊項(xiàng)目的搭建/009
1.3.1基于Maven構(gòu)建多模塊項(xiàng)目的規(guī)范/009
1.3.2基于Maven構(gòu)建多模塊項(xiàng)目的流程/009
1.3.3寫(xiě)個(gè)Hello World吧/014
1.4Spring Boot原理初步分析/015
1.4.1Spring Boot起步依賴(lài)/016
1.4.2Spring Boot自動(dòng)裝配/018
1.4.3Spring Boot啟動(dòng)執(zhí)行流程/019
第2章Spring Boot基礎(chǔ)配置詳解
2.1Spring Boot單元測(cè)試與熱加載/023
2.1.1單元測(cè)試簡(jiǎn)介與使用/023
2.1.2基于Devtools實(shí)現(xiàn)Spring Boot項(xiàng)目熱加載/025
2.2Spring Boot全局配置文件詳解/028
2.2.1Spring Boot兩大默認(rèn)配置文件介紹/028
2.2.2基于Environment讀取配置文件/029
2.2.3基于@Value讀取配置文件/030
2.2.4基于@ConfigurationProperties映射配置文件/031
2.3Spring Boot自定義配置詳解/033
2.3.1基于@PropertySource加載配置文件/034
2.3.2基于@ImportResource加載XML配置文件/035
2.3.3基于@Configuration編寫(xiě)自定義配置類(lèi)/037
2.4Spring Boot多環(huán)境配置詳解/039
2.4.1為什么需要多環(huán)境配置?/039
2.4.2多環(huán)境配置實(shí)戰(zhàn)/039
第3章Spring Boot數(shù)據(jù)訪問(wèn)層實(shí)戰(zhàn)
3.1基于Spring JdbcTemplate搭建數(shù)據(jù)訪問(wèn)層/044
3.1.1數(shù)據(jù)訪問(wèn)層與Spring JdbcTemplate簡(jiǎn)介/044
3.1.2Spring Boot整合JdbcTemplate實(shí)現(xiàn)CRUD/044
3.1.3實(shí)戰(zhàn)案例測(cè)試/048
3.2基于Mybatis搭建數(shù)據(jù)訪問(wèn)層/051
3.2.1Mybatis簡(jiǎn)介/052
3.2.2Spring Boot整合與配置Mybatis/052
3.2.3Spring Boot整合Mybatis實(shí)現(xiàn)CRUD/053
3.2.4實(shí)戰(zhàn)案例測(cè)試與總結(jié)/057
3.3基于Spring Data JPA搭建數(shù)據(jù)訪問(wèn)層/060
3.3.1Spring Data JPA簡(jiǎn)介/061
3.3.2Spring Boot整合與配置Spring Data JPA/061
3.3.3Spring Boot整合Spring Data JPA實(shí)現(xiàn)CRUD/062
3.3.4實(shí)戰(zhàn)案例測(cè)試/066
第4章Spring Boot實(shí)現(xiàn)Web常用功能
4.1整合Spring MVC實(shí)現(xiàn)Web常用功能/073
4.1.1Spring MVC簡(jiǎn)介與執(zhí)行流程/073
4.1.2Java Web常見(jiàn)的模板引擎/075
4.1.3Thymeleaf配置與常見(jiàn)用法/077
4.2基于SSM實(shí)戰(zhàn)用戶信息管理/081
4.2.1數(shù)據(jù)庫(kù)表設(shè)計(jì)/081
4.2.2業(yè)務(wù)邏輯處理層代碼實(shí)戰(zhàn)/083
4.2.3前端代碼實(shí)戰(zhàn)與測(cè)試一/086
4.2.4前端代碼實(shí)戰(zhàn)與測(cè)試二/089
第2篇Spring Boot核心技術(shù)與高級(jí)應(yīng)用篇
第5章Spring Boot核心技術(shù)之上傳下載、發(fā)送郵件與定時(shí)任務(wù)
5.1文件的上傳與下載/094
5.1.1Lombok簡(jiǎn)介與實(shí)戰(zhàn)/094
5.1.2文件上傳與下載開(kāi)發(fā)流程介紹/097
5.1.3基于Java IO實(shí)戰(zhàn)實(shí)現(xiàn)文件上傳/098
5.1.4基于Java IO實(shí)戰(zhàn)實(shí)現(xiàn)文件下載/100
5.1.5基于Java NIO實(shí)戰(zhàn)實(shí)現(xiàn)文件上傳/103
5.1.6基于Java NIO實(shí)戰(zhàn)實(shí)現(xiàn)文件下載/105
5.2發(fā)送郵件與定時(shí)任務(wù)實(shí)戰(zhàn)/108
5.2.1基于Spring Boot整合與配置起步依賴(lài)/108
5.2.2基于Spring Boot實(shí)現(xiàn)簡(jiǎn)單文本郵件的發(fā)送/109
5.2.3基于Spring Boot實(shí)現(xiàn)富文本郵件的發(fā)送/112
5.2.4基于Spring Boot實(shí)現(xiàn)帶附件郵件的發(fā)送/114
5.2.5定時(shí)任務(wù)與@Scheduled注解實(shí)戰(zhàn)/117
5.2.6基于Java線程池高效執(zhí)行多個(gè)定時(shí)任務(wù)/119
第6章Spring Boot核心技術(shù)之導(dǎo)入導(dǎo)出Excel
6.1典型應(yīng)用場(chǎng)景介紹/125
6.2Excel導(dǎo)出實(shí)戰(zhàn)/127
6.2.1Excel導(dǎo)出開(kāi)發(fā)流程詳解/127
6.2.2基于POI實(shí)現(xiàn)Excel的導(dǎo)出/128
6.2.3基于EasyExcel實(shí)現(xiàn)Excel的導(dǎo)出/132
6.3Excel導(dǎo)入實(shí)戰(zhàn)/135
6.3.1Excel導(dǎo)入開(kāi)發(fā)流程詳解/135
1366.3.2基于POI實(shí)現(xiàn)Excel的導(dǎo)入/
6.3.3基于EasyExcel實(shí)現(xiàn)Excel的導(dǎo)入/139
6.3.4兩種實(shí)現(xiàn)方式的對(duì)比/142
第7章緩存中間件Redis實(shí)戰(zhàn)
7.1Redis簡(jiǎn)介與典型應(yīng)用場(chǎng)景/145
7.2使用Redis/146
7.2.1快速安裝Redis/146
7.2.2在Windows環(huán)境下使用Redis/147
7.2.3Spring Boot 2.0整合與配置Redis/150
7.2.4自定義注入與配置Redis模板操作組件Bean/151
7.2.5RedisTemplate實(shí)戰(zhàn)/152
7.2.6StringRedisTemplate實(shí)戰(zhàn)/154
7.3Redis常見(jiàn)數(shù)據(jù)結(jié)構(gòu)/157
7.3.1字符串String/157
7.3.2列表List/158
7.3.3集合Set/160
7.3.4有序集合SortedSet/161
7.3.5哈希Hash存儲(chǔ)/163
7.3.6Key失效與判斷是否存在/165
7.4Redis消息訂閱發(fā)布機(jī)制/167
7.4.1消息訂閱發(fā)布機(jī)制簡(jiǎn)介/167
7.4.2Spring Boot整合Redis實(shí)現(xiàn)消息訂閱發(fā)布/169
7.4.3接口功能測(cè)試/172
7.5Redis實(shí)戰(zhàn)場(chǎng)景之緩存擊穿/172
7.5.1什么是緩存擊穿/173
7.5.2緩存擊穿的解決方案/173
7.4.3代碼實(shí)戰(zhàn)之并發(fā)場(chǎng)景復(fù)現(xiàn)/174
7.5.4代碼實(shí)戰(zhàn)之分布式鎖/180
7.6Redis實(shí)戰(zhàn)場(chǎng)景之緩存穿透/184
7.6.1什么是緩存穿透/184
7.6.2緩存穿透的解決方案/185
7.6.3代碼實(shí)戰(zhàn)實(shí)現(xiàn)過(guò)程/186
7.6.4其他典型的問(wèn)題/188
第8章消息中間件RabbitMQ實(shí)戰(zhàn)
8.1RabbitMQ為何物/190
8.1.1RabbitMQ簡(jiǎn)介/190
8.1.2常見(jiàn)的應(yīng)用場(chǎng)景/191
8.1.3安裝RabbitMQ與Web管理界面介紹/196
8.1.4RabbitMQ入門(mén)代碼實(shí)戰(zhàn)/196
8.2Spring Boot整合RabbitMQ/201
8.2.1RabbitMQ專(zhuān)用組件介紹/201
8.2.2Spring Boot整合RabbitMQ/202
8.2.3自定義注入RabbitMQ操作組件/203
8.2.4發(fā)送接收消息實(shí)戰(zhàn)/204
8.3基于RabbitMQ多種交換器的消息模型實(shí)戰(zhàn)/208
8.3.1基于FanoutExchange的消息模型實(shí)戰(zhàn)/208
8.3.2基于DirectExchange的消息模型實(shí)戰(zhàn)/213
8.3.3基于TopicExchange的消息模型實(shí)戰(zhàn)/216
8.4典型應(yīng)用場(chǎng)景實(shí)戰(zhàn)之異步發(fā)送郵件/221
8.4.1整體業(yè)務(wù)流程介紹與分析/221
8.4.2數(shù)據(jù)庫(kù)表設(shè)計(jì)與Mybatis逆向工程/222
8.4.3基于DirectExchange的消息模型發(fā)送接收郵件/223
8.4.4業(yè)務(wù)場(chǎng)景功能接口測(cè)試/226
8.5RabbitMQ死信隊(duì)列與延遲隊(duì)列/227
8.5.1簡(jiǎn)介、作用與典型應(yīng)用場(chǎng)景/227
8.5.2RabbitMQ死信隊(duì)列之消息模型/229
8.5.3RabbitMQ死信隊(duì)列代碼實(shí)戰(zhàn)/231
8.5.4RabbitMQ延遲隊(duì)列之消息模型/235
8.5.5RabbitMQ延遲隊(duì)列代碼實(shí)戰(zhàn)/238
8.5.6RabbitMQ死信隊(duì)列與延遲隊(duì)列對(duì)比/241
第3篇Spring Boot企業(yè)項(xiàng)目實(shí)戰(zhàn)與總結(jié)篇
第9章企業(yè)項(xiàng)目開(kāi)發(fā)實(shí)戰(zhàn)之權(quán)限管理平臺(tái)
9.1企業(yè)權(quán)限管理平臺(tái)整體介紹/246
9.1.1權(quán)限管理簡(jiǎn)介與系統(tǒng)整體介紹/246
9.1.2數(shù)據(jù)庫(kù)表設(shè)計(jì)與Mybatis逆向工程/249
9.1.3項(xiàng)目整體搭建流程介紹/255
9.1.4用戶認(rèn)證與授權(quán)框架Shiro簡(jiǎn)介/261
9.2用戶登錄功能實(shí)戰(zhàn)/262
9.2.1整體開(kāi)發(fā)流程介紹/263
9.2.2驗(yàn)證碼組件配置與生成圖形驗(yàn)證碼/264
9.2.3開(kāi)發(fā)Controller接收用戶登錄請(qǐng)求/266
9.2.4整合Shiro完成用戶的登錄功能/267
9.3部門(mén)與菜單模塊開(kāi)發(fā)實(shí)戰(zhàn)/271
9.3.1相關(guān)數(shù)據(jù)庫(kù)表介紹/272
9.3.2部門(mén)模塊實(shí)戰(zhàn)之列表數(shù)據(jù)獲取/273
9.3.3基于treeGrid實(shí)現(xiàn)頁(yè)面布局與列表展示/277
9.3.4新增與修改部門(mén)功能實(shí)戰(zhàn)/279
9.3.5菜單模塊實(shí)戰(zhàn)之列表數(shù)據(jù)獲取/286
9.3.6基于treeGrid實(shí)現(xiàn)頁(yè)面布局與列表展示/290
9.3.7新增與修改菜單功能實(shí)戰(zhàn)/292
9.4角色與用戶模塊開(kāi)發(fā)實(shí)戰(zhàn)/301
9.4.1相關(guān)數(shù)據(jù)庫(kù)表介紹/301
9.4.2角色模塊實(shí)戰(zhàn)之列表數(shù)據(jù)獲取/304
9.4.3新增與修改角色功能實(shí)戰(zhàn)/308
9.4.4用戶模塊實(shí)戰(zhàn)之列表數(shù)據(jù)獲取/316
9.4.5新增與修改用戶功能實(shí)戰(zhàn)/320
9.4.6權(quán)限控制實(shí)戰(zhàn)/329
9.5系統(tǒng)安全性防護(hù)、日志存儲(chǔ)與部署上線/338
9.5.1系統(tǒng)安全性防護(hù)之XSS攻擊和SQL注入防御/338
9.5.2日志存儲(chǔ)的必要性與日志列表展示/344
9.5.3基于Spring AOP與自定義注解實(shí)現(xiàn)日志存儲(chǔ)/347
9.5.4項(xiàng)目部署上線/352
后記 總結(jié)與回顧