原创 java中儘量使用integer等封裝類型,除非是計算少用基本類型

java中儘量使用integer等封裝類型,除非是計算少用基本類型。 基本類型的轉換,如果基本類型的值爲0時,不報錯,但是運行完成後會報運行時異常,常常會不注意 ,之前我遇到一次,就是死活找不到出錯的地方,最終打斷點才找出錯誤點。 不像封

原创 dbcp數據源加密

爲了數據庫的安全,密碼是需要加密放在配置文件中的,這樣別人就不能輕易的從配置文件中獲取到數據庫的明文密碼,然後登陸我們的數據庫,造成數據泄露。 通過分析dbcp的數據源源碼,我們發現,主要的密碼和用戶名是在getConnection的時候

原创 模塊化管理(一)

這一章我們先講一個簡單的模塊依賴關係。即A依賴B,B依賴C 所有用Maven管理的真實的項目都應該是分模塊的,每個模塊都對應着一個pom.xml。它們之間通過繼承和聚合(也稱作多模塊,multi-module)相互關聯。那麼,爲什麼要

原创 Spring動態加載、編輯數據源

        最近有一個項目需求,要求實現SAAS服務,最終結果大致如上圖,當然這只是其中的一部分。這個項目有一個很明確的需求:所有站點用的是一套代碼,有一個主站,多個子站,所有子站的數據結構是一致的,A登錄時訪問子站一,B登錄時

原创 maven模塊化管理

現在java 項目一般使用maven、gradle等工具來管理jar包、打包、發佈。如果一個項目有很多模塊,那般是分成多個module,主目錄有個parent,負責包含全部的module,然後目錄中多個module文件夾,分別依賴par

原创 工作流學習(三)

數據庫表命名規則: Activiti工作流引擎的數據庫表中的表名稱都是以 ACT_.第二部分兩個字母表示表的類型。使用模糊匹配的方式說明表的類型匹配activiti的服務API. ·         ACT_RE_*: RE代表倉儲(Re

原创 tomcat-jdbc-pool 實現簡單分析

什麼是連接池? 池,不由自主的會想到水池。 小時候,我們都要去遠處的水井挑水,倒進家中的水池裏面。這樣,每次要用水時,直接從水池中「取」就行了。不用大老遠跑去水井打水。 數據庫連接池就如此,我們預先準備好一些連接,放到池中。當需要

原创 工作流學習(一)

Activiti工作流引擎使用 1.簡單介工作流引擎與Activiti 對於工作流引擎的解釋請參考百度百科:工作流引擎 1.2 Activiti與JBPM5? 對於Activiti、jBPM4、jBPM5我們應該如何選擇

原创 工作流學習(二)

做公司的oa系統,所以接觸到了工作利用,我們這裏的工作流用的是activiti。 我這裏主要總結一下自己學習的過程,以及遇到的問題和解決方案。 (一)學習過程 1)安裝插件 我用的是myeclipse,有activiti插件,我們可以直接

原创 打包的技巧

打包“這個詞聽起來比較土,比較正式的說法應該是”構建項目軟件包“,具體說就是將項目中的各種文件,比如源代碼、編譯生成的字節碼、配置文件、文檔,按照規範的格式生成歸檔,最常見的當然就是JAR包和WAR包了,複雜點的例子是Maven官方下載

原创 闖紅燈理論

闖紅燈理論 現在,你是一個風流瀟灑的高富帥,開着一輛,呃不對,是騎着一輛大永久(我們那個年代的年青人最豪華的裝備,跟現在大家開大奔的感覺從心理上講一樣的)在路上兜風,陽光灑在你身上,妹子們投來火辣辣的目光,一切都是這麼愉快,你騎到一個

原创 同步或者重構Activiti Identity用戶數據的多種方案

相信每個涉及到用戶的系統都有一套用戶權限管理平臺或者模塊,用來維護用戶以及在系統內的功能、數據權限,我們使用的Activiti工作流引擎配套設計了包括User、Group的Identify模塊,怎麼和業務數據同步呢,這個問題是每個新人必問

原创 模塊化管理(二)

這一章我們介紹的是,Overlay的使用,通過將多個war包最終打成一個war包。 一、工程介紹  該項目由5個maven項目組成    task-aggregator是父工程,同時承擔聚合模塊和父模塊的作用,沒有實際代碼和資源文件

原创 工作流的學習(四)

這章我主要記錄一下自己遇到的問題和總結。 (1)activiti的配置中,對於history的配置是可以優化的。 歷史信息級別可以配置成以下幾種: none: 忽略所有歷史存檔。這是流程執行時性能最好的狀態,但沒有任何歷史信息可用。

原创 數據庫代碼編寫規範

1.除非影響業務,讀取表(select)時,請使用WITH(NOLOCK),以提高併發性; 2.除了exists語句外,不要使用SELECT *,必須指明列名; 3.多表鏈接時,取有意義的表別名,並在每列前加表別名(如:a.id,b.na