黑馬程序員最新Java項目實戰(zhàn)《蒼穹外賣》,最適合新手的SpringBoot+SSM的企業(yè)級Java項目實戰(zhàn)。
前端環(huán)境搭建
前端工程基于 nginx 運行,因為《蒼穹外賣》項目側(cè)重于后端開發(fā),所以黑馬程序員給我們直接提供了前端的代碼部分,我們只需要在本地搭建好前端環(huán)境,并運行起來,專注于后端開發(fā)即可。
-
在資源貼中下載前端工程資源并將其解壓:
-
進(jìn)入
\nginx-1.20.2\html\sky
路徑,可以看到打包好的項目目錄結(jié)構(gòu)如下: -
那么我們需要將
nginx-1.20.2
目錄移動到?jīng)]有中文的目錄下才能正常啟動!?。?/p> -
雙擊
nginx-1.20.2/nginx.exe
文件,窗口會一閃而過,之后訪問瀏覽器地址【http://localhost/】: -
此時,前端環(huán)境已經(jīng)搭建完畢。
注:當(dāng)前 Nginx 的配置文件中已經(jīng)配置了反向代理,通過此配置可以將前端請求轉(zhuǎn)發(fā)到后端服務(wù)。
后端環(huán)境搭建
項目結(jié)構(gòu)
后端工程基于 maven 進(jìn)行項目構(gòu)建,并且進(jìn)行分模塊開發(fā)。項目的目錄結(jié)構(gòu)如下:
使用 IDEA 導(dǎo)入初始工程,項目的整體結(jié)構(gòu)如下:
對工程的每個模塊作用說明:
序號 | 名稱 | 說明 |
---|---|---|
1 | sky-take-out | maven父工程,統(tǒng)一管理依賴版本,聚合其他子模塊 |
2 | sky-common | 子模塊,存放公共類,例如:工具類、常量類、異常類等 |
3 | sky-pojo | 子模塊,存放實體類、VO、DTO等 |
4 | sky-server | 子模塊,后端服務(wù),存放配置文件、Controller、Service、Mapper等 |
對項目整體結(jié)構(gòu)了解后,接下來我們詳細(xì)分析上述的每個子模塊:
sky-common 模塊
sky-common 模塊中存放的是一些公共類,可以供其他模塊使用:
分析sky-common模塊的每個包的作用:
名稱 | 說明 |
---|---|
constant | 存放相關(guān)常量類 |
context | 存放上下文類 |
enumeration | 項目的枚舉類存儲 |
exception | 存放自定義異常類 |
json | 處理 json 轉(zhuǎn)換的類 |
properties | 存放 SpringBoot 相關(guān)的配置屬性類 |
result | 返回結(jié)果類的封裝 |
utils | 常用工具類 |
sky-pojo 模塊
sky-pojo 模塊中存放的是一些 entity、DTO、VO 類:
分析sky-pojo模塊的每個包的作用:
名稱 | 說明 |
---|---|
Entity | 實體,通常和數(shù)據(jù)庫中的表對應(yīng) |
DTO | 數(shù)據(jù)傳輸對象,通常用于程序中各層之間傳遞數(shù)據(jù) |
VO | 視圖對象,為前端展示數(shù)據(jù)提供的對象 |
POJO | 普通Java對象,只有屬性和對應(yīng)的getter和setter |
sky-server 模塊
sky-server 模塊中存放的是 配置文件、配置類、攔截器、controller、service、mapper、啟動類等:
分析sky-server模塊的每個包的作用:
名稱 | 說明 |
---|---|
config | 存放配置類 |
controller | 存放controller類 |
interceptor | 存放攔截器類 |
mapper | 存放mapper接口 |
service | 存放service類 |
SkyApplication | 啟動類 |
Git 版本控制
創(chuàng)建本地倉庫
-
點擊【VCS】、【創(chuàng)建 Git 倉庫】:
-
選擇當(dāng)前項目,點擊確定:
-
出現(xiàn) git 提交按鈕,本地倉庫創(chuàng)建成功:
創(chuàng)建遠(yuǎn)程倉庫
-
訪問 https://gitee.com/,新建倉庫,完善倉庫信息:
-
點擊創(chuàng)建:
本地文件推送遠(yuǎn)程倉庫
-
添加遠(yuǎn)程倉庫地址:
-
點擊 IDEA 菜單欄中的提交按鈕:
-
選中【未進(jìn)行版本管理的文件】,下方輸入本次提交的注釋,點擊【提交并推送】【仍然提交并推送】:
-
點擊推送:
-
推送完成,刷新遠(yuǎn)程倉庫即可:
數(shù)據(jù)庫環(huán)境搭建
-
下載數(shù)據(jù)庫文件,【sky.sql】:
-
通過該 sql 文件直接可創(chuàng)建數(shù)據(jù)庫,所以不需要提前創(chuàng)建數(shù)據(jù)庫,直接使用 SQLYog 導(dǎo)入該文件執(zhí)行即可:
-
執(zhí)行完成后,共創(chuàng)建出11張表:
前后端聯(lián)調(diào)
后端的初始工程中已經(jīng)實現(xiàn)了登錄功能,直接進(jìn)行前后端聯(lián)調(diào)測試即可。實現(xiàn)思路:
-
啟動前端環(huán)境:
-
啟動后端環(huán)境:
-
前端頁面輸入賬號密碼【賬號:admin;密碼:123456】進(jìn)行登錄:
完善登錄功能
-
打開employee 表,修改數(shù)據(jù)庫中明文密碼,改為 123456 經(jīng)過 MD5 加密后的密文【e10adc3949ba59abbe56e057f20f883e】:
文章來源:http://www.zghlxwxcb.cn/news/detail-696088.html
-
修改 EmployeeServiceImpl 實現(xiàn)類中的用戶登錄邏輯的代碼,調(diào)用
DigestUtils
的md5DigestAsHex()
方法將前端提交的密碼進(jìn)行 MD5 加密,再跟從數(shù)據(jù)庫中查詢的密碼進(jìn)行比對:文章來源地址http://www.zghlxwxcb.cn/news/detail-696088.htmlpublic Employee login(EmployeeLoginDTO employeeLoginDTO) { ...... //密碼比對 // 對前端傳過來的明文密碼進(jìn)行MD5加密處理 password = DigestUtils.md5DigestAsHex(password.getBytes()); if (!password.equals(employee.getPassword())) { //密碼錯誤 throw new PasswordErrorException(MessageConstant.PASSWORD_ERROR); } ...... }
到了這里,關(guān)于最適合新手的SpringBoot+SSM項目《蒼穹外賣》實戰(zhàn)—(二)開發(fā)環(huán)境搭建的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!