原创 MySQL查詢時給字段賦默認值

問題:查詢account表時,並不想讓用戶查出密碼來,所以要給密碼賦一個默認值。 select id,null as password from account order by id; 結果: 可以看出密碼統一賦成了null。

原创 Maven利用profile打不同環境的包

解決方法1: profile配置: <profiles> <profile> <id>dev</id> <activation>

原创 Nginx location塊匹配順序

首先在server塊中搜索是否有標準uri和請求字符串匹配,如果有多個可以匹配,就記錄匹配度最高的一個。 然後,服務器再用location塊中的正則uri和請求字符串匹配,當第一個正則uri匹配成功,結束搜索,並使用這個loca

原创 基於Slf4j MDC和Spring MVC的日誌鏈路跟蹤

背景 1.在日常查日誌時,各種日誌交錯在一起,無法快速定位問題,如果有每個請求都擁有一個唯一標識,那grep起來就方便多了; 2.分佈式系統中需要定位整個鏈路,是上游系統出問題了,或者下游系統有沒有收到請求; 方案 Slf

原创 MySQL查看並修改自增長ID

如何查看: 方法一:查找MySQL自帶的數據庫information_schema的TABLES表的AUTO_INCREMENT字段 SELECT AUTO_INCREMENT FROM information_schema.

原创 Maven打包跳過單元測試

Maven在打包時可以使用兩種方式來跳過單元測試: -DskipTests -Dmaven.test.skip=true 兩者的區別如下: skipTests:不執行測試用例,但編譯測試用例類生成相應的class文件至targ

原创 使用 Redis Bitmap 實現用戶上線次數統計

Bitmap 對於一些特定類型的計算非常有效。 假設現在我們希望記錄自己網站上的用戶的上線頻率,比如說,計算用戶 A 上線了多少天,用戶 B 上線了多少天,諸如此類,以此作爲數據,從而決定讓哪些用戶參加 beta 測試等活動 ——

原创 IntelliJ IDEA快捷鍵大全

IntelliJ IDEA 自動完成代碼 Ctrl + Shift + Enter 切換工程,向左:Ctrl + Alt + [ 向右:Ctrl + Alt + ] 搜索類 Ctrl + N 最近文件 Ctrl + E 最近編輯

原创 Maven 項目打不同名稱的war包

問題描述:I have two profiles in my pom.xml for our application… dev (for use on a developer’s) prod (production). Whe

原创 Linux重啓Tomcat常用腳本

#!/bin/bash # kill process ps -ef|grep 'artworks'|grep -v 'grep'|awk '{print $2}'|xargs kill -s 9 # clean cache r

原创 MyBatis類型別名類TypeAliasRegistry

MyBatis類型別名定義在org.apache.ibatis.type.TypeAliasRegistry類中,具體對應關係見如下代碼: public TypeAliasRegistry() { registerAl

原创 安裝和啓動Redis

http://blog.csdn.net/ludonqin/article/details/47211109 這篇文章已經把Redis的安裝和啓動介紹得很清楚了,下面介紹安裝中指定目錄: cd redis-stable make

原创 Logback動態修改日誌級別

問題提出: 一般在生產環境上,日誌的級別是INFO以上,但有時候程序出現問題(如SQL報錯),少量日誌不能儘快定位問題,這時候可以動態修改日誌級別到DEBUG,打印更多日誌後可以快速定位到問題。 解決方法: 定義動態修改日誌級別

原创 解決MySQL存入中文變問號

出現這種問題的原因有可能是: 數據庫字符集不是utf-8,對應character_set_database常量; 服務器字符集不是utf-8,對應character_set_server常量; 程序與數據庫的連接不是用utf-8

原创 MyBatis中@MapKey的妙用

背景 在實際開發中,有一些場景需要我們返回主鍵或者唯一鍵爲Key、Entity爲Value的Map集合,如Map<Long, User>,之後我們就可以直接通過map.get(key)的方式來獲取Entity。 實現 My