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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

开发环境中实现Lombok消除Java冗余

發布時間:2025/5/22 java 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 开发环境中实现Lombok消除Java冗余 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Lombok是一種JavaArchive(JAR)文件,可用來消除Java代碼的冗長。通過在開發環境中實現Lombok,開發人員可以節省構建諸如hashCode()和equals()這樣的方法以及以往用來分類各種accessor和mutator的大量時間。 我們看這樣一個例子,一個標準的Javabean。一個典型的Javabean一般具有幾個屬性。每個屬性具有一個accessor和mutator(getter和setter)。通常還會有一個toString()方法、一個equals()方法和一個hashCode()方法。初看上去,其中可預見的冗余就已經非常多了。如果每個屬性都具有一個getter和setter,并且通常如此,那么又何必詳細說明呢? 讓我們來看看Lombok。為了消除代碼行,Lombok使用注釋來標識類和Java代碼塊。在前述的那個Javabean示例中,所有的getter、setter以及其他三個方法都是在編譯時被暗示并包括進來的。 而且更好的是如果您使用的是Eclipse或IBM?WebSphere?StudioApplicationDeveloper(如果還沒用的話,建議最好使用),您就可以將Lombok集成到Java項目并即刻獲得開發時結果。換言之,Eclipse編譯器可以立即識別所暗指的getters/setters,而其他Java代碼則可引用這些方法。 最直接的好處當然是代碼行的減少,這真的很棒。并且,如果有一個特定的getter或setter需要特別的注意,那么您就不必為了找到這個特定的getter或setter而遍歷數十行代碼。代碼也會更為簡潔并且冗余也少了。 Lombok還讓您得以簡化代碼的其他部分—不僅僅是Javabean。比如,還可以減少try/catch/finally塊內以及同步方法內的冗余代碼。現在,我們來看看在您自己的開發環境中如何能實現上述目的。 安裝Lombok 要進行安裝,本文假設您使用的是Eclipse或WebSphereStudioApplicationDeveloper。如果不是,您仍可使用Lombok;但是不能享用開發時的種種益處。不過,您仍然可以享用編譯時的益處。首先,打開您的瀏覽器并將URL指向http://projectlombok.org/。 在撰寫本文之時,用這個URL打開的頁面的右上角會出現一個很大的單詞。這個單詞是“Download”。單擊該單詞并開始下載lombok.jar。此文件無需解壓縮,而從其他站點下載的文件中,99%都需要解壓縮。 下載此文件后,需要執行這個JAR文件。在您的操作系統中打開一個提示符,進入到安裝了lombok.jar的那個目錄,并鍵入java-jarlombok.jar。以上假設在您的路徑內已經有JavaRuntimeEnvironment(JRE)。如果沒有,需要添加它。如果要了解如何添加,可以參考針對您的具體操作系統的相關文檔。如果您使用的是Microsoft?Windows?,那么還可以雙擊這個lombok.jar圖標。同樣地,您必須能夠從您的圖形用戶界面(GUI)執行JAR。 不管采取何種方式,應該最終都能看到一個Lombok安裝屏幕。該屏幕會提問Eclipse或WebSphereStudioApplicationDeveloper可執行文件位于何處。它的默認位置有可能是正確的。但有時可能需要更改這個默認位置。單擊Install/Update,Lombok會被迅速并入Eclipse開發環境。如果已經運行了Eclipse,那么就需要關閉它并重啟。 使用Lombok 現在,就可以在Eclipse或WebSphereStudioApplicationDeveloper內開始使用Lombok了。請參考清單1內的代碼。
  • 清單1.Javabean的一個良好開端 ?
  • publicclassLure{ ?
  • ?privateStringname; ?
  • ?privateintsize; ?
  • ?privateStringcolor; ?
  • ?privateStringstyle; ?
  • }?
  • 以上是一個簡單的Javabean的典型開始。從這里,可以為每個屬性添加getters和setters。然后再添加一個equals()方法、一個toString()方法和一個hashCode()方法。有了Lombok,您無需自己完成上述操作。相反,您只需添加一個注釋:@Data。沒錯,就這么簡單。清單2中包括了@Data。
  • 清單2.Javabean的一個更好的開端 ?
  • importlombok.Data ?
  • public@DataclassLure{ ?
  • ?privateStringname; ?
  • ?privateintsize; ?
  • ?privateStringcolor; ?
  • ?privateStringstyle; ?
  • }?
  • 不過請記住,只有當lombok.jar位于您的構建路徑且lombok.Data被導入到這個Java類時,上述代碼才會奏效。如果在Eclipse或WebSphereStudioApplicationDeveloper內查看這個類的概要(通常位于屏幕上這個類的右側),就能看到這些方法會被自動添加到這個Lure類。 若不能立即看到這個概要,可以單擊Eclipse內的Window菜單,然后選擇ShowView。從所出現的彈出菜單中,選擇Outline,它應該出現在屏幕的右側。強制顯示類的概要的熱鍵組合是Alt+Shift+Q,然后是O。 如果您編寫了另一個類來實例化Lure,您將能立刻擁有對Lure所暗指的方法(比如getName()或setSize())的訪問。您還能擁有對equals()、hashCode()和toString()的訪問。很棒,對吧? 如果您使用的不是Eclipse或WebSphereStudioApplicationDeveloper,那么所暗指的這些方法添加只有在實際編譯這些代碼時才能被認可。所以雖然在沒有Eclipse或WebSphereStudioApplicationDeveloper時仍可以使用Lombok,但Lombok最初的設計目的就是與Eclipse或WebSphereStudioApplicationDeveloper相集成。 在生成getter/setter方法時,Lombok遵從傳統的標準。所有這些方法名都以get或set開頭并且屬性名都是大寫的。當然,如果屬性是一個Boolean,情況例外。在這種情況下,getter以is開始,而非get。這是Javabean的一種標準實踐。 現在,假設有一個Javabean對您的一個getter具有特殊要求。在清單2的例子中,getStyle()可能返回顏色和大小的組合。在這種情況下,可以按自己的意愿編寫getStyle()方法的代碼。Lombok檢查您的代碼并且不會基于這個屬性創建其自己的getStyle版本。又假設,您有一個getter方法不想公開。為此,Lombok讓您可以輸入一個附加參數。清單3給出了一個定制的修飾符(modifier)。
  • 清單3.一個定制的修飾符 ?
  • privateStringname; ?
  • @Getter(AccessLevel.PROTECTED)privateintsize; ?
  • privateStringcolor; ?
  • privateStringstyle;?
  • 在本例中,getSize()方法將不會被公開。它具有一個受保護的修飾符,所以它只對派生子類可用并且在Lure類本身的內部。您可能并不總是想接受Lombok為您提供的其他默認值。比如,toString()方法會列出類名以及所有的屬性名和值,中間以逗號分割。這個列表出現在類名的旁邊。比如,假設在記錄這個Lure類時,您并不關心顏色。為了更改toString()的默認設置,需要使用ToString注釋。

    轉載于:https://blog.51cto.com/tdshzd01/296351

    總結

    以上是生活随笔為你收集整理的开发环境中实现Lombok消除Java冗余的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 亚洲高清在线看 | 国产永久免费无遮挡 | yw视频在线观看 | 漂亮人妻被中出中文字幕 | 精品熟妇视频一区二区三区 | 日韩一二三四五区 | 在线第一页 | 草色网| 精品三级视频 | 一区二区三区四区免费 | 肉肉av福利一精品导航 | 无码久久精品国产亚洲av影片 | 欧美 国产 日本 | 亚洲国产97 | 芒果视频在线观看免费 | 亚洲性免费 | 亚洲中文字幕无码专区 | 韩国av免费观看 | 天天综合网在线观看 | 久久久久久一级片 | 在线观看视频国产 | 国产夜色视频 | 免费在线观看日韩 | 欧美午夜视频 | 高h乱l高辣h文短篇h | 特大黑人巨交吊性xxxxhd | 亚洲精品白虎 | 午夜粉色视频 | 波多野结衣中文字幕在线播放 | 欧美特级黄色片 | 毛片毛片毛片毛片 | 色屁屁一区二区三区 | 精品国产乱码一区二 | 成人高清视频免费观看 | 国产精品福利小视频 | heyzo北岛玲在线播放 | 国产一区久久久 | 亚洲天堂不卡 | 天堂影视在线观看 | 亚洲精品成人a | 东京热毛片 | 高清不卡视频 | 国产不卡视频一区二区三区 | 国产污片在线观看 | 欧美特级特黄aaaaaa在线看 | 欧美成人精品 | 日韩av一区二区三区在线 | 日韩人妻精品在线 | 精品成人一区二区三区久久精品 | 毛片大片 | 精品综合在线 | 亚洲福利精品 | 婷婷综合社区 | 美日韩一区二区 | 日本不卡一区二区三区视频 | 成人做受黄大片 | 国产香蕉一区 | 日本免费在线一区 | 日韩黄色网 | 亚洲高清免费视频 | 色综合久久久久久 | 久久久久99 | 国产毛片久久久久久久 | 受虐m奴xxx在线观看 | 人妻少妇一区二区 | 久国产视频| 麻豆啪啪 | 国产乱人乱偷精品视频 | 一区二区91 | 一本大道综合伊人精品热热 | 在线观看日韩一区二区 | 国产精品久久久久久久久久久久久久久 | 逼特逼在线视频 | 久久女同互慰一区二区三区 | 狂野欧美性猛交xxxx777 | 欧美日韩视频免费 | 日韩视频一区二区在线观看 | 欧美特级a | 波多野结衣一本 | 精品一区二区三区四区视频 | 美女黄色片网站 | 夜夜春很很躁夜夜躁 | 天天在线观看 | 亚洲成熟少妇视频在线观看 | 99热在线只有精品 | 国产老女人乱淫免费可以 | 国产激情无码一区二区 | 免费看片色 | 人人免费操 | 在线成人国产 | 日本三级片在线观看 | 国产亚洲精品久久久久久777 | 日韩福利电影在线观看 | 亚洲午夜精品久久久 | 亚洲精品福利网站 | 精品一区二区久久 | 永久免费国产 | 久草免费网站 | 美女露出粉嫩尿囗让男人桶 |