原创 mybatis調用mysql存儲過程demo

1、先給出mysql存儲過程的實現,是一個支持分頁功能和查詢參數的例子(ps:單純的查詢功能使用存儲過程實現還是不多見,而且親測效率不會提升,性能提升還是得靠索引,但這個只是一個demo,將就一下)。 CREATE DEFINER

原创 java ssdb簡單的連接池

一個高性能的支持豐富數據結構的 NoSQL 數據庫, 用於替代 Redis.,目前有一些互聯網公司都在使用ssdb,比如360,百度等。官方提供了多種語言的client實現,但是沒有給出一個高效的連接池方案,因此本文結合項目的使用

原创 Spring FactoryBean應用

Spring 中有兩種類型的Bean,一種是普通Bean,另一種是工廠Bean 即 FactoryBean。FactoryBean跟普通Bean不同,其返回的對象不是指定類的一個實例,而是該FactoryBean的getObject方

原创 Java 對象佔用內存大小

Java 對象 HotSpot虛擬機中,對象在內存中存儲的佈局可以分爲三塊區域:對象頭(Header)、實例數據(Instance Data)和對齊填充(Padding)。 Java 對象頭包括Mark Word,Class Meta

原创 看圖學習https原理

前言 之前說到HTTPS,在我的概念中就是更安全,需要服務器配置證書,但是到底什麼是HTTPS,爲什麼會更安全,整套流程又是如何實現的,在腦子裏沒有具體的概念。所以,我花了幾天的時間,通過參考一些文章,學習了HTTPS整套機制的實現,想要

原创 Transaction rolled back because it has been marked as rollback-only

我們知道spring事務回滾的機制是需要捕獲運行時異常,當然也可以使用rollbackfor指定特殊的unchecked異常。如下代碼所示: @Transactional @Override public int getTran() {

原创 jsp application獲取全局變量

jsp中如何獲取web.xml中定義的全局變量的值, webx.xml定義全局變量 <context-param> <param-name>staticrespath</param-name> <p

原创 spring+hibernate應用層讀寫分離

spring+hibernate應用層讀寫分離方案,是基於AbstractRoutingDataSource和AOP實現的。其中AbstractRoutingDataSource用於管理數據源並且根據key返回相應的數據源,AOP決定了什

原创 支付寶異步回調簽名失敗

支付不異步回調簽名失敗,幾個可能出問題的點: 1、公鑰的設置,不是應用的公鑰,而應該是支付寶的公鑰。 2、如果配置有xss過濾器,一定要注意不能把回調的參數做過濾。(這個問題導致我在開發的時候疑惑了1天) 3、參考支付寶提供的demo編

原创 java jvm shutdownhook

shutdownhook是jvm提供給應用程序在jvm退出時,處理應用程序未處理完的任務的一種安全退出機制,通過這種機制,可以在jvm退出時關閉一些資源,中斷一些必須優雅關閉的線程等。 使用方式也很簡單,可以在主線程啓動的時候使用下面的

原创 java directmemory監控

DirectBuffer是NIO提供的可以直接使用系統物理內存的結構,目的是提高內存訪問速度,但是銷燬和創建的成本則比JVM堆內存的大很多,使用的時候需要注意。 當使用nio的DirectBuffer功能時,我們可以通過-XX:MaxD

原创 springmvc controller 統一異常處理

針對springmvc controller層面有多種統一異常處理方法,包括默認的,自定義的,以及註解配置的。這裏我推薦一種自定義異常處理方式,它能夠處理ajax調用的異常和普通視圖調用的異常(比如jsp)。具體的代碼如下: public

原创 docker dockerfile構建tomcat應用

1、Dockerfile文件 [root@node136 dktomcat]# cat Dockerfile FROM ubuntu:12.04 MAINTAINER <@heetian.com> ENV cSoftPath=/u

原创 不同語言HMAC SHA256創建base64哈希加密實現

Javascript HMAC SHA256 <script src="http://crypto-js.googlecode.com/svn/tags/3.0.2/build/rollups/hmac-sha256.js"></scri

原创 Springmvc 在什麼時候注入了SimpleUrlHandlerMapping

調試Springmvc時發現,在不啓用mvc:annotation-driver配置時,除了注入默認的一些Adapter和Handler之外,還有一個SimpleUrlHandlerMapping被注入了。默認的配置參考如下文件內容