網頁

2020/5/31

Docker run centos container

在docker安裝並執行centos container並登入其bash介面的方式如下。

2020/5/30

Docker Machine login VM machine

登入Docker Machine的VM的方式如下。

Spring Security 多角色權限範例

本篇使用Spring Security Basic Authentication驗證,使用者有多種角色(role)權限,搭配JSR-250 @RoleAllowed做REST API的存取限制。

SQL where1=2

SQL WHERE 1=2的作用如下。

2020/5/29

Spring Boot 自訂Java Bean驗證失敗回應訊息 custom bean validation fail response

Spring Boot使用bean validation驗證失敗時,預設會返回HTTP Status: 400 Bad Request及訊息。

Java 排序比較兩個可能有null的欄位 sorted by two fields with null

Java排序List時,若排序元素的屬性可能為null,則可以在Comparator的實作中處理null。

2020/5/28

Log4j2 API參數驗證錯誤輸出的日誌級別 log level for validating input args fail

在Controller接收外部傳入的參數時通常要驗證參數是否合法(例如金額不得小於0、結束日不能超過起始日、字串長度限制等),若驗證失敗時應該用什麼的log level輸出日誌?

2020/5/26

Vuex是什麼? What is Vuex?

簡單說就是用來維護Vue組件(Component)的狀態(state)。

由於Vue是透過多個組件(也就是構成頁面的"樣板與程式碼")層層套套所搭建起來的前端應用程式。而當多個元件間的狀態是共享時,靠自己管理組件間的狀態會變得複雜且困難。而有了Vuex狀態管理框架就會讓以上任務變得簡單。


2020/5/25

Java Objects.isNull() 幹嘛用的

昨天前同事問我Java 8多了Objects.isNull()方法可判斷一個物件是否為null,但這和obj == null判斷有什麼差別?

Vue CLI 專案目錄及檔案說明 project directory and file

Vue CLI建立專案中的目錄及檔案說明筆記。

Java Object.hashCode()

本篇筆記Object.hashCode()的理解。

2020/5/22

Java 白板題 把整數陣列中的0往後排,其餘維持原順序

去美商訊能集思Synergies駐點面試的白板題。給一整數陣列,並把陣列中的0移到最後,其餘的數字保持原來的順序。

Java 陣列與ArrayList差別
Array and ArrayList difference

今天被問到Java的Array(陣列)與ArrayList的差別。

當下我只回說ArrayList的元素只能是物件,而ArrayList實際上是對Array進行包裝提供一些好用的操作方法之類。總之回答得亂七八糟,因此這邊做個整理。

2020/5/21

Java 取得系統當日午夜毫秒時間 get system current day midnight millisecond

Java LocalDateTiem取得系統所在時區當天及昨天午夜(00:00)的毫秒。

Java 取得系統目前的Unix時間 get system current unix epoch millisecond

在Java程式中可利用下面方法取得系統目前的Unix時間的毫秒數。

2020/5/20

SourceTree 檢視特定作者的提交紀錄 view log of specific author

SourceTree查看特定人員的提交歷史紀錄(commit log history)的方式如下。

SourceTree 檢視特定檔案的提交紀錄 view log of specific file

在SourceTree查看某個檔案的提交紀錄(commit log history)的方法如下。

2020/5/18

Spring Professional Michelle Chu

剛有個Spring Professional的Hunter Michelle Chu(典型的*********)打來,蠻沒禮貌,讓我特地po這篇記錄一下,水準夠差,霹哩趴辣講一堆開始身家調查,才剛到公司坐下就被她心情弄的滿肚子大便。這位小姐在找Java工程師。

2020/5/17

自產自銷辣椒醬 20200518

今天早上在網路上訂了20瓶50ml的小玻璃罐。一個11元,加運費送到我媽的辦公室340元。

Mac stop running Spring Boot jar

在Mac停止運行中的Spring Boot jar的方法如下。

自產自銷辣椒醬 20200517

岳父的手工自製辣椒醬非常香超級好吃,所以看能不能製作成商品販賣。

2020/5/16

EMV® 3-D Secure 3DS Consumer Device

EMV® 3-D Secure 3DS Consumer Device 簡介。

EMV® 3-D Secure 3DS Cardholder

EMV® 3-D Secure 3DS Cardholder 簡介。

EMV® 3-D Secure Acquirer

EMV® 3-D Secure 3DS Acquirer 簡介。

EMV® 3-D Secure 3DS Requestor

EMV® 3-D Secure 3DS Requestor 簡介。

EMV® 3-D Secure Access Control Server

EMV® 3-D Secure Access Control Server 簡介。

EMV® 3-D Secure 2.0 Messages

EMV® 3-D Secure 2.0 安全驗證規範的訊息包含以下:

2020/5/15

EMV® 3-D Secure 3DS Client

EMV® 3-D Secure 3DS Client 簡介。

Spring Boot Java Bean Validation class-level constraint date range 日期區間驗證

在Spring Boot使用Java Bean validator 類別驗證器驗證傳入物件的日期範圍。

Oracle GROUP BY then SUM

今天工作碰到下面問題。

Oracle 11g 新增資料ID自動增量 auto increment sequence id when insert

在Oracle 11g新增資料時利用SEQUENCE自動產生遞增ID的方法如下。

2020/5/14

EMV® 3-D Secure 3DS Server

EMV® 3-D Secure 3DS Server 簡介。

EMV® 3-D Secure AReq(Authentication Request Message)

EMV® 3-D Secure AReq(Authentication Request Message)簡介。

2020/5/13

EMV® 3-D Secure 3DS Requestor Environment

3DS Requestor Environment由以下三個組件構成,負責發起3DS請求的環境。

EMV® 3-D Secure Three domains

EMV® 3-D Secure的"3-D"是3個Domains的意思(domain翻為域,簡單說就是分成三個區塊)。三個domains構成了3DS安全驗證的交易流程。

2020/5/11

初學JavaScript寫的表單輸入驗證程式

剛學JavaScript的時候寫的code,令人懷念的深層if else。

2020/5/10

Windows 7 Docker 安裝Oracle 12c docker container

本篇記錄在Windows 7上建立Oracle 12的docker container環境並使用SQL Developer連線。

2020/5/9

Java 轉原始型別陣列為包裝型別List convert primitive type array to boxed type List

Java 轉換原始型別陣列(primitive array)為List的方法如下。

Effective Java 3e - Item 22: Use interfaces only to define types 筆記

Effective Java 3e - Item 22: Use interfaces only to define types 介面應該只用來定義型態 筆記。

Effective Java 3e - Item 25: Limit source files to a single top-level class 筆記

Effective Java 3e - Item 25: Limit source files to a single top-level class 限制一個檔案只有一個top-level class 筆記。

2020/5/8

Java 計算百分比 calculate percentage

Java 計算兩數相除的百分比。

2020/5/6

Java Regex 檢查字串是否只含hex字元 check hex char

Java 使用regex(正則表示式, Regular expression)檢查字串是否只含hex字元,也就是只含0123456789ABCDEF

EMV® 3-D Secure ARes(Authentication Response Message)

EMV® 3-D Secure ARes(Authentication Response Message)簡介。

2020/5/5

Spring Boot 自訂Java Bean Validation驗證參數是否為Hex文字格式

Java Bean Validation驗證Spring Boot Controller請求物件屬性是否為Hex表示格式(僅接受數字0-9,英文字母A-F)。

2020/5/3

Java JDBC PreparedStatement 更新BLOB update BLOB

Java使用JDBCPreparedStatement更新BLOB型態欄位的範例如下。

Java 加總整數陣列 sum List<Integer> and int array

Java加總List<Integer>int[]array陣列中全部元素值的方法如下。

2020/5/2

Docker Machine Unable to query docker version: Get https://192.168.99.101:2376/v1.15/version: x509: certificate is valid for 192.168.99.100, not 192.168.99.101

今天重新啟動VM的Docker machine後查詢machine列表時,其中一個machine的ERROR欄位出現無法獲得版本的訊息如下。

Docker 什麼是Docker Machine

Docker Machine是安裝在主機系統的虛擬機Docker hosts管理工具,用來管理VM(e.g.VirtualBox)中給Docker Engine運行的Docker host。

2020/5/1

Docker Machine 移除machine remove docker machine

使用Docker Machine移除machine的方法如下。

Docker Machine 停止machine stop docker machine

使用Docker Machine停止運行machine的方法如下。

Docker Machine 啟動machine start docker machine

使用Docker Machine啟動machine的方法如下。

Docker Machine 查詢machine list docker machines

使用Docker Machine查詢可用的machine的方法如下。

Docker Machine 建立machine create docker machine

使用Docker Machine建立新的machine的方法如下。

Docker 使用PuTTY連線到Docker Toolbox的VirtualBox

本範例記錄如何以在本機以PuTTY連線到Docker Toolbox的VirtualBox的docker環境。

Windows Docker Toolbox連線到docker nginx

在舊的Windows 7或Windows 10家用版因為沒有Hiper-V,所以必須安裝Docker Toolbox來使用docker。