今日目標,輪流出牌。 選擇 打出去之前要先選擇~~ 修改 game.js,我們要先取得使用者點擊的牌,並且在第二次點擊時取消選擇,這邊用 Set 來決定目前選...
今日目標,倒數計時。 Timer 既然要讀秒,那我們先嘗試使用 Timer,不過這個方法是不可行的,待會會說明,然後這邊為了方便,我們寫測試程式來 Demo。...
今日目標,即時顯示自己的手牌、別人的手牌數。 WebSocket 前面有提過手牌會透過 WebSocket 的單播來發給各個玩家,其他人的手牌數則透過對該房間的...
今日目標,開始遊戲。 對,今天只有「開始」還不包含遊戲的過程,但在開始之前,我們要先定義一些之後遊戲過程方便操作的類別或實例。先建立一個 package,名稱為...
今日目標,定義卡片相關的類別和方法。 撲克牌遊戲最麻煩的地方就是要定義花色跟數字,還有牌型的大小比較... 先建立一個 package,名稱是 card (糟...
今日目標,「退出房間」和「踢出房間」的功能。 其實「退出房間」跟「踢出房間」是同個方法,指定 username 將其踢出去即可,而退出房間小弟也是用 API 的...
今日目標,「準備」功能。 今天我們要透過 WebSocket 更新房間內成員的準備狀態,聽起來很簡單,但還是有些細節要注意 判斷準備的依據,準備的時候要變成沒...
今日目標,將房間頁面的資訊透過 WebSocket 串接並即時顯示。 Multicast 當某個房間內的相關資訊改變的時候,比如:房主換人、有人進出造成人數改變...
今日目標,網址 room 的請求分發、房間頁面。 頁面 我們依然先搞定頁面的部份,再來處理 Controller。 在 templates 底下建立一個 HT...
今日目標,使用 WebSocket 傳遞房間列表資料,並即時的將其顯示在頁面上。 Controller 我們依舊需要在 Controller 負責對定義的 en...
今日目標,房間列表的頁面、建立和加入房間功能。 Room List 頁面 我們首先建立房間列表的頁面以及對應的 Controller 做請求分配,HTML 的部...
今日目標,記錄使用者的狀態。 先描述使用者的畫面和可操作功能 使用者在房間列表的頁面 可以看到各個房間 點選「加入」後進到該房間的頁面 使用者在房間的頁...
今日目標,定義房間、房間列表。 Room 我們首先定義一個房間應該要有的資訊,房主(owner)、其他成員(guests)、房號(roomId),再來就實作這個...
今日目標,配置 WebSocket 設定。既然昨天介紹了 WebSocket 的相關背景知識,那今天當然就是寫 WebSocket 相關的程式了,首先要設定 W...
今日目標,介紹 WebSocket 技術、解釋之後如何使用 WebSocket 實作遊戲機制。 WebSocket WebSocket 是一種基於 TCP 的全...
今日目標,在頁面檢驗登入、使用 Thymeleaf Page Layout 作為模板,建構網頁。 在前端檢驗登入狀態 雖然昨天我們在後端的部分檢驗登入狀態,避免...
今天要將Spring Boot專案啟動測試,並討論一些我自己遇到出問題的點。Day26所提到的問題也會在[2. K8s的限制]中解答。 Spring Bo...
今日目標,實現自定義登入功能。 驗證功能 在實現自定義功能時,我們會需要有個實例負責儲存使用者的資訊,這個實例就是 UserDetails,並且會有相關 Ser...
今天來撰寫Spring Boot API的Deployment & Service yaml檔案 teacherapi_deployment.ya...
今日目標,設置 web security。 Security 我們需要對網站做一些權限管理,包含登入等行為,就需要先設置 web security config...
今天要將Spring Boot專案打包成Jar,並製作成Image上傳至Docker Hub上,方便以後使用。 打包Jar Step1.確認專案可以使...
今日目標,加入各種限制來完善註冊功能。 Validation 我們定義註冊必須滿足一些條件:Email、Username 必須唯一,而且 Password 長度...
由於是使用虛擬機,所以必須設定固定IP,方便設定與重啟虛擬機時IP跑掉之類的鬼問題。 Ubuntu 固定IP設定 以下為更改範例,可自訂IP,更改後開...
今日目標,實現註冊功能。 註冊功能 UserRepository 在 user package 底下建立 java interface,名稱為 UserRep...
今天會簡單介紹Spring Boot框架及介紹範例系統~ Spring Boot 簡介 Spring是基於Java語言為基礎的開放原始碼Web應用程式...
今日目標,透過 UserController 接收請求後顯示註冊頁面,並簡單地使用 Thymeleaf。 註冊頁面 在 user package 底下建立 j...
在上一篇我們看到 Quarkus 應用啟動非常快速,而且可以編譯成 Native。所以非常適合佈署在雲服務的環境。開發的過程中其實也可以注入 Bean, 跟...
今天會分兩個階段進行,先是將前天yaml部署時就建立的使用者賦予權限,再將資料庫匯入進去,讓我們開始吧~ 使用者權限設定 Step1.登入root帳號...
今日目標,讓一些事自動化吧,Maven auto-reload、Hot reload server、使用 Lombok 簡化 Getter & Sett...
這次使用的是VM VirtualBox架設Ubuntu20.04進行實驗。 K8s安裝MySql Step1.使用kubectl Apply兩個yam...