網頁

2024/9/18

Windows CMD命令列建立空檔案

Windows的cmd建立空檔案的方式如下。

2024/9/14

今日風情 20240914

2024年9月14日星期六。

2024/9/12

2024 IntelliJ IDEA Community 建立Spring Boot 2專案

2024年在IntelliJ IDEA Community建立Spring Boot 2 Web專案過程如下。

2024/9/11

今日風情 20240911

2024年9月11日星期三。

Windows Git Bash 複製/貼上 快速鍵

Windows在Git Bash使用複製貼上時,快速鍵非熟悉的Ctrl+C / Ctrl+V,而是Ctrl+Insert/Shift+Insert

2024/9/9

Windows 安裝Apache Ant

Windows安裝Apache Ant。

Java Hello Ant

建立一個簡單的Java專案並用Apache Ant執行。

Eclipse 匯入Ant專案

Eclipse匯入Ant專案的方式如下。

今日風情 20240909

2024年9月9日星期一。

2024/9/8

今日風情 20240908

2024年9月8日星期日。

2024/9/7

今日風情 20240907

2024年9月7日星期六。

2024/9/2

Java String 格式化浮點數無小數 format double float nubmer without decimal number

Java將浮點數double, float格式化為無小數的字串方式如下。

2024/9/1

今日風情 20240901

2024年9月1日星期日。

2024/8/30

今日風情 20240830

2024年8月30日星期五。

2024/8/25

今日風情 20240825

2024年8月25日星期日。

2024/8/24

今日風情 20240824

2024年8月24日星期六。

2024/8/21

AmazingTalker資深軟體工程師面試

前陣子收到獵頭邀請進行了AmazingTalker資深軟體工程師的面試作業,作答如下,未進入下一階段。

今日風情 20240821

2024年8月21日星期三。

Go轉Java感想

從寫了快3年的Go轉回去寫Java頭2天的感想是,「慢、複雜、囉嗦」。我連建個Rest API都建不起來,都忘光光了。

2024/8/20

Eclipse Enhanced Class Decompilor無作用

因為要看沒有source code的jar的class檔內容而在Marketplace裝了Enhanced Class Decompilor plugin,但開啟class檔時仍無法看到解編的原始碼。

Eclipse 關閉web.xml引發的An internal error occurred during: "Loading descriptor ..."錯誤

關閉Eclipse匯入dynamic web project時,一直跳出由web.xml引起的錯誤An internal error occurred during: "Loading descriptor ..."的方式如下。

IntelliJ IDEA 無法開啟既有檔案目錄為專案

IntelliJ IDEA無法開啟檔案目錄為專案。點選[Open]按鈕然後選擇該目錄時毫無反應。

今日風情 20240820

2024年8月20日星期二。

Java web.xml context-param contextConfigLocation用途

Java Web應用程式中web.xml內的<context-param>contextConfigLocation作用如下。

2024/8/19

2024/8/18

今日風情 20240818

2024年8月18日星期日。

2024/8/17

今日風情 20240817

2024年8月17日星期六。

2024/8/16

今日風情 20240816

2024年8月16日星期五。

2024/8/15

今日風情 20240815

2024年8月15日星期四。

2024/8/14

ASUS ExpertBook B9400CBA-0181A1255U開箱

為了新工作買了ASUS ExpertBook B9400CBA-0181A1255U 14吋商用筆電開箱。

今日風情 20240814 重機環島第三天

2024年8月14日星期四,重機環島旅行第三天。

2024/8/13

今日風情 20240813 重機環島第二天

2024年8月13日星期二,重機環島旅行第二天。

2024/8/12

今日風情 20240812 重機環島第一天

2024年8月12日星期一,重機環島旅行第一天。

2024/8/11

今日風情 20240811

2024年8月11日星期日。

2024/8/10

今日風情 20240810

2024年8月10日星期六。

2024/8/9

今日風情 20240809

2024年8月9日星期五。

2024/8/8

今日風情 20240808

2024年8月8日星期四。

2024/8/7

今日風情 20240807

2024年8月7日星期三。

2024/8/6

今日風情 20240806

2024年8月6日星期二。

2024/8/5

今日風情 20240805

2024年8月5日星期一。

2024/8/4

今日風情 20240804

2024年8月4日星期日。

2024/8/3

今日風情 20240803

2024年8月3日星期六。

2024/8/2

今日風情 20240802

2024年8月2日星期五。

2024/8/1

2024/7/31

今日風情 20240731

2024年7月31日星期三。

2024/7/30

今日風情 20240730

2024年7月30日星期二。

2024/7/29

今日風情 20240729

2024年7月29日星期一。

2024/7/28

今日風情 20240728

2024年7月28日星期日。

2024/7/27

今日風情 20240727

2024年7月27日星期六。

2024/7/26

今日風情 20240726

2024年7月26日星期五。

2024/7/25

今日風情 20240725

2024年7月25日星期四。

2024/7/24

今日風情 20240724

2024年7月24日星期三。

2024/7/22

今日風情 20240722

2024年7月22日星期一。

2024/7/21

今日風情 20240721

2024年7月21日星期日。

2024/7/20

2024/7/19

今日風情 20240719

2024年7月19日星期五。

2024/7/18

Jenkins Docker build no space left on device error

Jenkins建置專案時出現錯誤no space left on device

Mac zsh: no matches found

在Mac終端機執行命令時出現zsh: no matches found錯誤,導致命令無法成功執行。

今日風情 20240718

2024年7月18日星期四。

2024/7/17

今日風情 20240717

2024年7月17日星期三。

2024/7/16

PostgreSQL 以主表ID同時刪除有外鍵依賴的子表和關聯表資料

例如現有四張表為school(學校)class(課)、student(學生)和enrollment(註冊),彼此關聯如下。

源氏木語電視櫃 Y83N03 開箱

2024年7月在「hoi好生活」網站購入的「源氏木語「柏林橡木滑門2.0M儲物實木電視櫃 Y83N03」開箱。

2024/7/15

英文 Thank you for the A2A意思

在Quora問答社群常會看到"Thank you for the A2A"。A2A是"Ask to Answer"的縮寫。

2024/7/14

2024/7/13

今日風情 20240713

2024年7月13日星期六。

2024/7/12

今日風情 20240712

2024年7月12日星期五。

2024/7/11

今日風情 20240711

2024年7月11日星期四。

2024/7/10

今日風情 20240710

2024年7月10日星期三。

2024/7/8

今日風情 20240708

2024年7月8日星期一。

2024/7/7

今日風情 20240707

2024年7月7日星期日。

2024/7/6

今日風情 20240706

2024年7月6日星期六。

2024/7/5

今日風情 20240705

2024年7月5日星期五。

2024/7/4

2024/7/3

今日風情 20240703

2024年7月3日星期三。

2024/7/2

今日風情 20240702

2024年7月2日星期二。

2024/7/1

2024/6/30

今日風情 20240630

2024年6月30日星期日。

2024/6/29

今日風情 20240629 搬家

2024年6月29日星期六。

2024/6/28

今日風情 20240628

2024年6月28日星期五。

2024/6/26

今日風情 20240626

2024年6月26日星期三。

2024/6/24

Golang 使用errgroup.Group取得goroutine錯誤

Go的goroutine是另一條執行緒所以無法將錯誤以return回傳到main goroutine,除了利用channel取得錯誤,也可利用errgroup.Group來將錯誤回傳到main goroutine。

2024/6/23

今日風情 20240623

2024年6月23日星期日。

2024/6/22

今日風情 20240622

2024年6月22日星期六。

2024/6/21

今日風情 20240621

2024年6月21日星期五。

2024/6/18

Golang 列出AWS Account Regions啟用狀態

Go以AWS提供的SDK aws-sdk-go-v2列出Account的全部Regino啟用狀態。

2024/6/17

Golang 建立AWS Account API client

Go以AWS提供的SDK aws-sdk-go-v2來取得操作Account資源的API client。

AWS CLI 列出帳號所有區域的啟用狀態

使用AWS CLI列出帳號(Account)所有區域(Region)與啟用狀態。

2024/6/16

Indian Scout Bobber

最近看到Indian Scout Bobber這台美式重機,造型線條超美,目前售價約80萬,評估自己可能5年後,約2029年會購入,看到時會不會成真。

今日風情 20240616

2024年6月16日星期日。

2024/6/15

今日風情 20240615

2024年6月15日星期六。

2024/6/10

今日風情 20240610

2024年6月10日星期一,端午節連假第三天。

2024/6/9

今日風情 20240609

2024年6月9日星期日,端午節連假第二天。

2024/6/8

今日風情 20240608

2024年6月8日星期六。

2024/6/6

今日風情 20240606

2024年6月6日星期四。

2024/6/5

Golang 取得月份的開始時間與結束時間

Go取得月份的開始和結束時間的方式如下。

2024/6/2

今日風情 20240602

2024年6月2日星期日。

2024/5/30

2024/5/29

Mac 如何將HEIC圖片轉為JPG

HEIC為iPhone的照片格式。在Mac上使用[預覽程式]開啟HEIC圖片,點選最上方功能列的[檔案] > [輸出...],[格式]欄位選擇[JPG]即可。

2024/5/27

2024 室內整修 採買項目

即將遷入的房子需要整修和採買的項目。

2024/5/26

今日風情 20240526

2024年5月26日星期日。

2024/5/24

2024/5/21

2024/5/18

今日風情 20240518

2024年5月18日星期六。

2024/5/17

今日風情 20240517

2024年5月17日星期五。

2024/5/14

Golang 刪除AWS IAM User的Access Key

Go以Google API Client Libraries來刪除IAM User的Access Key(存取金鑰)。

Golang 建立AWS IAM User的Access Key

Go以Google API Client Libraries來建立IAM User的Access Key(存取金鑰)。

2024 雷速網路科技 資深Golang工程師面試

最近面試「雷速網路科技」的「資深Golang工程師-包網部門(台北)」一職紀錄。

今日風情 20240514

2024年5月14日星期二。

2024/5/12

今日風情 20240512

2024年5月12日星期日。

2024/5/11

今日風情 20240511

2024年5月11日星期六。

2024/5/8

2024/5/7

Redis 交易的樂觀鎖 transaction optimistic locking

Redis的Transaction(交易/事務)可將多個命令視為一個動作執行,並透過check-and-set(CAS)來實現樂觀鎖(optimistic locking)。

2024/5/6

GCP Cloud Storage bucket mount to Linux

將GCP Cloud Storage bucket掛載為Linux檔案系統磁碟的方式如下。

2024/5/5

PRG(Post/Redirect/Get) pattern

Post/Redirect/Get (PRG) pattern是一種用來避免表單重送的網頁設計模式。

今日風情 20240505

2024年5月5日星期日。

2024/5/4

今日風情 20240504

2024年5月4日星期六。

2024/5/3

Golang Redis 令牌桶限流器 token bucket rate limiter

Go利用Redis實作簡單的「令牌桶限流器(Token bucket rate limiter)」。

2024/5/2

Redis Hashs基本命令操作

Redis Hashs是key-value字串類型的儲存結構,基本操作如下。

2024/5/1

DDoS 攻擊防護手段與策略

減輕或避免DDoS(分散式阻斷服務攻擊)的防護方法簡單整理。

2024/4/30

Golang Redis 固定窗口限流器 fixed window rate limiter

Go利用Redis實作簡單的「固定窗口限流器(Fixed window rate limiter)」。

2024/4/29

Redis Lists基本命令操作

Redis Lists是linked list(鏈結串列)結構,Redis Queue是基於Lists來實現。基本操作如下。

Redis Strings基本命令操作

Strings是Redis最簡單的資料型態,基本操作如下。

AWS 限制S3 bucket掛載到特定機器

限制AWS S3 bucket只能掛載到特定機器的方式如下。

2024/4/28

今日風情 20240428

2024年4月28日星期日。

2024/4/27

今日風情 20240427

2024年4月27日星期六。

2024/4/25

AWS EC2 Amazon Linux 2023 mount S3 bucket

將AWS S3 bucket掛載為EC2 (Amazon Linux 2023)檔案系統磁碟的方式如下。

AWS EC2使用User Data啟動自動安裝Nginx

AWS EC2建立時可設定user data來執行一些任務,例如安裝nginx。

Golang 取得map中不包含keys的元素

例如有一slice和map,取得map中key不為slice中的key的元素。

2024/4/24

Golang 取得兩個slice之間不同的元素

Golang 找出兩個slice中的不同元素。

2024/4/22

Git 刪除本地在遠端倉庫已不存在的tag

Git刪除本地倉庫(local respository)連結的遠端倉庫(remote repository)已不存在的tag的方式如下。

2024/4/19

Golang 一天期間時間長度 One day duration

Go time.Time計算時間時,一天的時間長度可以用time.Hour * 24表示,即24小時。

2024/4/18

Visual Studio Code 無法執行debug 錯誤xcrun: error: invalid active developer path

VS Code執行debug時無法運行,出現xcrun: error: invalid active developer path錯誤。

2024/4/17

2024 新青安房貸(青年安心成家貸款)申請

2024年4月向台灣銀行申請「青年安心成家貸款」,簡稱「新青安貸款」所準備的文件。

2024/4/16

React 啟動出現ERR_OSSL_EVP_UNSUPPORTED錯誤

React啟動時出現ERR_OSSL_EVP_UNSUPPORTED錯誤無法啟動。

2024/4/15

Golang 取得字串中指定字串後的子字串

Go取得一個字串中特定字串(含)後的子字串的方式如下。

2024/4/11

2024/4/10

Golang 利用channel限制goroutine數量

使用goroutine併發處理工作時,使用channel限制goroutine數量上限。

2024/4/9

Golang chan struct{}用途

網路上一些Go goroutine數量限制的範例中,常看到宣告Channel的型態為空struct chan struct{}的原因。

2024/4/8

Jenkins Pipeline 設定環境變數

Jenkins Pipeline設定環境變數的方式如下。

2024/4/7

Golang JWT HMAC-SHA256範例

Go使用jwt-go以HMAC-SHA256建立及驗證JWT Token範例。

2024/4/2

2024/3/30

今日風情 20240330

2024年3月30日星期六。

2024/3/27

Git cherry-pick 特定檔案

Git cherry pick特定檔案方式如下。

Jenkins Pipeline checkout/clone GitLab repo

Jenkins Pipeline將GitLab repo程式碼抓取下來的設定方式如下。

Jenkins 2.4 Node Monitors設定位置

Jenkins 2.4的Node Monitors設定位置在Dashboard > Manage Jenkins > Nodes > Configure Node Monitors

2024/3/26

Jenkins Pipeline工作無法執行 Disk space is below threshold

Jenkins裝好後無法執行pipeline工作(即使是簡單的hello world pipeline)。點擊pipeline的[Build Now],只顯示"Build scheduled",但[Build History]沒有出現任何運行紀錄。

2024/3/25

AWS EC2 Linux AMI 安裝Jenkins

AWS EC2 Amazon Linux 2023 AMI安裝Jenkins。

Mac 安裝java openjdk@21 by Homebrew

Mac使用Homebrew安裝Java OpenJDK 21 (Formulea openjdk@21)的方式如下。

2024/3/24

Golang struct slice排序

Go對包含struct元素的slice的排序方式如下。

今日風情 20240324

2024年3月24日星期日。

Mac 安裝Node Version Manager nvm

MacOS安裝Node的版本管理工具nvm

React 啟動錯誤 error:0308010C:digital envelope routines::unsupported

React啟動時發生錯誤error:0308010C:digital envelope routines::unsupported

2024/3/20

Golang WaitGroup用法

Go的sync.WaitGroup可用來等待所有的goroutine都執行結束。

Golang 併發處理訊息練習

Go使用goroutine搭配channel併發處理大量訊息練習。

2024/3/18

Golang 避免index out of range錯誤

Go以index(索引)從slice取值時,避免panic: runtime error: index out of range [x] with length [y]錯誤。

Golang Swag 查詢字串參數範例 @Param example

Go swagger API文件的查詢字串(query string)參數值的範例設定方式如下。

Golang Swag 查詢字串參數列舉 @Param enums

Go swagger API文件的查詢字串(query string)參數的列舉(enums)說明設定方式如下。

2024/3/16

2024/3/12

2024/3/10

Prometheus PromQL資料類型

Prometheus的PromQL語言的敘述結果分為以下資料類型。

GCP Monitoring Metric名稱與PromQL對照

由於PromQL語法只支援:_特殊字元,因此GCP Monitoring Metric(指標)名稱,例如compute.googleapis.com/instance/cpu/utilization中的./必須進行替換以便在PromQL中使用。

Prometheus PromQL是什麼?

PromQL全名為Prometheus Query Language,是由Prometheus發展的查詢語言。

2024/3/8

英文 Artifact 翻譯

Artifacts字典解釋為「手工藝品」、「製品」、「人造物品」、「加工品」等。

2024/3/7

GCP Monitoring Metric type

GCP Monitoring的metric type用來描述一個指標,包括指標名稱、測量的資源、類型、對象、資料型態、取樣間隔等;例如instance的CPU使用率、磁碟讀取bytes大小皆是一種metric type。

GCP Monitoring Metric kind種類

GCP Cloud Monitoring的metric測量值(time series)中都會包含MetricKind(指標類型),用來說明測量值的衡量方式,分為以下三種:

Golang 建立GCP Monitoring Metric Client

Go以Google Cloud Client Libraries for Go來建立存取GCP Cloud Monitoring API的Monitoring Metric Client。

GCP Cloud Monitoring metric model簡介

GCP Cloud Monitoring的metric model(指標模型)用來定義要收集哪些測量資料,由以下三個部分組成:

2024/3/5

AWS CLI 取得CloudWatch metrics統計資料

使用AWS CLI取得CloudWatch metrics統計資料。

AWS CLI修改目前設定的Region

修改AWS CLI目前設定的region的方式如下。

AWS CloudWatch Dashboard新增widget

在AWS CloudWatch的dashboard新增widget。

AWS CloudWatch 建立Dashboard

AWS建立CloudWatch dashboard。

2024/3/3

Golang map與struct轉換

Go map與struct轉換的方法如下。

今日風情 20240303

2024年3月3日星期日。

2024/3/2

今日風情 20240302

2024年3月2日星期六。

2024/2/29

GCP 使用機器映像建立VM instance

在GCP console使用Machine image建立VM instance。

GCP 建立機器映像 Machine image

在GCP console建立一個備份Compute Engine VM(執行個體)的Machine image

2024/2/25

Linux 要在哪安裝應用程式?

在Linux安裝應用程式一般會放在/usr/local目錄。

2024/2/24

今日風情 20240224

2024年2月24日星期六。

2024/2/23

Jenkins Freestyle project整合SonarQube

Jenkins Freestyle project整合SonarQube的過程如下。

2024/2/21

Jenkins 解除安裝Plugin卡在Uninstallation pending狀態

解決Jenkins解除安裝Plugin時狀態一直卡在Uninstallation pending狀態的問題。

Jenkins 重新啟動

重新啟動Jenkins的方式如下

2024/2/20

Linux 修改目錄的ACL使用者權限

Linux修改目錄的特定使用者的ACL(Access Control List)權限的方式如下。

Linux 安裝SonarScanner CLI

在Linux安裝SonarScanner CLI。

Linux Docker安裝SonarQube

在Linux的Docker安裝SonarQube。

2024/2/19

GitLab 查看版本資訊

查看GitLab版本的方式如下。

SonarQube 運作元件組成 working components

SonarQube由以下各元件來實現程式碼品質分析。

Golang 字串格式化boolean值

Go使用fmt.Printf印出格式化字串或fmt.Sprintf產生格式化字串時可使用%t符號代表boolean值。

Mac 安裝Go版本管理工具gvm

Mac安裝Go語言的版本管理工具gvm(Go Version Manager)的方式如下。

2024/2/18

2024/2/17

今日風情 20240217

2024年2月17日星期六。

2024/2/16

今日風情 20240216

2024年2月16日星期五。

Docker 安裝SonarQube Community Edition

Docker安裝SonarQube Community Edition(社群版/免費版)的方式如下。

2024/2/14

今日風情 20240214 三民運動公園

2024年2月14日星期三,春節最後一天放假。

2024/2/13

今日風情 20240213 大有梯田公園

2024年2月13日星期二,春節初四。

2024/2/12

今日風情 20240212 富岡老街

2024年2月12日星期一,春節初三。

2024/2/10

今日風情 20240210

2024年2月10日星期六。

2024/2/9

今日風情 20240209 除夕

2024年2月9日星期五。

2024/2/8

今日風情 20240208

2024年2月8日星期四。

2024/2/7

今日風情 20240207

2024年2月7日星期三。

2024/2/6

Golang template range取得parent pipeline的值

Go template在range中取得parent pipeline的值的方式如下。

今日風情 20240206

2024年2月6日星期二。

2024/2/4

今日風情 20240204

2024年2月4日星期日。

2024/2/3

2024/2/1

PostgreSQL timestamp日期增減

PostgreSQL timestamp欄位日期增減的方式如下。

2024/1/29

今日風情 20240129

2024年1月29日星期一。

2024/1/27

今日風情 20240127

2024年1月27日星期六。

2024/1/23

2024/1/22

2024/1/21

2024 賣房注意事項

最近請房仲賣房子,因為第一次賣房子(還一次兩間),沒經驗導致沒注意到細節,在這記錄一下。

2024/1/19

2024/1/14

2024/1/13

今日風情 20240113

2024年1月13日星期六。

2024/1/11

Nginx 設定WebSocket proxy

Nginx設定反向代理WebSocket server的方式如下。

Mac Homebrew 安裝Nginx

在Mac以Homebrew安裝Nginx。

Golang WebSocket Ping Pong範例

WebSocket Ping Pong中文通常又稱為心跳(heartbeat),是指WebSocket協議的控制碼(opcode),代表Control frame(控制幀/控制框)的Ping frame與Pong frame,用以偵測客戶端和伺服器間的連線是否存在,以實現長連線(Keep-Alive)的機制。參考RFC6455

2024/1/7

今日風情 20240107

2024年1月7日星期日。

2024/1/1

今日風情 20240101

2024年1月1日星期一,元旦。