您好,登錄后才能下訂單哦!
springboot開發單體web shop的前言介紹和環境搭建方法,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
springboot 本身是為了做服務化用的,我們為什么要反其道使用它來開發一份單體web應用呢? 在我們現實的開發工作中,還有大量的業務系統使用的是單體應用,特別是對于中小型團隊來說,在項目開發之初選擇服務化開發是得不償失的,因為對于此類團隊,勢必所有的工作都是需要我們開發人員來做的。
小團隊或小公司如果開發人員把大規模的精力放在除業務之外的工作中,那么我們的開發效率勢必會特別低下,等我們系統開發一個版本出來,也許此類需求已經不是那么符合當前的發展了,此類團隊追求的是短平快并且方便部署更新。有人就會問,那我們又為什么不選擇SpringMVC
呢? 當然如果團隊中本身已經有成型的一套SpringMVC的框架可以拿來即用,當然也是完全ok的,但是所有使用過Springboot的同學都知道。
1.Springboot幫我們把以前在SpringMVC中需要使用XML來配置的configuration內置化了,開發人員完全可以把大量精力放在業務鉆研優化上面而不需要關注它是如何配置的。
2. 作為技術選型來說,一定要想到我們的業務也許會高速擴張,在后期我們得能快速更新技術體系或者升級系統,那么springboot的本能服務化就可以體現出來了。
3. 很多的新同學在學習springboot的時候,太多的資料本身是一種demo的學習,是需要大家進一步研究之后學以致用,不太貼近生產,我希望通過此次開發,可以直接開發一套可以生產使用的demo系統。
在開發任何一個新
系統的時候,我們要實現的是一套電商平臺,那么我們首先要考慮一個基本的電商平臺都包含哪些業務功能? 上圖展示了要實現一個電商最簡單的模塊信息。
在技術選型的時候,個人建議遵循幾點原則:
切合業務實際需要(任何脫離了業務的技術都是廢柴)
團隊人員能力(要符合團隊成員的實際情況,否則上手會很慢)
技術社區活躍度(選擇高活躍的技術對于后期排錯相當重要,更為重要的是大部分錯誤已經被別人試過了...)
安全性(必不可少的選擇)
可參考 Poc之后,我選擇放棄OSGI
我們主題很明確的表明了要使用springboot
來實現一個web
項目,那么抓住這兩個關鍵的點。 既然使用Springboot, 我們這里使用最新的版本2.2.0.RELEASE
, 既然是web項目,那么必然要使用到web相關的技術,tomcat
(springboot內置),并且我們采取前后端分離的技術來開發,后端提供restful 的api, 前端使用jquery
& vuejs
, 既然是一個真實項目,數據庫當然也是我們必不可少的,我們使用MYSQL 8.0+
,那么我們java要和db進行交互,我們使用mybatis
作為bridge. 基本的技術已經足夠我們使用了,那么具體依賴的package 后續會給大家一一介紹.
SpringBoot 2.2.0.RELEASE
Mysql 8.0.18
Mybatis 3.4.6
工預善其事必先利其器
, 以下是個人工具選擇,僅供參考:
IntelliJ IDEA (code tools)
Free Mybatis Plugin (幫助我們方法和SQL跳轉)
Lombok (使用注解節省太多的codes,提升效率)
Maven Helper(幫助依賴分析)
Restful Toolkit(可以實現和postman一樣的簡單效果,同時還能幫助我們生成一部分測試信息)
...其他插件就人各有志啦~
Mysql Workbench(Mysql tools)
PDman (數據庫設計工具,腳本的版本控制很好用哦)
說的再多,都不如來點實在的,那么我們接下來開始我們的表演吧.
首先我們需要創建一個Maven的parent module, 用來將我們所有的模塊信息都放在一起,如service
,controller
等等.
expensive-shop
打開IDEA,選擇File => New => Project
點擊Next,分別輸入GroupId
& artifactId
點擊Next,修改project name
(不改也沒有關系)
點擊Finish
此時,會生成src
和 pom.xml
, 因為該項目為父類項目,不會有code實現,因此,刪除src
目錄,并修改pom.xml
文件.
<!--?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> <parent> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-parent</artifactid> <version>2.2.0.RELEASE</version> <relativepath /> </parent> <groupid>com.life-runner</groupid> <artifactid>expensive-shop</artifactid> <version>1.0-SNAPSHOT</version> <name>expensive-shop</name> <description>develop a on-line shop</description> <packaging>pom</packaging> <properties> <project.build.sourceencoding>UTF-8</project.build.sourceencoding> <project.reporting.outputencoding>UTF-8</project.reporting.outputencoding> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter</artifactid> </dependency> <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-web</artifactid> </dependency> <!--spring默認使用yml中的配置,有時候要用傳統的xml或properties配置,就需要使用spring-boot-configuration-processor--> <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-configuration-processor</artifactid> <optional>true</optional> </dependency> <!--監控端點依賴--> <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-actuator</artifactid> </dependency> <dependency> <groupid>org.projectlombok</groupid> <artifactid>lombok</artifactid> <version>1.18.8</version> </dependency> </dependencies> </project>
主要關注2點: 1.修改packaging
為pom, 表明是一個父類集合 2.引入parent
節點為我們的springboot
,這里是設置整個project的springboot 相關依賴以及版本管控 從上述中,在該節點設置version 為 2.2.0.RELEASE
之后, 下面所有的group
為org.springframework.boot
的依賴項都沒有顯示的設置版本信息.
和創建父類項目一樣的創建過程,依次創建我們需要用到的child modules, 完成后如下圖:
經過上述環節,相信大家已經可以創建出我們項目所需要的架構環境了
看完上述內容,你們掌握springboot開發單體web shop的前言介紹和環境搭建方法的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。