日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

eclipse run on server 点不了finish_分享点经验 | springboot入门及编码

發(fā)布時(shí)間:2025/3/12 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 eclipse run on server 点不了finish_分享点经验 | springboot入门及编码 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

點(diǎn)擊藍(lán)字關(guān)注我們

AMP

很多新人在剛剛接觸后端開發(fā)的時(shí)候,可能對(duì)springboot的概念、如何快速上手一個(gè)springboot項(xiàng)目多多少少有些一知半解;此外寫出來(lái)的代碼也因?yàn)椴粔蛞?guī)范而可讀性較低,導(dǎo)致后期難以維護(hù)。本文旨在站在新手的視角,盡可能給出一個(gè)通俗的解釋。

Let's get started~

Spring是什么?

Spring是一個(gè)支持快速開發(fā)Java EE應(yīng)用程序的框架。它提供了一系列底層容器和基礎(chǔ)設(shè)施,并可以和大量常用的開源框架無(wú)縫集成,可以說(shuō)是開發(fā)Java EE應(yīng)用程序的必備。

Spring的兩個(gè)核心思想是:

1、IOC-控制反轉(zhuǎn)

我們知道,java中是通過(guò)new關(guān)鍵字來(lái)創(chuàng)建對(duì)象的,不僅麻煩而且容易造成資源浪費(fèi)。所以IOC應(yīng)運(yùn)而生,有了它我們?cè)趯?shí)際代碼中無(wú)需去一個(gè)個(gè)地手動(dòng)new 對(duì)象,而是把對(duì)象的創(chuàng)建、對(duì)象間的關(guān)系、對(duì)象的銷毀(生命周期管理)交給Spring容器去管理,只要從spring容器中拿對(duì)象來(lái)使用。

我們就先簡(jiǎn)單的理解為不用去new一個(gè)對(duì)象。

2、AOP-面向切片編程

SpringBoot是什么?

Spring Boot是一個(gè)基于Spring的套件,它幫我們預(yù)組裝了Spring的一系列組件,以便以盡可能少的代碼和配置,來(lái)開發(fā)基于Spring的Java應(yīng)用程序。

Spring Boot和Spring的關(guān)系就是整車和零部件的關(guān)系:

Spring相當(dāng)于提供了汽車的零部件,但是要裝好汽車上路,還需要我們自己動(dòng)手。

而Spring Boot則相當(dāng)于已經(jīng)幫我們預(yù)裝好了一輛可以上路的汽車,如果有特殊的要求,例如把發(fā)動(dòng)機(jī)從普通款換成渦輪增壓款,可以通過(guò)修改配置或編寫少量代碼完成。

總之,Spring和Springboot都是為了減少開發(fā)代碼中的重復(fù)工作、給代碼解耦(不至于改一個(gè)而動(dòng)全局)、方便引入其他框架(可以理解成模板)而存在的框架。

最簡(jiǎn)單的Springboot工程

Step1:maven安裝和配置。初次需要,此略

Step2:使用Idea的 Spring Initializr:

選擇 SDK,點(diǎn)擊【new】這里就是使用 JAVA SDK 要求版本 1.8+,選擇你默認(rèn)安裝在 C:\Program Files\Java\jdk1.8.0_191 目錄:

Step3:然后選擇默認(rèn)的 url (不用管)點(diǎn)擊【Next】:

Step4:然后填寫一下項(xiàng)目的信息:

注意:

1、此處group一般是域名反寫,如

com.chinalife.xxx

2、Java版本選擇當(dāng)前安裝的版本

Step5:先勾選上 Web 依賴:

Step6:勾選 SQl 下的 MySQL,MyBatis 依賴(連接數(shù)據(jù)庫(kù)的):(根據(jù)自己的項(xiàng)目選擇,后面可加)

Step7:選擇好項(xiàng)目的位置,點(diǎn)擊【Finish】。

此時(shí)我們來(lái)看看默認(rèn)生成的有什么:

  • SpringbootApplication:一個(gè)帶有 main() 方法的類,用于啟動(dòng)應(yīng)用程序。即從這里開始RUN。

  • application.properties:一個(gè)空的 properties 文件,后期可以根據(jù)需要添加配置屬性。如我們的項(xiàng)目使用了polardb,則該數(shù)據(jù)庫(kù)的信息就添加在這里:

  • pom.xml:Maven 構(gòu)建說(shuō)明文件。即如果需要引入其他的包,在這里添加那個(gè)包的依賴信息即可。比如上段提到我們使用了polardb,就需要在此引入其依賴。如果沒有這段依賴,我們需要手動(dòng)把polardb相關(guān)代碼復(fù)制進(jìn)本工程,可讀性極低。

  • SpringbootApplicationTests:一個(gè)空的 Junit 測(cè)試了,它加載了一個(gè)使用 Spring Boot 字典配置功能的 Spring 應(yīng)用程序上下文。

Java應(yīng)用工程分層

1、Dao層

Dao層:持久層,主要與數(shù)據(jù)庫(kù)交互,簡(jiǎn)言之就是通過(guò)將SQL語(yǔ)句和本項(xiàng)目中函數(shù)的對(duì)應(yīng),來(lái)封裝對(duì)數(shù)據(jù)庫(kù)的訪問(wèn),將數(shù)據(jù)庫(kù)中的對(duì)象“拿來(lái)”使用。

DAO層首先會(huì)創(chuàng)建Dao接口,接著就可以在配置文件中定義該接口的實(shí)現(xiàn)類。

2、Entity層

Entity層:實(shí)體層,數(shù)據(jù)庫(kù)在項(xiàng)目中的類

主要用于定義與數(shù)據(jù)庫(kù)對(duì)象應(yīng)的屬性,提供get/set方法,tostring方法,有參無(wú)參構(gòu)造函數(shù)

實(shí)例:我們的項(xiàng)目一個(gè)餐食管理系統(tǒng),所以其中之一的實(shí)體類就是Dish。

3、Service層

Service層:業(yè)務(wù)層 控制業(yè)務(wù)

業(yè)務(wù)模塊的邏輯應(yīng)用設(shè)計(jì),和DAO層一樣都是先設(shè)計(jì)接口,再創(chuàng)建要實(shí)現(xiàn)的類,然后在配置文件中進(jìn)行配置其實(shí)現(xiàn)的關(guān)聯(lián)。Service主要存放業(yè)務(wù)相關(guān)的邏輯,比如我們的餐食系統(tǒng)里,存放餐食的增刪改查功能。

好處:封裝Service層的業(yè)務(wù)邏輯有利于業(yè)務(wù)邏輯的獨(dú)立性和重復(fù)利用性。

接口

實(shí)現(xiàn)

4、Controller層

Controller層:控制層 控制業(yè)務(wù)邏輯

具體的業(yè)務(wù)模塊流程的控制,controller層主要調(diào)用Service層里面的接口控制具體的業(yè)務(wù)流程。

Controller和Service的區(qū)別是:Controller負(fù)責(zé)具體的業(yè)務(wù)模塊流程的控制;Service層負(fù)責(zé)業(yè)務(wù)模塊的邏輯應(yīng)用設(shè)計(jì)

總結(jié):controller層調(diào)用了Service層的方法,Service層調(diào)用Dao層的方法,其中調(diào)用的參數(shù)是使用Entity層進(jìn)行傳遞的。

一些其他便于理解的相關(guān)概念

容器、Docker和鏡像:

容器是鏡像的實(shí)例化:運(yùn)行中的這個(gè)鏡像稱為容器。

Docker是一個(gè)開源的應(yīng)用容器引擎,是一個(gè)輕量級(jí)容器技術(shù)。

Docker支持將軟件編譯成一個(gè)鏡像;然后在鏡像中各種軟件做好配置,將鏡像發(fā)布出去,其他使用者可以直接使用這個(gè)鏡像。

為什么使用容器?

兼容各種環(huán)境+提供底層服務(wù):

代碼寫好后難免會(huì)在不同的環(huán)境中運(yùn)行(如在window/linux),容器的出現(xiàn)使之能適配各種環(huán)境,開發(fā)人員可以僅關(guān)注程序本身,省去很多繁瑣的適配環(huán)境的配置工作。

此外,容器還提供了許多底層服務(wù)。例如,Servlet容器底層實(shí)現(xiàn)了TCP連接,解析HTTP協(xié)議等非常復(fù)雜的服務(wù),如果沒有容器來(lái)提供這些服務(wù),我們就無(wú)法編寫像Servlet這樣代碼簡(jiǎn)單,功能強(qiáng)大的組件。

常見的編碼規(guī)范

1.命名的大小寫:

類名使用UpperCamelCase風(fēng)格,如:XmlService

方法名、參數(shù)名、成員變量、局部變量使用lowerCamelCase風(fēng)格,如:inputUserId

包名使用小寫,點(diǎn)分隔符之間有且僅有一個(gè)自然語(yǔ)義的英文單詞。包名統(tǒng)一用單數(shù)形式。但類名如果有復(fù)數(shù)含義可以用復(fù)數(shù)形式。如:com.chinalife.ai.util

2.[]的位置:

類型和[]之間無(wú)空格相連定義數(shù)組,如:String[] args,int[] arrayDemo。而非String args[],int ?[]arrayDemo

3.縮進(jìn):

良好的縮進(jìn)有利于讓他人在維護(hù)代碼時(shí),迅速的了解代碼的邏輯結(jié)構(gòu)。

(1)大括號(hào)的使用約定。如果是大括號(hào)內(nèi)為空,則簡(jiǎn)潔地寫成{}即可,不需要換行;如果 是非空代碼塊則:1) 左大括號(hào)前不換行。2) 左大括號(hào)后換行。3) 右大括號(hào)前換行。4) 右大括號(hào)后還有 else 等代碼則不換行;表示終止的右大括號(hào)后必須換行。

(2)左小括號(hào)和字符之間不出現(xiàn)空格;同樣,右小括號(hào)和字符之間也不出現(xiàn)空格。反例:if (空格 a == b 空格)

(3)if/for/while/switch/do 等保留字與括號(hào)之間都必須加空格。

(4)采用 4 個(gè)空格縮進(jìn),禁止使用 tab 字符。說(shuō)明:如果使用 tab 縮進(jìn),必須設(shè)置 1 個(gè) tab 為 4 個(gè)空格。IDEA 設(shè)置 tab 為 4 個(gè)空格時(shí), 請(qǐng)勿勾選 Use tab character;而在 eclipse 中,必須勾選 insert spaces for tabs。

如:

4.縮寫注意事項(xiàng):

杜絕詞不達(dá)意的縮寫,杜絕無(wú)意義的命名。如int a;

注意:第3、4條的嚴(yán)格遵守,有利于他人在維護(hù)代碼時(shí)快速讀懂。

5.常量及變量命名:

在常量與變量的命名時(shí),表示類型的名詞放在詞尾,以提升辨識(shí)度。如:nameList

6.接口類與實(shí)現(xiàn)類的命名:

對(duì)于Service和DAO類,暴露出來(lái)的服務(wù)一定是接口,內(nèi)部的實(shí)現(xiàn)類用Impl后綴與接口區(qū)別。

如:CacheServiceImpl實(shí)現(xiàn)CacheService接口

7.接口規(guī)范:

接口類中的方法和屬性不要加任何修飾符號(hào)(public也不要加)。如:void commit();而非public abstract void commit();

其實(shí)在idea中,寫了修飾符號(hào)會(huì)被提醒標(biāo)灰:

8.各層命名規(guī)范:

????? Service/DAO 層方法命名規(guī)約:

  • 獲取單個(gè)對(duì)象的方法用 get 做前綴。

  • 獲取多個(gè)對(duì)象的方法用 list 做前綴,復(fù)數(shù)結(jié)尾,如:listObjects。獲取統(tǒng)計(jì)值的方法用 count 做前綴。

  • 插入的方法用 save/insert 做前綴。

  • 刪除的方法用 remove/delete 做前綴。

  • 修改的方法用 update 做前綴。

以上就是對(duì)Springboot和編碼規(guī)范的簡(jiǎn)單介紹,希望能幫助剛?cè)腴T的小伙伴們更好的理解。

記得關(guān)注我哦~
點(diǎn)擊下方

總結(jié)

以上是生活随笔為你收集整理的eclipse run on server 点不了finish_分享点经验 | springboot入门及编码的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 人人射人人插 | 黄色录像三级 | 在线免费观看 | 日本国产在线观看 | 我看黄色一级片 | 岛国黄色片| 啪啪在线视频 | 精品久久国产字幕高潮 | 欧美中文在线观看 | 黄色aaa大片| 国产人妖在线 | 日韩毛片一级 | 少妇太紧太爽又黄又硬又爽 | 伊人激情综合网 | 国产精品一品二区三区的使用体验 | 日韩精品在线第一页 | 久久精品爱 | 久久深夜 | 成人3d动漫一区二区三区 | 爱情岛av | 国产欧美一区二区三区在线 | 日韩爆操| 日韩欧美自拍 | 色哥网| 亚洲综合图片网 | 成人午夜淫片100集 伊人久久国产 | 国产亚洲高清视频 | 911成人网| 偷操| 国产精品无码中文 | 99久久精品免费看国产交换 | 亚洲精品日韩综合观看成人91 | 91精品国产综合久久久蜜臀图片 | 少妇把腿扒开让我舔18 | 欧美精品欧美极品欧美激情 | 国产日韩精品一区二区三区 | 好男人在线视频 | 超碰网站在线 | 奇米色影视 | 日韩欧美国产亚洲 | 大桥未久恸哭の女教师 | 国产不卡a | 日本色视频 | 91视频一区二区三区 | 激情综合网婷婷 | 99re免费视频 | 天堂av亚洲| 国产玖玖 | 波多野结衣av一区二区全免费观看 | www,五月天,com | 天天干天天草天天射 | 天堂资源网 | 日韩精品免费一区二区在线观看 | 成人免费av在线 | 91大神在线免费观看 | 97精品在线视频 | 精品亚洲在线 | 五月精品| 日本美女在线 | 波多野吉衣一区二区三区 | 黄色一级片在线播放 | 性xxxx欧美老肥妇牲乱 | 性人久久久久 | 大地资源中文在线观看免费版 | 91狠狠| 亚洲国产影院 | 久久久免费精品视频 | 国产精品麻豆果冻传媒在线播放 | 美国毛片av| 毛片aa | 日本毛片在线观看 | 经典一区二区 | 青娱乐免费在线视频 | 激情视频一区二区 | h网站免费在线观看 | 久久亚洲一区二区三区四区五区 | 久久男人视频 | 成人网在线视频 | 激情五月综合色婷婷一区二区 | 色屁屁草草影院ccyycom | 蜜桃9999 | 夜夜嗨一区 | 午夜精品福利一区二区三区蜜桃 | 日韩欧美专区 | 国产一区二区小说 | 老湿福利影院 | 性欧美欧美巨大69 | 青青青青在线 | 亚洲精品国产精品国自产在线 | 国产一级在线免费观看 | 69视频在线观看免费 | 人人射人人爽 | 丰满少妇xoxoxo视频 | 国产资源在线免费观看 | 美女视频免费在线观看 | 国产在线视频网站 | 双性皇帝高h喷汁呻吟 | 四虎精品一区 | 日韩欧美国产高清 |