摘要:的子模塊我們先講層,因?yàn)槲蚁氚雅渲迷谶@里也說(shuō)下。長(zhǎng)這樣我們接下來(lái)看看每個(gè)子模塊如何編寫(xiě)。二子模塊搭建子模塊搭建子模塊配置在將之前,我們先將的配置文件,使用一個(gè)全局的配置文件或,我們推薦使用文件。
現(xiàn)在,我們來(lái)搭建一個(gè)簡(jiǎn)單的分模塊的SSM開(kāi)發(fā)框架吧,
一: 分析并創(chuàng)建項(xiàng)目先來(lái)簡(jiǎn)單分析下我們項(xiàng)目的結(jié)構(gòu):
比如:我現(xiàn)在搭建一個(gè)管理系統(tǒng),我們把項(xiàng)目分為:
tx-parent 頂級(jí)父項(xiàng)目(公司默認(rèn)有的)
|- tx-manager ---------------------------pom.xml 父項(xiàng)目
|- tx-manager-mapper ---------------數(shù)據(jù)層 |- tx-manager-common ---------------工具層 |- tx-manager-bean ---------------實(shí)體層 |- tx-manager-service --------------服務(wù)層 |- tx-manager-web ---------------控制層
至于為什么這么分,我想都應(yīng)該知道吧,當(dāng)然是為了代碼復(fù)用啦。 下面我們一個(gè)一個(gè)的來(lái)分析下。
tx-parent 頂級(jí)父項(xiàng)目tx-parent是我們公司的頂級(jí)父項(xiàng)目, 是一個(gè)pom.xml ,用于管理依賴(lài)的。我們這里來(lái)看看他的pom.xml的問(wèn)題。
tx-manager 項(xiàng)目4.0.0 com.topinfo tx-parent 1.0.0-SNAPSHOT pom UTF-8 2.5 2.4 1.1.10 2.5 3.3.2 1.3.2 3.3 2.3.0 aliyun-repos http://maven.aliyun.com/nexus/content/groups/public/ false org.springframework.boot spring-boot-dependencies 2.1.1.RELEASE pom import nz.net.ultraq.thymeleaf thymeleaf-layout-dialect ${thymeleaf-layout-dialect.version} javax.servlet servlet-api ${servlet-api.version} provided net.sf.json-lib json-lib ${json-lib.version} joda-time joda-time ${joda-time.version} org.apache.commons commons-lang3 ${commons-lang3.version} org.apache.commons commons-io ${commons-io.version} commons-net commons-net ${commons-net.version} com.alibaba druid ${druid.version} topinfo-releases Topinfo Release Repository http://192.168.19.82:8081/repository/releases/ topinfo-snapshots Topinfo Snapshot Repository http://192.168.19.82:8081/repository/snapshots/ ${project.artifactId} org.apache.maven.plugins maven-resources-plugin 3.1.0 ${project.build.sourceEncoding} org.apache.maven.plugins maven-compiler-plugin 3.2 1.8 1.8 ${project.build.sourceEncoding} org.apache.tomcat.maven tomcat7-maven-plugin 2.2
tx-manager 這個(gè)就是我們的管理項(xiàng)目,他也是一個(gè)pom.xml項(xiàng)目,主要是用來(lái)聚合的,需要繼承頂級(jí)父項(xiàng)目,然后在依統(tǒng)一的工具項(xiàng)目,最后pom.xml文件長(zhǎng)這樣:
4.0.0 com.topinfo tx-parent 1.0.0-SNAPSHOT com.topinfo.manager tx-manager 1.0.0-SNAPSHOT pom tx-manager-web tx-manager-service tx-manager-bean tx-manager-mapper com.topinfo tx-common 1.0.0-SNAPSHOT
我想熟悉 maven的人都知道吧,這應(yīng)該不用多解釋吧。接下來(lái)我們繼續(xù)創(chuàng)建所有項(xiàng)目都創(chuàng)建好,然后在配置他們的pom.xml依賴(lài)。
tx-manager 的 tx-manager-web 子模塊我們先講web層,因?yàn)槲蚁氚裺pringboot配置在這里也說(shuō)下。
簡(jiǎn)單分析:
1、我們引入spring-boot-starter-web的依賴(lài),因?yàn)槲覀円玫絪pingmvc
2、我們引入tx-manager-service依賴(lài),因?yàn)槲覀円{(diào)用服務(wù)層。
3、然后在引入一些其他模板啊,tomcat內(nèi)嵌的,測(cè)試的
如:
tx-manager 的 tx-manager-service 子模塊4.0.0 com.topinfo.manager tx-manager 1.0.0-SNAPSHOT tx-manager-web war com.topinfo.manager tx-manager-service 1.0.0-SNAPSHOT org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-tomcat provided org.springframework.boot spring-boot-starter-thymeleaf nz.net.ultraq.thymeleaf thymeleaf-layout-dialect org.springframework.boot spring-boot-starter-test test net.sf.json-lib json-lib
服務(wù)層肯定是調(diào)用dao層,也會(huì)調(diào)用實(shí)體等,具體看pom.xml
tx-manager 的 tx-manager-mapper 子模塊4.0.0 com.topinfo.manager tx-manager 1.0.0-SNAPSHOT tx-manager-service com.topinfo tx-common 1.0.0-SNAPSHOT com.topinfo.manager tx-manager-mapper 1.0.0-SNAPSHOT com.topinfo.manager tx-manager-bean 1.0.0-SNAPSHOT
tx-manager-mapper,dao層pom.xml
tx-manager 的 tx-manager-bean 子模塊4.0.0 com.topinfo.manager tx-manager 1.0.0-SNAPSHOT tx-manager-mapper com.topinfo.manager tx-manager-bean 1.0.0-SNAPSHOT
實(shí)體子模塊,暫時(shí)什么都不依賴(lài)
4.0.0 com.topinfo.manager tx-manager 1.0.0-SNAPSHOT tx-manager-bean
這樣,整個(gè)項(xiàng)目都創(chuàng)建就完成了,上傳svn。長(zhǎng)這樣:
我們接下來(lái)看看每個(gè)子模塊如何編寫(xiě)。
二: 子模塊搭建 1: tx-manager-web 子模塊搭建 1: tx-manager-web 子模塊配置在將 tx-manager-web 之前,我們先將SpringBoot的配置文件,SpringBoot使用一個(gè)全局的配置文件application.properties或application.yml, 我們推薦使用 yml 文件。
在項(xiàng)目?jī)?nèi),SpringBoot啟動(dòng)會(huì)默認(rèn)掃描以下位置的:application.properties或application.yml文件。
規(guī)則:
按照優(yōu)先級(jí)從高到低的順序,所有位置的文件都會(huì)被加載,高優(yōu)先級(jí)配置內(nèi)容如果與低優(yōu)先級(jí)的內(nèi)容沖突則覆蓋,如果不沖突則會(huì)去并集。
我們也可以手動(dòng)的修改其默認(rèn)讀取文件的路徑(一般我們不建議做),我們還可以從文件的外部加載,比如:命令行,環(huán)境變量等,我們這里不擴(kuò)展,我們建議使用: 類(lèi)路徑/config 這個(gè)目錄,如圖:
2: tx-manager-web 子模塊靜態(tài)資源靜態(tài)資源路徑是指系統(tǒng)可以直接訪問(wèn)的路徑,且路徑下的所有文件均可被用戶(hù)通過(guò)瀏覽器直接讀取。
在Springboot中默認(rèn)的靜態(tài)資源路徑有:classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/
我們選擇classpath:/static/, 我們把圖片、js、css等靜態(tài)資源都存放到這個(gè)目錄中,如圖:
在訪問(wèn)的時(shí)候,為了在界面中可以訪問(wèn)js、css等,還需要對(duì)靜態(tài)資源進(jìn)行路徑映射。如:
@Configuration public class WebMvcConfig implements WebMvcConfigurer { @Override public void addResourceHandlers(ResourceHandlerRegistry registry){ //靜態(tài)資源映射 registry.addResourceHandler ("/static/**").addResourceLocations ("classpath:/static/"); WebMvcConfigurer.super.addResourceHandlers (registry); } }
頁(yè)面資源通過(guò)這樣引用
這樣頁(yè)面就可以正常訪問(wèn)了。我這里是去amazeui網(wǎng)站去下載了一個(gè)demo, 我最好運(yùn)行效果:
后
OK , 界面運(yùn)行起來(lái)了。
完善:
為了 http://192.168.90.51:8080/ 也可以訪問(wèn)到login.html
添加一個(gè)界面跳轉(zhuǎn)的controller.
/** * @ClassName: PageController * @Description: 頁(yè)面跳轉(zhuǎn)的Controller * @author: 楊攀 * @date: 2018年12月27日 下午2:38:36 * @Copyright: 2018 www.tuxun.net Inc. All rights reserved. */ @Controller public class PageController { /** * @Description: 打開(kāi)首頁(yè) * @param: @return * @return: String */ @RequestMapping("/") public String showIndex(){ return "login"; } /** * @Description: 其他頁(yè)面 跳轉(zhuǎn) * @param: @param page * @param: @return * @return: String */ @RequestMapping("/{page}") public String showpage(@PathVariable String page){ return page; } }
web 層級(jí)就先這樣,我們接下來(lái)處理dao層
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/72899.html
摘要:開(kāi)公眾號(hào)差不多兩年了,有不少原創(chuàng)教程,當(dāng)原創(chuàng)越來(lái)越多時(shí),大家搜索起來(lái)就很不方便,因此做了一個(gè)索引幫助大家快速找到需要的文章系列處理登錄請(qǐng)求前后端分離一使用完美處理權(quán)限問(wèn)題前后端分離二使用完美處理權(quán)限問(wèn)題前后端分離三中密碼加鹽與中異常統(tǒng)一處理 開(kāi)公眾號(hào)差不多兩年了,有不少原創(chuàng)教程,當(dāng)原創(chuàng)越來(lái)越多時(shí),大家搜索起來(lái)就很不方便,因此做了一個(gè)索引幫助大家快速找到需要的文章! Spring Boo...
摘要:接著上一篇,我們?cè)跍y(cè)試可以允許后,我們接著來(lái)寫(xiě)一個(gè)查詢(xún)功能,一連接數(shù)據(jù)庫(kù)的查詢(xún)例子我來(lái)看看項(xiàng)目的結(jié)構(gòu)頂級(jí)父項(xiàng)目公司默認(rèn)有的父項(xiàng)目數(shù)據(jù)層 接著上一篇,我們?cè)跍y(cè)試web可以允許后,我們接著來(lái)寫(xiě)一個(gè)查詢(xún)功能, 一、 連接數(shù)據(jù)庫(kù)的查詢(xún)例子 我來(lái)看看項(xiàng)目的結(jié)構(gòu): tx-parent 頂級(jí)父項(xiàng)目(公司默認(rèn)有的) |- tx-manager ------------------------...
摘要:一項(xiàng)目簡(jiǎn)介模仿抖音做的一個(gè)短視頻微信小程序,用搭建小程序后臺(tái),用框架搭建短視頻后臺(tái)管理系統(tǒng),小程序后臺(tái)通過(guò)分布式監(jiān)聽(tīng)節(jié)點(diǎn)自動(dòng)下載或刪除短視頻后臺(tái)管理系統(tǒng)上傳的視頻。 一、項(xiàng)目簡(jiǎn)介 模仿抖音做的一個(gè)短視頻微信小程序,用SpringBoot搭建小程序后臺(tái),用SSM框架搭建短視頻后臺(tái)管理系統(tǒng),小程序后臺(tái)通過(guò)分布式zookeeper監(jiān)聽(tīng)節(jié)點(diǎn)自動(dòng)下載或刪除短視頻后臺(tái)管理系統(tǒng)上傳的視頻。 二、環(huán)境...
閱讀 1560·2021-11-25 09:43
閱讀 4112·2021-11-15 11:37
閱讀 3231·2021-08-17 10:13
閱讀 3539·2019-08-30 14:16
閱讀 3564·2019-08-26 18:37
閱讀 2515·2019-08-26 11:56
閱讀 1171·2019-08-26 10:42
閱讀 648·2019-08-26 10:39