AdSense

網頁

2019/6/30

如果主管說要封殺你?

一位同事被主管(?)在公司的LINE群組嗆,發生時間為2019年6月30日,一個夏初炎熱的周六午後。下面是原始對話。

2019/6/28

Java Thread Pool 簡介

從Java 1.5開始,增加了java.util.concurrent的Concurrency API來處理併行程式,java.util.concurrent提供多個類別及方法讓我們能夠更方便地建立,管理,執行多執行緒,其中一個重要的特色就是Thread Pool。

2019/6/27

Java 使用ExecutorService來執行多執行緒

原本在Java使用多執行緒來做平行處理時,都是透過建立Thread物件,傳入Runnable,然後呼叫Thread.start()來執行,請參考Java 如何建立Thread

2019/6/26

分散式系統的CAP定理(CAP theorem)

在設計分散式系統(Distributed System)前,必須要了解CAP定理(CAP theorem),又稱布魯爾定理(Brewer's theorem)。

2019/6/25

艾薩克科技徵才傳單

今天2019/06/25在內湖科技園區工作的朋友傳了一張照片給我。

2019/6/24

什麼是Tuple?

Tuple是一種資料結構(data structure),是多個不同型別物件的有序集合,集合中的元素間不必有關連,但把這些元素擺在一起通常具有某種意義。

Spring Cloud Eureka 使用RestTemplate實作服務間溝通(Service to Service Communication)範例一

本篇示範如何在一個Spring Cloud Eureka的一個服務透過RestTemplate呼叫另一外一個服務的REST API。

2019/6/23

英文 好天氣,壞天氣,晴天,雨天

本篇筆記一些好天氣,壞天氣,晴天,雨天的英文。

2019/6/21

Spring Cloud 建立 Spring Cloud Netflix Eureka Server

本篇介紹如何使用Spring Boot建立Spring Cloud NetFlix Eureka Server。

2019年6月健身工廠 桃園 復興廠 Up & Down課程客訴處理

今天上午老婆去健身工廠桃園復興廠回來後,氣撲撲地抱怨她去桃園健身工廠復興店上Up & Down課程的糟糕經驗。

Spring Cloud 建立 Spring Cloud Netflix Eureka Client

本篇介紹如何使用Spring Boot建立Spring Cloud NetFlix Eureka Client

Spring Cloud Netflix Eureka簡介

微服務架構(Microservice Architecture)中很重要的一環就是服務註冊及發現(Service Registration and Discovery)。

2019/6/20

Java 二維陣列列旋轉為行

Java 二維陣列將列row的位置轉為行col的位置方法如下。

2019/6/19

Java 將List分割為多個子List
split List to multiple sub Lists

Java將一個大的List依指定大小分割成多個小的子List的方法如下。

Vim編輯器的操作模式(Modes)

本篇簡單介紹Vim編輯器中常見的操作模式(Modes)。

Linux Bash 如何執行目錄中的Shell Script .sh檔

確定有執行權限的情況下,要執行所在目錄中的.sh檔的方法如下。

MySQL 是否可JOIN不同資料庫的資料表

MySQL可以JOIN兩個不同資料庫的資料表,例如下面JOIN了db_one資料庫與db_two資料庫的資料表。

2019/6/18

Vim 離開時發生 E37: No write since last change (add ! to override) 無法離開

如果你用Vim開啟了檔案,進入插入模式(Insert Mode)修改了內容,然後沒有存檔直接在命令模式(Command Mode)輸入q離開Vim,就會發生E37: No write since last change (add ! to override)的提示。

2019/6/17

Vim 如何在Vim編輯器修改內容

在Vim中編輯文字的方法如下。

Vim 如何離開Vim編輯器

如果你跟我一樣是Linux超級菜鳥,一定對於如何離開Vim編輯器感到不知所措。離開Vim的方式如下。

Linux Ubuntu 使用cat >指令建立文字檔(Text File)

在Linux bash新增文字檔案(txt)的指令如下。

2019/6/16

Angular 使用*ngFor來顯示陣列內容

本篇介紹如何在Angular使用*ngFor在template中顯示陣列屬性的元素內容。

Visual Studio Code copy current line to next line (copy line down) shortcut key

Visual Studio Code (VS Code) copy current line to next line shortcut key.

Angular 使用Router Parameters 路由參數

本篇介紹如何使用Router Parameters來傳入路由參數,並在Component中取得參數。

2019/6/15

MySQL VARCHAR最大長度限制(maximum length)

MySQL VARCHAR的最大長度為65535 Bytes,而能儲存多少個字必須依字元集(Character Set)決定。

MySQL 的預設引擎 (default storage engine)

MySQL 從5.5.5之後的預設引擎是InnoDB,而在之前的版本則是MyISAM

Angular 使用wildcard route (**) 處理無效的URL

在設計Angular元件的Route時,對於錯誤或非預期的URL請求,可以透過配置wildcard route來攔截,並返回預先設計好的結果。

2019/6/14

MySQL TEXT長度限制(maximum length)

MySQL TEXT的最大長度限制是65,535 (216 − 1)個位元組(Bytes)。

2019/6/13

Linux 什麼是Shell

Linux的Shell就是指使用者介面,也就是我們用來操作Linux的工具。

Linux 為什麼執行程式前要加上點斜線./

在Linux bash執行所在目錄中的某個程式前都會加上點斜線符號./才能執行,例如

Linux htop 系統程序監控工具簡介

htop是Unix系統的程序監控工具,在終端機(terminal)介面中以文字的方式顯示。簡單說就像是Windows內建的工作管理員。

2019/6/12

Java 計算List中某個元素出現的次數

若要計算List中某特定元素有幾個,可使用Collections.frequency(Collection<?> c, Object o)

Hibernate JPA Entity屬性應該用原始型別(Primitive type)或包裹類別(Wrapper class)

當定義與資料表映射的Entity class(實體類別)時,若Entity屬性(成員變數)對映的資料表欄位是基本資料型態(例如整數(INTEGER),長整數(BIGINT),浮點數(DOUBLE)等),那應該用原始型別(Primitive type)還是包裹類別(Wrapper class)來定義Entity的屬性呢?

2019/6/9

新北 鶯歌 大漢溪左岸自行車道半日遊 往大溪方向

上禮拜和老婆去鶯歌大漢溪左岸自行車道往樹林騎UBike,這禮拜日(2019/6/9)則是往反方向走,也就是鶯歌往大溪路線。

桃園市 桃園區 好泰味-食益食坊 泰式料理

已結束營業


今天(2019/6/9)晚上和老婆去吃好像是最近新開幕的 好泰味-食益食坊 Eat Well 泰式料理。
位置在桃園市桃園區南華街25號

2019/6/8

Angular 使用Angular Router切換頁面template

本篇示範使用Angular Router在兩個Component的template間互相切換。

Visual Studio Code select current line shortcut key

Visual Studio Code (VS Code) select current line shortcut key.

Visual Studio Code delete line shortcut key

Visual Studio Code (VS Code) delete line shortcut key.

SVN 為什麼無法ignore檔案

一個專案中有些檔案是不需要被SVN版控的,通常是一些IDE與如Eclipse相關的檔案,像是.classpath.project.settings等。或是編譯或建構生成的檔案,例如Maven的target目錄。

TortoiseSVN 從SVN repository check out專案並匯入Eclipse

本篇介紹如何用TortoiseSVN將SVN repository上的專案checkout下來至本機的指定資料夾中。

Eclipse 什麼是工作空間(workspace)

Eclipse的workspace的是什麼?

2019/6/7

VisualSVN 建立多專案(multi projects)的SVN repository

建立多個專案的SVN repository (multi projects SVN repository),以VisualSVN Server為例做法如下。

KIRKLAND MICROWAVE POPCORN - MOVIE THEATER BUTTER

今天(2019/06/07)晚上和老婆去桃園統領威秀去看哥吉拉II,在樓下全家超商買了一包好市多牌的KIRKLAND奶油爆米花上去邊看邊吃。

台北市 中山區 欣葉日本料理中山店

今天(2019/6/6)老婆生日,老婆說想吃海鮮,所以決定帶她去吃欣葉日本料理。(原本想訂的是晶華酒店的餐廳,但訂位電話怎麼打都沒人接。)

桃園市 桃園區 火車站周邊 ATT筷食尚 洋朵義式廚房

今天(2019/6/7)晚上和老婆去桃園統領威秀看「哥吉拉II怪獸之王」,看電影之前先在旁邊ATT筷食尚二樓的洋朵義式廚房吃晚餐。

2019/6/6

Eclipse Maven pom.xml Maven Configuration Problem: Unknown

今天用Eclipse (2019-03)的STS plugin建立Spring Boot Web Starter專案(2.1.5)時,專案的pom.xml第一行出現未知的紅色叉叉錯誤如下。

SVN 將未被版控的Eclipse專案加入SVN repository

本篇介紹如何將未被SVN版控的Eclipse專案加到SVN repository

TortoiseSVN 無法登入SVN repository

如果發現原本之前可以正常連線到SVN repository的TortoiseSVN(也就是可以正常checkout,show log,commit等),突然變成無法連線(也就是無法checkout,show log,commit),然後即使輸入正確的帳號密碼也登不進去,可以試著將TortoiseSVN儲存的驗證資料刪除,打開TortoiseSVN的settings,在Saved Data項目中,點選Authentication data右側的Clear all刪除全部原本記住的連線SVN repository的帳號密碼。刪除後需要重新連接SVN repository並重新輸入帳號密碼即可。

2019/6/5

Java 比較物件是否相等的Identity與Equality

當比較Java中的物件是否相同時,就要了解物件的Identity與Equality是什麼,兩者有何區別。

SmartSVN How to open Directories window

The way to open the [Directories] window of SmartSVN (v11.0.2) is select Window -> Directories on the Menus bar, or you can press shortcut key Ctrl + Shift + 1

SmartSVN 更改編輯器的字型大小(font size)

SmartSVN的程式編輯器預設字型大小是9,中文看起來太小了,
在功能選單的Edit -> Preferences...,然後選擇User Inteface -> Built-in Text Editor中可以調整字型和大小。

2019/6/4

SVN 如何登出由網頁登入的VisualSVN repository

如果你已經從瀏覽器登入了VisualSVN的repository,則登出(log out)的方式如下。

MySQL Workbench 無法直接編輯資料表的資料

如果MySQL Workbench中無法直接編輯(新增、刪除、修改)資料表中的資料,那或許是你的資料表沒有設定主鍵(Primary Key)欄位或Unique Non-null欄位。

MySQL 依日期時間 (DATETIME) 條件查詢

MySQL 查詢時依DATETIME欄位為條件查詢的方法如下。

2019/6/3

Window Batch 使用 rem 在bat檔中添加註解

在Windows的批次檔(bat file)中,如果要添加註解,可使用rem

Java 計算某個數值的位數

Java 取得某個數有幾位數(digits number)的方法如下。

2019/6/2

「發布」還是「發佈」

軟體開發常會說,要發布(publish)哪個版本(revision),中文的publish有「發布」和「發佈」兩個詞,微軟新注音的提示也同時有兩種,網路上查兩個詞意思一樣,「發布」和「發佈」是通用的。

新北 鶯歌 陶瓷老街週邊 卓記牛肉麵

今天(2019/6/2)和老婆去鶯歌的大漢溪左岸自行車道騎UBike,結束時就在這家位在陶瓷博物館附近,文化路旁的卓記牛肉麵吃晚餐。

新北 鶯歌 大漢溪左岸自行車道半日遊 往樹林方向

今天(2019/6/2)下午和老婆一起去鶯歌的大漢溪左岸自行車道騎UBike。

2019/6/1

Java 副作用Side Effects

程式的副作用Side Effects是指當一個表示式(expression),函式(function)或方法(method)會改變外面物件的狀態或內容時,這個函式就被稱為有副作用。

Angular 事件綁定(Event binding)簡單範例

本篇示範Angular的事件綁定(Event binding)的簡單範例。

Java String Pool 字串池,使用 == 比較兩個String是否相等

我們都知道,Java程式中比較兩個String變數是否相同時,應該用equals(String s),但面試時常會看到使用==比較兩個String變數,這主要是考你是否知道String Pool(字串池)的概念。

Java 字串轉整數的寫法 convert String to int

Java 要將字串String表示的數字轉換為整數int的方法如下。

AdSense