搜尋

搜尋結果

Spring Data 關聯型態 01
科技新知
MacauYeah・2024-07-16

筆者身邊的朋友,首次接觸 ORM 的關聯型態時都會覺得很難,筆者自己也是。但在好好地理順它的設計時,就會覺得其實很簡單。 因為篇輻很長,我們先以Code First的角度,先體驗一下ORM程式讀取的便捷性,以及解決一個常見的序列化問題。 雙向存取 例如一個Parent,有好幾個Child @Entity public class Parent ... Parent Primay Key @OneToManymappedBy=quot;parentquot; List children = new ArrayList; TODO add remove @Entity public class Child ... Child Primay Key @ManyToOne Parent parent; 上述的寫法很簡潔,ORM會為你自動加入join column,處理關聯的載入。在讀取Parent時,它的所有Children就可以直接在Java層面讀取,在讀取Child時,它的Parent也隨時取得。也就是,開發人員只要經SQL準備其中一方的資料,另一方並不需要手動準備,它就可以自動按需載入。 RESTFul API 坑雙向存取 Spring Data在Java層面的雙向存取,已經做到很方便。但經常坑到我們的是Spring Data與RESTFul API的混合應用。當我們嘗試經API回傳我們的Parent Json時,API會很聰明地把關聯的Children也變成Json回傳。但他也會把child中的parent不斷重複變成json,變成無限輪迴。 坊間有兩種不同的解決方案,可以防止無限輪迴。 讓Json可以認得已經序列化的元素。@JsonIdentityInfo 讓Json只可以單向序列化serialization。@JsonManagedReference, @JsonBackReference, @JsonIgnore 筆者兩個方向都試過,但首個方法並不通用,至少它不能算是一般常見的無腦Json結構。它需要伺服器、客戶端都懂這如何經IdentityInfo認得重複出現的元素。 而單向序列化,是筆者現時的通用解。在設計RESTFul READ API時,筆者就會決定到底是Parent自動回傳Child,還是Child自動回傳Parent。決策的考慮因素,主要在於是否可以簡化Client的API調用次數。通常從Parent出發,自動回傳Child,可以節省API調用。但如果是選項性的結果List of Value,就倒過來。有時候,遇著API需要雙向設計,就只好自己設計DTO資料傳輸對象 Data transfer object, DTO。 例如Parent API,就原封不動回傳原本的元素 @Entity public class Parent ... Parent Primay Key @OneToManymappedBy=quot;parentquot; List children = new ArrayList; @Entity public class Child ... Child Primay Key @ManyToOne @JsonIgnore Parent parent; Child API,就反過來引用。 public class ParentDTO ... Parent Other fields except children public class ChildDTO ParentDTO parent; ... Child Other fields 這種DTO,看起來很麻煩。但其實Spring有提供一個簡便的複制DTO功能,它可以把自動複制兩個class中有同一名稱、同一型別的欄位到另一個class上,不需要逐個欄位明文寫出來。 BeanUtils.copychild, childDTO; BeanUtils.copyparent, parentDTO; childDTO.setParentparentDTO 因為child、childDTO中的parent欄位型別不同,BeanUtils.copy會自動忽略,其他欄位就會自動複制。 註 其實古早的網頁系統設計,DTO的概念一直存取。只是現在RESTFul API的流行,很多框架已經提向便捷的Json轉換。若然平時只需Json單向存取,筆者還是省略DTO的建立。

Spring官方教學 | Spring Certified Professional 2023
科技新知
MacauYeah・2023-11-07

筆者作為一個網頁程式開發者,使用Spring Boot開發已經有六年。從當初Spring Boot 1.x開始,查看官方Tutorial七零八落,慢慢摸索,到大改版升級2.x,都碰過不少釘。最近Spring Boot亦要升級到3.x,正式進入Java 17時代。筆者亦不斷Update自己,保持程式於一個可支援的狀態。 相對以前,現在入門Spring Boot已經比1.x年代輕鬆很多。主要前些年某些網頁開發的概念,例如REST API,已經深入行業,大家不再糾結要走傳統MVC還是RESTFul API,也使得Spring Boot這樣的Framework,可以有一個受眾比較廣的統一入門教學。 筆者最近也正式參與Spring Academy的官方教學,好好地厘清一些概念。 官方連結 httpsspring.academypathsspringcertifiedprofessional2023 在讀過官方的幾個章節後,真的覺得很適合有興趣的人去看一看。主要是因為 官方以一個經典例子作為切為點,教學REST API,In Memroy Database。它還介紹了一些簡易的HTTP Code Standard、Test Case。真的比其他民間教學更有系統性。 提供一個可以在網頁上就實驗到的Lab實習環境。那是極為重要的一件事,因為九成人,在setup java 及library dependency maven, gradle時,都碰釘到直接放棄。有時是因為公司工作環境比較有要求,並不允許你使用一鍵安裝的java套件及它的library dependency;有時則因為網路安全,java把你公司的firewall當作a man in the middle MITM attack擋了,也有時是因為你公司的firewall把java擋了。Spring Academy在一個遠端的https網頁提供實驗環境,真的比本機開發要易入門很多。 Spring Academy可要多謝vscode、codeserver,及其他VM、Container技術。 在真實環境中,筆者也有自己的codeserver,打包java os cert等等,盡量減少firewall問題。 因為官方教學持續以Spring boot的最新版本作為教材,它更新的速度總比民間要快。只是官方的教學不會全面覆蓋到所有Spring project。如果大家作為Web入門的話,還是有推薦的。 在Spring boot 3.x當中,因為要求Java 版本至少為17以上,那些教材也有使用一些Java 17的新語法Syntax,實在也令人驚喜。 基本上Java 17現在可以簡化getter setter switch statement,這些在開發Web的環境下都是很重複的事。在Java 11或以前,只能經過IDE去生成getter setter等,但似始都有會一大堆Code佔據你的頁面。 官方教學及Lab環境暫時免費,除非大家很在意的修業證書,不然都可以自由免費看。 官方教學真的值得一看,雖然距離真正開發還差很遠,筆者日後若有條件,會針對官方沒有提及的內容作補充,分享一些在技術面上所需求的最少可運行配置。

「澳門銀河」、「澳門百老匯」及星際酒店與您共度夢幻聖誕 佳節娛樂散發鑽石光芒
節慶盛事
LifeMag Editor・2015-12-08

百老匯搖滾秀一眾音樂高手將於每晚7時至10時發放強勁音樂節拍,結合聖誕歡欣樂曲,令整條百老匯大街滿載節日氣氛。 澳門百老匯一眾舞蹈藝人於充滿節日氣氛的拱門裝飾前施展舞技,為百老匯搖滾秀打開序幕。 位於「澳門銀河」樓高16米的巨型聖誕樹,是全澳門其中一棵最高的聖誕樹之一 鑽石大堂的聖誕佈置滿載聖誕色彩,以最璀璨奪目的光芒迎接每位蒞臨「澳門銀河」賓客。 位於大門口的「澳門銀河」大型標誌已經繫上閃亮彩帶,以迎接耀眼繽紛的冬日慶典。 澳門銀河trade; 於今個冬日佳節,散發鑽石光茫,帶來閃耀全城兼且獨一無二的精彩娛樂、琳瑯滿目的節日美食,以及全澳門其中一棵最高、逹16米的巨型聖誕樹,配以四周歡欣樂曲、舞蹈與璀璨裝飾,讓每一位蒞臨「澳門銀河」、「澳門百老匯」及星際酒店的賓客歡度充滿夢幻與無限歡騰的聖誕與新年佳節! 巨型聖誕樹繽紛奪目 樹立於大門口的「澳門銀河」大型標誌已經繫上閃亮彩帶,以迎接閃耀繽紛的冬日慶典。賓客只要一踏入「時尚匯」,即時會被全澳門其中一棵最高、逹16米的巨型聖誕樹所吸引,完全投入這個如鑽石般璀璨的冬日夢幻國度!在有如雪花飛舞的購物大道中漫步,更可與不同的聖誕裝飾包括閃鑽巨熊、雪人, 馴鹿及聖誕老人拍照留念。連接「澳門銀河」綜合渡假城中三個瑰麗大堂,滿佈各式閃鑽裝飾,耀眼生光。閃鑽巡遊與快閃表演更會由12月4日起每晚8時盛大展開,一眾節日造型表演人員,配以聖誕音樂及精彩表演於「澳門銀河」及「澳門百老匯」閃亮登場。 「時尚匯」購物中心發放無限歡欣 為了令節日慶典添上更多歡樂,賓客可參與僅於「時尚匯」購物中心舉行的全澳門最大型購物獎賞 mdash; 「時尚匯」矚目購物賞,贏取價值一億元的豐富禮品。賓客只需於活動期間於奢華時尚購物熱點「時尚匯」購物中心盡情消費,於多家時尚設計名師品牌搜羅各式獨家產品,即可獲享精彩禮遇,以及參加幸運大抽獎贏取終極購物體驗大獎。 節慶娛樂遍佈每個角落 此外,一連串閃亮奪目的聖誕表演,將為賓客帶來別具時尚及滿載歡樂的購物體驗。充滿和諧歡樂氣氛的傳統聖誕歌曲樂韻悠揚,伴隨一眾表演人員帶來精彩的芭蕾及探戈舞蹈表演,將優雅與動感共冶一爐。 「澳門百老匯」打破傳統,將流行樂曲元素注入聖誕佳節,百老匯搖滾秀將於聖誕期間玩轉多首經典聖誕樂曲,演奏出耳目一新的聖誕樂章。由12月中旬開始,百老匯搖滾秀更會以閃亮優美的舞蹈表演展開序幕,為賓客帶來前所未有的節日歡樂氣氛! 各式華麗藝術及精彩表演遍佈「澳門​​銀河」、「澳門百老匯」及星際酒店不同角落,勢必令賓客驚喜萬分。一眾高蹺藝人以及穿上極具節日色彩服飾的表演人員,引領賓客投入滿載歡欣的節日氣氛。星際酒店大堂為迎接住節,除了添上傳統聖誕佈置之外,多位穿上英國愛德華時代懷舊服飾的表演人員更會在大堂迎接賓客,與他們拍照留念,令四周洋溢濃厚的典雅聖誕氣息。 如果想享受一個與別不同的假期體驗,賓客只需參加《星球大戰:原力覺醒》澳門優先場,即可感受前所未有的節日歡欣。「澳門銀河」UA銀河影院將於12月17日星期四午夜12時01分率先公映這部年度矚目大作。賓客只要於盛會當晚打扮成星戰角色,即有機會贏取星戰禮品及UA銀河影院免費戲票,一眾星戰迷絕對不容錯過。 一系列別緻裝飾、奢華的購物體驗以及令人目不暇給的娛樂節目已經準備就緒,請即與摰愛親朋蒞臨「澳門銀河」、星際酒店及「澳門百老匯」,一同見證散發鑽石光茫,閃耀璀璨的節日慶典。「澳門銀河」致力提供多元化的購物、美食及娛樂體驗,務求為賓客帶來難忘的節日時光!

就算生活忙盲茫,請放慢腳步,讓靈魂跟上您的腳步
其他
皓芯・2021-09-05

世界上唯一有價值的東西,就是一個人充滿活力的靈魂。mdash;美國思想家、文學家拉爾夫.沃爾多.愛默生 Ralph Waldo Emerson 這是一個觸動人類靈魂深處的故事,從前有一個人mdash;主角「揚」,因為快速緊湊的工作生活,導致失去了自己的靈魂仍渾然不知;他有時候覺得,身邊彷彿被整齊的格子包圍。直到有一次出差醒來,他不知身在何處,他忘了為何而來、他甚至忘了自己的名字hellip;hellip; 經睿智的女醫生點撥才知道,自己只顧步履匆匆的走,卻把靈魂遺落在某個地方。他決定遵從醫囑,隱居市郊小屋靜候他的靈魂趕上,他一直等到鬍子都長出來了,才等到了渾身疲累傷痕、不停追趕他的靈魂。 本書《遺失的靈魂》,為2018年諾貝爾文學獎得主奧爾嘉.朵卡萩首部繪本作品,她是波蘭當代最受歡迎的女作家之一,本書曾獲得2018年慕尼黑國際青少年圖書館白烏鴉獎、並榮獲2018年義大利波隆那拉加茲獎故事類書籍評審特別推薦。 本書繪圖者尤安娜.康哲友,把這本書設計了一個如電影般的開場,公園的冬日雪景、人們渺小如螻蟻,靈魂與主人在此分離;圖像呼應文字敘述意境悠遠,為故事掀開序幕。 在現今一切都講求快速的「快年代」,人們每天汲汲營營度日,很少有機會停下來思考、檢視自己的步調。您有多久不曾歇下腳步?有多久不曾留意週遭的人事物?請停一停匆忙的腳步,說不定我們也能等到,正在後面疲憊地、追趕著我們的靈魂。當我們靜下心來,可能會發現身邊原來有很多美好的風景。 法國著名作家羅曼bull;羅蘭曾經說過:ldquo;讓靈魂休息一下,養一養它在塵世中奔波所受的傷,然後再去奔波。rdquo; 《遺失的靈魂》 作者 奧爾嘉.朵卡萩 繪者 尤安娜.康哲友 譯者 林蔚盷 出版社 大塊文化 出版年份 20200122 ISBN 9789865406509 訂購地點 鞠智繪本屋

藥物不同於食物,讓食物成為藥物
其他
皓芯・2022-07-01

在日常生活中,進食不僅意味着為身體補充營養,身為消費者的我們,進食行為還會對經濟、自然環境等產生重要的影響。 近年來,越來越多的人為了健康選擇植物性飲食,是因為有大量科學研究認證,植物性飲食更有利於健康。但同時人們對素食仍存在很多疑惑,如長期素食會否導致蛋白質、鈣等營養素的缺乏,會否因缺鐵而患上貧血症等。 本書作者徐嘉博士,美國責任醫師協會PCRM營養學專家,美國約翰․霍普金斯大學醫學院生理學博士。2012年起通過微博,開始了在中國傳播植物性飲食的好處,積極推廣「21天健康挑戰」;自2014年起,健康公益講座足跡遍及中國、香港、台灣、新加坡、馬來西亞、和美國等全球超過150個城市900多場,影響了數百萬人;2017年底,徐嘉博士在公眾號上開始健康飲食傳播之路。 本書將嚴謹的營養學理論,引用了各種科學圖表及研究數據,講結合大量真實案例,讓我們了解適合以食ldquo;蔬、果、豆、谷rdquo;為主的健康飲食(素食)基本原則,及各種常見疑問。純素Vegan植物性飲食者、孕婦、兒童、長者、運動員、環保及宗教人士等各類人群,都能從書中找到適合自己的飲食建議。 本書圖文並茂,分析植物性與動物性食物提供的營養,是一本受眾很廣、可以解答關於健康飲食90%的問題的科普書。作者在書末補充了參考文獻二維碼,掃描後可以看到書中部分文章的具體引文。 日益豐富的物質生活,也被日益增長的健康問題困擾。病從口入,控制飲食就是控制疾病,食物是我們每天要吃的。葷素搭配是大家的首選,書中介紹了健康素食與各種疾病的關係,素食雖不能治療任何疾病,素食只是停止了一切肉蛋奶我們的傷害。 大家在感嘆生活發生翻天覆地變化的同時,新冠肺炎疫情讓人們更深入認識到免疫力的重要作用。免疫力與健康關係密切,讓我們從自己做起,人人享有健康生活,希望大家都身體健康。 《非藥而愈:一場席捲全球的餐桌革命》簡體字書 作者: 徐嘉 著 出版社: 江西科学技术出版社 出版日期:20181201 ISBN 9787539065243 訂購地點 一書齋 圖片來源博客來

金沙閣及888自助餐將推出母親節特選菜單
澳城餐飲
LifeMag Editor・2016-04-22

澳門金沙reg;旗下兩間屢獲殊榮的餐廳金沙閣及888自助餐,將於5月7日至8日推出母親節限時特選晚餐菜單,讓賓客可慶祝母親節的同時品嚐美味佳餚。為進一步表達對母親的謝意及支持澳門本地團體,但凡女性食客於金沙閣享用晚宴,將獲贈由澳門弱智人士家長協進會的準備的手製鮮花,以慶祝這個特別的周末及向大眾傳播喜悅。 金沙閣 以粵菜為主的金沙閣特別為母親節推出兩款特選晚餐菜單,每款套餐各提供10道美味菜餚,價格分別為澳門幣2,488(6位用)或澳門幣3,288(8位用)。 特選晚餐菜單提供多款香氣四溢及令人垂涎的美味佳餚,包括上湯波士頓龍蝦伊麵、金牌脆皮炸子雞及准山杞子螺頭燉雞湯。金沙閣作為澳門頂級中菜館之一,以傳統粵菜為主,專為賓客提供精選廣東佳餚。 快與您摯愛的母親一同前往優雅舒適的金沙閣慶祝這特別節日。訂座預約請致電853 8983 8222。 888自助餐 888自助餐將於5月7日至8日推出母親節專屬自助晚餐,為賓客提供多款精選美食選擇,價格為成人每位澳門幣338元及小童每位澳門幣168元。 餐單供應多款令人垂涎的特別節日菜式,包括燒原條三文魚、具葡國特色的葡式烤羊架及葡式海鮮燴飯、以及令賓客滿足於甜品之旅的黄梅朱古力卷,紅桑子芝士餅,喚起每位與母親共聚的美好時光。這間廣受歡迎的自助餐廳將著名的拉斯維加斯自助餐概念引進澳門,並融合中國及東南亞國家的美食,為賓客提供澳葡、日本、泰國及中國等多國美食。 快來與母親在最受歡迎的自助餐餐廳品嚐豐盛佳餚,以表達對母親的謝意。訂座預約請致電853 8983 8222。