2014年2月10日
class loader 加載 class file 到內存
jvm內存包括: method area(存放class name, class path , 類修飾符等信息), java stack(每一個線程單獨有個stack),java heap(存放對象的數據,數組數據等,被所有線程共享的), pc寄存器(每一個線程單獨有個pc寄存器,用于存放下一步指令),本地方法棧。
java 堆 可 分為三部分:Perm,Tenured,Yong區??梢酝ㄟ^參數來配置空間大?。?br />
-Xms :指定了JVM初始啟動以后初始化內存
-Xmx:指定JVM堆得最大內存,在JVM啟動以后,會分配-Xmx參數指定大小的內存給JVM,但是不一定全部使用,JVM會根據-Xms參數來調節真正用于JVM的內存
Perm Generation
-XX:PermSize=16M -XX:MaxPermSize=64M
2009年9月3日
jQuery.post( url, [data], [callback], [type] ) :使用POST方式來進行異步請求
參數:
url (String) : 發送請求的URL地址.
data (Map) : (可選) 要發送給服務器的數據,以 Key/value 的鍵值對形式表示。
callback (Function) : (可選) 載入成功時回調函數(只有當Response的返回狀態是success才是調用該方法)。
type (String) : (可選)官方的說明是:Type of data to be sent。其實應該為客戶端請求的類型(JSON,XML,等等)
這是一個簡單的 POST 請求功能以取代復雜 $.ajax 。請求成功時可調用回調函數。如果需要在出錯時執行函數,請
使用 $.ajax。示例代碼:
var con = $('#content').val();//待提交的數據
$.post("checkContent.action",{"mess.content":con},
function (data){
if(data != "")//有非法敏感字
{
alert(data);
$('#content').focus();
}
},"html");
點擊提交:
2009年8月4日
以下轉載自:
http://hi.baidu.com/tianhesj/blog/item/0dd9718d32be4011b21bbacc.html
Namespaces翻譯為命名空間。命名空間有什么作用呢?當我們在一個XML文檔中使用他人的或者多個DTD文件,就會出現這樣的矛盾:因為XML中標識都是自己創建的,在不同的DTD文件中,標識名可能相同但表示的含義不同,這就可能引起數據混亂。
比如在一個文檔<table>wood table</table>中<table>表示桌子,
而在另一個文檔<table>namelist</table>中<table>表示表格。如果我需要同時處理這兩個文檔,就會發生名字沖突。
了解決這個問題,我們引進了namespaces這個概念。namespaces通過給標識名稱加一個網址(URL)定位的方法來區別這些名稱相同的標識。
Namespaces同樣需要在XML文檔的開頭部分聲明,聲明的語法如下:
<document xmlns:yourname='URL'>
其中yourname是由你定義的namespaces的名稱,URL就是名字空間的網址。
假設上面的"桌子<table>"文檔來自http://www.zhuozi.com,我們就可以聲明為
<document xmlns:zhuozi='http://www.zhuozi.com'>;
然后在后面的標識中使用定義好的名字空間:
<zhuozi:table>wood table</table>
這樣就將這兩個<table>區分開來。注意的是:設置URL并不是說這個標識真的要到那個網址去讀取,僅僅作為一種區別的標志而已。
命名沖突
因為XML文檔中使用的元素不是固定的,那么兩個不同的XML文檔使用同一個名字來描述不同類型的元素的情況就可能發生。而這種情況又往往會導致命名沖突。請看下面兩個例子
這個 XML 文檔在table元素中攜帶了水果的信息:
<table>
<tr>
<td>Apples</td>
<td>Bananas</td>
</tr>
</table>
這個 XML 文檔在table元素中攜帶了桌子的信息(家具,不能吃的哦):
<table>
<name>African Coffee Table</name>
<width>80</width>
<length>120</length>
</table>
如果上面兩個XML文檔片斷碰巧在一起使用的話,那么將會出現命名沖突的情況。因為這兩個片斷都包含了<table>元素,而這兩個table元素的定義與所包含的內容又各不相同。
--------------------------------------------------------------------------------
使用前綴解決命名沖突問題
下面的XML文檔在table元素中攜帶了信息:
<h:table>
<h:tr>
<h:td>Apples</h:td>
<h:td>Bananas</h:td>
</h:tr>
</h:table>
下面的XML文檔攜帶了家具table的信息:
<f:table>
<f:name>African Coffee Table</f:name>
<f:width>80</f:width>
<f:length>120</f:length>
</f:table>
現在已經沒有元素命名沖突的問題了,因為這兩個文檔對各自的table元素使用了不同的前綴,table元素在兩個文檔中分別是(<h:table> 和<f:table>)。
通過使用前綴,我們創建了兩個不同的table元素。
--------------------------------------------------------------------------------
使用命名空間
下面的XML文檔在table元素中攜帶了信息:
<h:table xmlns:h="http://www.w3.org/TR/html4/">
<h:tr>
<h:td>Apples</h:td>
<h:td>Bananas</h:td>
</h:tr>
</h:table>
下面的XML文檔攜帶了家具table的信息:
<f:table xmlns:f="http://www.w3schools.com/furniture">
<f:name>African Coffee Table</f:name>
<f:width>80</f:width>
<f:length>120</f:length>
</f:table>
在上面兩個例子中除了使用前綴外,兩個table元素都使用了xmlns屬性,使元素和不同的命名空間關聯到一起。
--------------------------------------------------------------------------------
命名空間屬性
命名空間屬性一般放置在元素的開始標記處,其使用語法如下所示:
xmlns:namespace-prefix="namespace"
在上面的例子中,命名空間定義了一個Internet 地址:
xmlns:f="http://www.w3schools.com/furniture"
W3C 命名規范聲明命名空間本身就是一個統一資源標示符,Uniform Resource Identifier (URI)。
當我們在元素的開始標記處使用命名空間時,該元素所有的子元素都將通過一個前綴與同一個命名空間相互關聯。
注意:用來標識命名空間的網絡地址并不被XML解析器調用,XML解析器不需要從這個網絡地址中查找信息,該網絡地址的作用僅僅是給命名空間一個唯一的名字,因此這個網絡地址也可以是虛擬的,然而又很多公司經常把這個網絡地址值象一個真實的Web頁面,這個地址包含了關于當前命名空間更詳細的信息。
可以訪問http://www.w3.org/TR/html4/.
--------------------------------------------------------------------------------
統一資源標識符
通用資源標識符(A Uniform Resource Identifier (URI))是一個標識網絡資源的字符串。最普通的URI應該是統一資源定位符Uniform Resource Locator (URL)。URL用于標識網絡主機的地址。另一方面,另一個不常用的URI是通用資源名字Universal Resource Name (URN)。在我們的例子中,一般使用的是URLs。
既然前面的例子使用的URL地址來標識命名空間,我們可以確信這個命名空間是唯一的。
--------------------------------------------------------------------------------
默認的命名空間
定義一個默認的XML命名空間使得我們在子元素的開始標記中不需要使用前綴。他的語法如下所示:
<element xmlns="namespace">
下面的XML文檔在table元素中包含了水果的信息:
<table xmlns="http://www.w3.org/TR/html4/">
<tr>
<td>Apples</td>
<td>Bananas</td>
</tr>
</table>
下面的XML文檔包含了家具table的信息:
<table xmlns="http://www.w3schools.com/furniture">
<name>African Coffee Table</name>
<width>80</width>
<length>120</length>
</table>
--------------------------------------------------------------------------------
使用命名空間
檔開始使用XSL的時候,就會發現命名空間使用的是如此頻繁。XSL樣式單主要用于將XML文檔轉換成類似于HTML文件的格式。
如果看一下下面的XSL文檔,就會發現有很多標記都是HTML標記。那些標記并不是HTML標記,是加了前綴的XSL,這個XSL前綴由命名空間"http://www.w3.org/TR/xsl"所標識:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/xsl">
<xsl:template match="/">
<html>
<body>
<table border="2" bgcolor="yellow">
<tr>
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="CATALOG/CD">
<tr>
<td><xsl:value-of select="TITLE"/></td>
<td><xsl:value-of select="ARTIST"/></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/yc_8301/archive/2008/11/19/3335738.aspx
2009年5月8日
表單中有一個type=reset的button,可以將表單中的數據重置為初始表單的數據,但如果表單中有一些“單選”或“多選”框,其默認值是通過javascript腳本控制的;這種情況通過reset按鈕不會重置為初始狀態,所以不能簡單的調用reset自帶按鈕,解決方法:將重置按鈕設為普通按鈕,在onclick方法中,選調用form.reset()方法,然后再調用javascript腳本
2009年4月28日
我用的myeclipse 6.0版本,oracle是10g版本,在連接的時候出現了以下問題
java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1
ORA-12705: Cannot access NLS data files or invalid environment specified
一開始以為是驅動程序的問題,其實不是,只需在eclipse目錄下找到eclipse.ini文件,把
Duser.language=en 改成 Duser.language=zh就行了。
有可能大家出現的問題不一樣,按我的方法有可能不好使,我寫出來僅供大家參考,因為當時為解決這問題,花了不少時間,希望大家少走彎路
2009年4月23日
我有一把白色塑膠雨傘。買的時候喜歡它雪白可愛,瘦瘦長長,簡直像個鶴立雞群的美女??上н@種美麗偏偏不耐看,風吹雨打久了,顏色變黃,還多了雀斑一樣的污跡。而且瘦長是沒用的,哪里像折傘這么善解人意。于是,我開始制造各種機會。 趁著下雨帶它出門,左擱一會兒,右放一下,希望一下子大意忘了拿,讓它自動消失,大家無痛分手。我就可以理直氣壯買一把新的,多好!
失寵的人通常最敏感。 有一天,它突如其來消失了,完全不用花我任何心思。傘也有它的自尊。問題是,等一等,我還沒有準備好。不行,它不可以沒經我的同意就玩失蹤。我便一心一意要找它回來,花盡心思去想,到底在哪里弄丟的呢?書店,餐廳還是公共汽車地鐵呢?
真是峰回路轉,沒想到在戲院把它找回來,小別重逢,它苦著副臉在等我來新發現。重拾舊歡,大團圓結局。 換一個角度來看,如果我失敗了,找不到它,它永遠消失了,淡淡的遺憾感覺,會不會更合我心意?
人世間的破鏡重圓,大概都是一言難盡。
2009年4月22日
select t2.*,t3.ncount from
(select groupid, count(id) as ncount from t_txlEmploy group by groupid) t3, t_txlgroup t2
where t2.id=t3.groupid(+)
group by t2.id,t3.groupid
構架一張t3
表,字段為“集團編號”,“集團用戶數”
然后用“集團表”和t3表再關聯
2009年4月17日
前兩天聯華對單系統頻頻出現out of memory的問題,經過層層分析,終于弄明白原來瓶頸出現在Spring獲取Bean那一步上。以前的做法是在delegate層ApplicationContext context = new ClassPathXmlApplicationContext("Compare.xml"); 這樣我把log4j的debug打開后發現,每做1步操作的時候系統都會重新加載這個xml,重新創建Bean的實例,重新獲取url-mapping,這無疑是個及其錯誤的方式。 研究后發現正確的使用方式是: 首先在web.xml里配置ApplicationContext <context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param> <listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener> 然后在Action中編寫如下代碼得到Context,(我是覆蓋了Struts Action的setServlet方法,也許還有更好的方法)。 public void setServlet(ActionServlet servlet){
super.setServlet(servlet);
ServletContext servletContext = servlet.getServletContext();
WebApplicationContext wac = WebApplicationContextUtils.getRequiredWebApplicationContext(servletContext);
// get yours beans } 這樣在啟動服務時已經加載了xml中的配置,而不用每次都重新加載,大大提高了系統的效率
2008年11月25日
事先,把你的硬盤劃出 10G左右的空閑空間!
1.下載suse安裝光盤,準備好8G左右的空間,最好是ntfs格式的。現在有 10.1正式版和10.2的beta 2版,2006年12月7號,10.2就除正式版了!然后將五張光盤全部解壓,加壓到根目錄的一個文件夾下,比如X:\suse\
2.找到解壓出的第一張光盤linux和initrd文件,放在根目錄下.
32位的路徑應該是 x:\suse\SUSE-Linux-10.1-Remastered-x86_64-CD1\boot\i386\loader\
64位的路徑是:X:\suse\SUSE-Linux-10.1-Remastered-x86_64-CD1\boot\x96_64\loader\
3.下載Grub for dos。下載網址:http://download.it168.com/14/1411/33307/33307_4.shtml
http://grub4dos.sourceforge.net
4.將下載的grub for dos 解壓到C盤可能會提示覆蓋什么profile.sys文件,直接替換就行。
5.改boot.ini文件,先把boot.ini文件的隱藏屬性給去掉!
把boot.ini文件用記事本打開在最下添加這么一行
C:\GRLDR="GRUB"
然后保存,
6.下一步就是重啟系統了,當要選擇要啟動的系統時,選擇grub,找到類似 commanderline ,按下enter,進入dos 提示符狀態下,
輸入 find /linux 回車,此時會顯示
hd(0,6)——(肯定會有不同,請看下面注釋)
kernel hd(0,6)/linux回車
initrd hd(0,6)/initrd回車
boot回車
(注釋:hd(0,6) 6是你的分區,根據你的分區不同,這個數字會不同,0表示是第一塊硬盤。)
進入圖形界面,
會提示類似 no cd in your cd drive的語句,不用管他,選擇back
7.按照提示選擇,都是簡單的英語,完全可以搞定的(抄襲linuxsir.org幾位大俠的話。。呵呵)
8.等到要你指定安裝文件的位置的時候,你把你剛才解壓的suse的幾張光盤的位置填進去就行了,然后回車,會提示選擇安裝語言,鍵盤鼠標什么的,按照提示選就ok了。大家安裝時候注意分區,不要采用它默認的分區方式,那樣的你的windows操作系統就會被它給刪掉了。
再羅嗦一點,Suse的分區方式沒有fedora和ubuntu做的好,后面的兩個全部可以手動分區,而suse只有切換到專家模式下才能更改分區,剛開始,搞的我又點郁悶。
等待安裝完成。。。。大約40 ~ 1個小時。不要著急!中間還要填root密碼和給機器命名,添加user等操作!
9.安裝完成后,重啟,進入系統,user不用填密碼自動登錄系統(現在我還不知道怎么才能不讓它自動登錄)
祝大家好運。。。。
——部分內容來自linuxsir.org,感謝Thruth大俠!
2008年11月13日
摘要: 關于ORACLE中的DECODE- -
 ...
閱讀全文