Time of Update: 2017-01-13
#java -version <-查看當前java的版本號碼卸載完以後到www.java.com下載linux版本的 jdk。我下載的是jdk-6u70-linux-i586.bin. 代碼如下複製代碼 cp -r jdk-6u70-linux-i586.bin /usr/local/javacd /usr/local/java.jdk-6u70-linux-i586.bin
Time of Update: 2017-01-13
Java開發中調用webservice,方法調用報了 Java.Lang.NoSucheMethod..........,印象中記得是jar包衝突,maven項目,一看,這一堆jar包...用eclipse的pom可視化介面,Dependency Hierarchy 看到了不少包衝突,先從webservice
Time of Update: 2017-01-13
設定檔如下<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
Time of Update: 2017-01-13
原先的設計是通過已有的庫,將資料通過rmi寫入到遠程伺服器;現在有需求需要將支援多個,而且是自訂的遠程伺服器ip。因為整個介面原先都是通過spring設定檔,包括rmi的地址。同時,為了維護方便,不能直接將打好的jar包拿過來改,於是就採用了複製原有的bean
Time of Update: 2017-01-13
Java中取資源時,經常用到Class.getResource和ClassLoader.getResource,這裡來看看他們在取資源檔時候的路徑問題。Class.getResource(String path)path不以’/‘開頭時,預設是從此類所在的包下取資源;path 以’/‘開頭時,則是從ClassPath根下擷取;什麼意思呢?看下面這段代碼的輸出結果就明白了:package testpackage;public class
Time of Update: 2017-01-13
在淘寶內網裡看到同事發了貼說了一個CPU被100%的線上故障,並且這個事發生了很多次,原因是在Java語言在並發情況下使用HashMap造成Race Condition,從而導致死迴圈。這個事情我4、5年前也經曆過,本來覺得沒什麼好寫的,因為Java的HashMap是非安全執行緒的,所以在並發下必然出現問題。但是,我發現近幾年,很多人都經曆過這個事(在網上查“HashMap Infinite
Time of Update: 2017-01-13
想想也不可能,網路中不會時不時出現cookie theft攻擊吧。看了官方文檔,也沒給出解釋,後來在oschina看到一篇分析的文章,才明白其中的緣由,文章《是誰動了我的cookie?Spring Security自動登入功能開發經曆總結》。從這篇文章的分析結合spring
Time of Update: 2017-01-13
一、前言 在表單頁面中使用驗證碼的好處在於有效防止使用者惡意提交表單,或者使用外掛非法攻擊系統。二、準備條件 1、一個普通的web項目 webProject; 2、一個web伺服器 Tomcat。三、製作驗證碼實戰實現思路: <1>自訂一個servlet VerifyCodeServlet
Time of Update: 2017-01-13
因為中文亂碼的問題忙活了一個下午,主要的問題在於通過get上傳中文時出現的,感覺tomcat實在是太坑了。。。先總結如下(UTF-8,gb2312的解決方案類似)首先,更改tomcat/conf/server.xml檔案,關鍵是增加URIEncoding = “utf-8″ 代碼如下複製代碼 <Connector connectionTimeout="20000" port="8080"
Time of Update: 2017-01-13
編寫一個截取字串的函數,輸入為一個字串和位元組數,輸出為按位元組截取的字串。但是要保證漢字不被截半個,如"我ABC"4,應該截為"我AB",輸入"我ABC漢DEF",6,應該輸出為"我ABC"而不是"我ABC+漢的半個"。 public static String substring(String str, int toCount,String more) { int reInt = 0;
Time of Update: 2017-01-13
下面1-4的內容是網上收集的相關知識,總結來說,就是如下幾個知識點:1、最常用讀取properties檔案的方法InputStream in = getClass().getResourceAsStream("資源Name");這種方式要求properties檔案和當前類在同一檔案夾下面。如果在不同的包中,必須使用: InputStream ins =this.getClass().
Time of Update: 2017-01-13
下面我們就字串串連方面分析。1.String開啟String的源碼,如圖所示
Time of Update: 2017-01-13
1.fill方法fill方法主要用來填充數組,這裡我們舉最簡單的int類型吧(其它類型的一樣)看Arrays的fill源碼範例程式碼:Java代碼publicstaticvoidmain(String[] args)
Time of Update: 2017-01-13
1. 獲得Calendar執行個體:Calendar c = Calendar.getInstance();2. 定義日期/時間的格式:SimpleDateFormat sdf =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");3. 把日期/時間轉換成固定格式,使用SimpleDateFormat的format()方法:String datetime = sdf.format(c.getTime());4.
Time of Update: 2017-01-13
AOP的攔截功能是由java中的動態代理來實現的。說白了,就是在目標類的基礎上增加切面邏輯,產生增強目標類(該切面邏輯或者在目標類函數執行之前,或者目標類函數執行之後,或者在目標類函數拋出異常時候執行。不同的切入時機對應不同的Interceptor的種類,如BeforeAdviseInterceptor,AfterAdviseInterceptor以及ThrowsAdviseInterceptor等)。那麼動態代理是如何?將切面邏輯(advise)織入到目標類方法中去的呢?下面我們就來詳細介紹並
Time of Update: 2017-01-13
代碼很簡單,主要學習思路。tomcat中處理訊息提示的公用類 StringManager.java:其實思路就是每個包名對應一個Stringmanager對象,而非所有公用一個S聽ringmanager對象!每個包中都有一個LocalStrings.properties的設定檔 ,定義公用提示資訊每個使用的類中都添加StringManager對象每個包下都有常量檔案Constants.java ,其中定義常量Package為該檔案DefaultServlet所在 包名使用:public
Time of Update: 2017-01-13
看了網上很多教程,都提到有配置spring shiro的密碼加密方式,甚至給出了自訂的Class來實現。卻很少有通過配置來解決的。密碼的鹽值加密方式應該是非常通用的,也可以算是基礎吧。按理說spring shiro不可能沒有實現,讓使用者自己去實現吧。通過讀源碼看各種關係,摸索出shiro的MD5鹽值加密方式,分享一下 (shiro的maven倉庫中的source從來都是個空檔案,github上的源碼又沒有stable版本的代碼,要調試很惱火),當然閱讀源碼可以直接到github上,https:
Time of Update: 2017-01-13
一、靜態變數被static關鍵字修飾的成員變數叫做靜態變數,前面我們講到成員變數與局部變數的區別,那麼靜態變數與成員變數又有哪些不同呢?1、調用方式靜態變數:類變數,可以直接通過類名調用,也可以通過對象名調用,這個變數屬於類成員變數:執行個體變數,只能通過對象名調用,這個變數屬於對象2、儲存位置靜態變數:儲存在方法區中的靜態區成員變數:儲存在堆記憶體3、生命週期靜態變數:隨著類的載入而存在,隨著類的消失而消失成員變數:隨著對象的建立而存在,隨著對象的消失而消失4、與對象的相關性靜態變數:所有對象
Time of Update: 2017-01-13
我們在註冊網站的時候,往往需要填寫個人資訊,如姓名,年齡,出生日期等,在頁面上的出生日期的值傳遞到背景時候是一個字串,而我們存入資料庫的時候確需要一個日期類型,反過來,在頁面上顯示的時候,需要從資料庫擷取出生日期,此時該類型為日期類型,然後需要將該日期類型轉為字串顯示在頁面上,Java的API中為我們提供了日期與字串相互轉運的類DateForamt。DateForamt是一個抽象類別,所以平時使用的是它的子類SimpleDateFormat。SimpleDateFormat有4個建構函式,最經常
Time of Update: 2017-01-13
成員變數與局部變數的區別1、在類中的位置不同成員變數:在類中方法外面局部變數:在方法或者代碼塊中,或者方法的聲明上(即在參數列表中)2、在記憶體中的位置不同,可以看看 Java程式記憶體的簡單分析 見接下來我們再通過一段程式來直觀感受下程式運行時JVM的記憶體情況,package demo;public class Student { private String name; private int