搜尋

搜尋結果

生蠔泛濫丹麥人不高興 中國網民:發放生蠔簽證 5年內保證消滅
走遍世界
Jackst・2017-04-27

丹麥駐中國大使館官方微博24日貼文說,近來海岸太平洋生蠔泛濫,鼓勵民眾用「吃」來消滅這些生蠔,但大家都很冷漠。超想吃的中國網友呼籲丹麥核發「生蠔簽證」,保證5年消滅生蠔。 丹麥駐中國大使館微博24日發出以「生蠔長滿海岸,丹麥人卻一點也高興不起來」為標題的文章,引發中國網友瘋狂轉載、熱議與迴響。 有中國網友就貼文說,「把簽證放寬,開闢吃生蠔簽證,10年內無限次往返,每次停留最長1個月,我估計5年差不多就消滅這些生蠔了。」 還有中國網友說,「肯定是你們丹麥人不會做,不可口,所以大家都不愛吃,看看我們四川每年吃小龍蝦,小龍蝦都不夠我們吃,請帶我們四川人去吃。」 這篇文章指出,太平洋生蠔原本是不屬於丹麥海域。這種新物種近年入侵到丹麥後,由於沒有天敵,在海岸邊肆意瘋長,想下水游泳的人得穿著鞋才能跨過牠們。丹麥本土的Limfjord生蠔也被牠們「擠兌死了」。 丹麥科學家和漁民已經向丹麥自然保護局投訴多次,但丹麥政府沒有辦法處理這些棘手的入侵者。丹麥官方鼓勵民眾去海岸邊採集這些生蠔帶回家煎炒烹炸,但沒有多少人這樣做,所以根本沒有效果。 這篇文章說,「我們鼓勵大家通過『吃』來消滅這些生蠔,但是大家都一張冷漠臉。」 這篇文章近來在中國微博瘋傳,中國網友熱議,有人貼文說,「你們在海邊建個旅館,讓中國人免費住,每天提供烹飪用具和火,用你們航空公司的飛機接中國人去你們那。什麼生物危機,保證你們以後地皮都是平。」 中國網友還說,「搞好進出口檢驗檢疫環節,大量出口到中國來吧!」「你們生蠔簽證什麼時候開始發,材料我都準備好了」、「蒜都扒好了」、「炭和油需要自己帶嗎?」 還有中國網友說,「所以生蠔簽證你們開不開?」「開了,入侵物種就從生蠔變成中國吃貨了」「芝士焗生蠔、炭燒生蠔、醬爆生蠔、白灼生蠔、酥炸生蠔、生蠔豆腐湯,生蠔乾燜香菇、香煎生蠔、生蠔粥,饞嘴。」

Spring boot web api 異常處理
科技新知
MacauYeah・2025-10-28

我們在編寫程式時,經常會遇到一些極端的情況,不會經過 function 的方式回傳結果。例如一個 function 原本是提供讀檔功能,但用戶傳入的並不是一個有效的檔案路徑,又或是誰路徑權限不足,無法讀取。這些不正常的結果,並不是原本 function 所協定的回傳值。那麼,我們會拋出異常 Exception ,中斷所有被呼叫中的 function ,讓上層用戶去考慮怎樣處理這個問題。 在 Web API 中,這些 Exception 就更常見。要求用戶傳入的參數,用戶就是有時候少了幾個。覆寫資料的時候,原本的資料已被刪除。但我們現在是經過 Web Api,不能像過去一直向上拋出異常就能通知用戶。我們需要的,是把異常轉成對應的 Http Status Code,讓用戶端可以快速識別異常的類型。 java 異常對應 Http Response Code 其實在 spring boot web 中,要做轉譯,是很簡單的。在定義 java Exception的時候,若有@ResponseStatus,spring boot web 就會自動回應對應的 http error code。 @ResponseStatusHttpStatus.FORBIDDEN public class CustomAuthenticationException extends RuntimeException public CustomAuthenticationException public CustomAuthenticationExceptionString message supermessage; 以後,任何一個地方拋出 CustomAuthenticationException (假設上層沒有人攔截)都會把該 Controller 的結果改為 http 403。Spring boot 也很聰明的,把異常中的 message 隱藏 ,免得有網安的問題。 若我們定義 Exception 時,沒有@ResponseStatus,Controller 就會變成 http 500,例如我在 controller 中拋個常見的 IOException,這次的結果就會變成 http 500。 @GetMappingquot;apiioErrorquot; public String forceIOException throws IOException throw new IOExceptionquot;force io errorquot;; 如果某些時候,我們想使用 java Exception 中的 message 欄位作為報錯信息,讓 http 客戶端,可以通過固定的 message 檔位找到問題訊息,我們可以在application.properties中,加入server.error.includemessage=always。有些特殊情況,在開發模式時 mvn springbootrun ,已經可以見到有 Exception message,但在投産後java jar又看不到。主要因為開發模式中, pom 有 optional springbootdevtools,會自動加入了server.error.includemessage=always,但 mvn package 後就沒有,因為 runtime 沒有 springbootdevtools 的覆蓋。 額外處理 異常處理除了想控制 http status code 外,有時還需要做一些額外處理,例如發出通知郵件等。若想做額外處理,需要另做一個 @RestControllerAdvice 的類,在接到指定的 exception 時,可以轉換不同的 http code ,而且還可以執行額外 java code ,改變 http ResponseBody 。 @RestControllerAdvice public class GlobalExceptionHandler @ExceptionHandlervalue = RuntimeException.class @ResponseStatusHttpStatus.INTERNAL_SERVER_ERROR public Map handleRuntimeExceptionException ex return Map.ofquot;retquot;, false, quot;anyfieldsquot;, ex.getMessage; 但要注意,一旦使用@RestControllerAdvice 後,就要考慮有沒有改變了某些預設的行為。例如上述的@ExceptionHandlervalue = RuntimeException.class,代表所有RuntimException.class的子類,都會歸由該 function 所處理。當然,你也可以多加幾個 function 來處理不同的子類。 Reference springbootwebapivalidate

最多 8 人組隊!澳門百老匯 200 平方米漫遊式 VR
娛樂殿堂
Cheers!・2018-07-09

全球領先的自由行動虛擬實境(VR)技術開發商 Zero Latency 最近進駐澳門百老匯,澳門站是 Zero Latency 在全球的第 19 個據點,頂尖的技術可讓玩家擺脫一般 VR 裝置的束縛,加上 200 平方米的寬敞場館可以讓玩家無拘無束地走動,除此之外,隊員更可即時溝通商量對策,臨場感滿分! 遊戲包括心驚膽跳的喪屍狙擊戰、太空基地任務以及家庭趣味冒險等,每場最多可供 8 名玩家參與。 超強裝備: (官網圖片) 三款精彩遊戲: ► Engineerium 趣味解謎遊戲 玩家在光怪陸離的世界,完成一個個迷宮挑戰,適合VR 新手! ► Zombie Survival 驚慄喪屍射殺遊戲 玩家會被蜂擁而至的喪屍圍攻,團隊需力保性命,等待救援隊到達,畫面逼真,非常刺激。 ► Singularity 太空射擊遊戲 玩家會與一眾機械人和無人機展開激烈對戰,殲滅終極破壞者Terminator。 ▲ 遊戲開始前,工作人員會講解遊戲玩法,置裝後就可以出發! ▲ 遊戲中玩家可看見其他隊友的虛擬化身,即場對話和商討抗敵對策。 ▲ 超廣闊的漫遊式遊戲空間將 VR 體驗昇華到更高層次。 ▲ 玩家彷彿身歷其境,是虛擬國度的真諦! Zero Latency 虛擬實境遊戲體驗館 地址:澳門百老匯 價格:$450 人(一組最多 8 名玩家) 時間:約 45 分鐘 網址:httpzerolatencyvrmacau.com

Oracle Database in Docker
科技新知
MacauYeah・2023-09-22

雖然筆者之前有提過,Docker並不是萬能,Docker在管理有狀態應用Stateful Application的情況下,只能走單機路線。但因為Docker實在很方便,所以連Oracle Database這類強狀態應用也有出Docker版本。當然,它在預設的情況下,只能在單機下操作。 不過即使在單機操作下,還是有一些跟其他Docker Image有差異的地方,需要特別拿出來聊聊。 假設根據官方的教學,跑起了一個oracle19c的Docker Container。再查看當中的Process,你會發現有一個內部PID為1的runOracle.sh 在Docker中這個PID為1的Process是很重要的,它是判斷整個Container有沒有運行的依據。它就是當初在Docker Image中Entrypoint或CMD指定的那個指令生起的Process。Docker daemon要進行停止指令,要停止container時,也是對著PID為1的那個process來處理。 一般的情況下,如果PID為1的那個process可以無腦地停了、重開,那一切都好辦。但在Oracle Database的情況下,就不適合。因為Database始乎都是有交易概念的Transaction,它的停止並不是殺了process就了事,它還要考慮HDD操作中,有那些可以被考慮為完成,有那些下次要還原undo、重做redo。如果殺了process就等於Oracle 的Shutdown Abort,有機會下次開機會,就會有交易異常而且無法決定該如何操作。 大家需要先進入Docker container,經sqlplus進行必要的關閉Database指令。但此時,PID為1的那個process,其實還在進行中,在Docker 層面,它就像是Docker Container還在正常運行中,只是Database離線了。又因為sqlplus關閉Database並不是馬上有結果的,所以在整體關閉時可能需要串連command。就像

【澳門圖書閣】和孩子起靜下來閱讀吧!5本學齡前兒童圖書推介
文化創意
Lifemagparents・2020-04-08

學齡前兒童(36歲)大多好動活潑,對一切事物充滿好奇!而閱讀正可令孩子沉穩,靜下心來。另外還可以訓練聆聽能力和專注力,對於兒童將來的發展很有幫助!以下為大家推介5本適合學齡前兒童閱讀的圖書,快來看看吧! 這些圖書均來自圖書閣,它是一個提供免費線上英語圖書的平台,適合不同年齡層的兒童收看。大部份圖書皆有語音閱讀的功能,最後還附有練習,有效加深孩子對故事的認識。 網站操作說明: 【圖書閣】上線啦!最適合兒童的線上電子書平台,免費過百本兒童圖書盡在CTM! 我們上一次亦推薦了幾本圖書適合68歲的小朋友收看,有興趣可以看看:養成親子共讀的習慣吧!5本趣味十足的兒童圖書推介 The Slide Page.1 《The Slide》講述Sally在公園玩滑梯的經過,從中學會禮讓和排隊。 適合年齡 46歲(Level C) The Pig Page.1 《The Pig》講述一隻小豬的心情變化,教會小朋友表達不同的情緒:像是開心、害怕等等。插圖非常生動! 適合年齡 46歲(Level C) Who Can Get the Cheese Page.1 《Who Can Get the Cheese》這個故事書如其名。主人公是兩隻老鼠Melvin和Mindy,它們經過認真地討論和分工後,最後成功取得它們心念念的起司塊。 適合年齡 46歲(Level D) Sharing In art class Page.2 《Sharing In art class》講述「分享」這個主題,主角因為同學們願意借顏色筆給她而順利完成一幅畫。 適合年齡 46歲(Level B) The Game Page.2 《The Game》講述Kim為求買到心儀的遊戲,努力賺錢! 適合年齡 46歲(Level B) 作者:Cher 更多文章推薦: 【混血王子養成記】我的孩子會是怎樣的?mdash;mdash;上帝給了他們很多骰子 【混血王子養成記2】嬰兒睡覺是頭等大事 mdash;mdash;來回地獄又折返人間 【混血王子養成記3】幼稚園報考記mdash;mdash;混血兒的抉擇 【混血王子養成記4】幼兒麻煩三寶﹕不睡覺、不吃飯、常生病mdash;mdash;總有一項在你附近(上)