- 先下載適合自己系統(tǒng)的即時(shí)客戶端,可通過下面的地址下載。
http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
- 直接解壓到你想要存放的目錄中,如:D:\Java\instantclient_10_2
- 編輯環(huán)境變量:
TNS_ADMIN 設(shè)置為 D:\Java\instantclient_10_2
ORACLE_HOME 設(shè)置為 D:\Java\instantclient_10_2
- 編輯連接配置文件 tnsnames.ora,該文件需要自行在即時(shí)客戶端目錄(C:\instantclient_11_2)中創(chuàng)建。在該文件內(nèi)輸入如下內(nèi)容:
MYDB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.250)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = MYDB)
)
)
MYDB:是數(shù)據(jù)庫(kù)實(shí)例名
192.168.3.259:是數(shù)據(jù)庫(kù)的 IP 地址
1521:是數(shù)據(jù)庫(kù)的端口
- 然后你就可以使用 PLSQL Developer 和 TOAD 這類軟件來管理 Oracle 數(shù)據(jù)庫(kù)了。
下面根據(jù)自己的實(shí)際情況配置PL/SQL:在首選項(xiàng)(perference)里面設(shè)置Oracle主目錄名(Oracle_home)和OIC庫(kù)(OCI Library),我的設(shè)置是Oracle_home=D:\Java\instantclient_10_2,OCI Library=D:\Java\instantclient_10_2\oci.dll。
posted @
2010-08-26 17:01 CoderDream 閱讀(738) |
評(píng)論 (0) |
編輯 收藏
摘要: 視頻名稱:
[A218]JAVA反射機(jī)制與動(dòng)態(tài)代理.exe
[A219]JAVA反射機(jī)制與動(dòng)態(tài)代理續(xù)一.exe
[A220]JAVA反射機(jī)制與動(dòng)態(tài)代理續(xù)二.exe
主講教師:風(fēng)中葉
Java 語(yǔ)言的反射機(jī)制
在Java運(yùn)行時(shí)環(huán)境中,對(duì)于任意一個(gè)類,可以知道這個(gè)類有哪些屬性和方法。對(duì)于任意一個(gè)對(duì)象,可以調(diào)用它的任意一個(gè)方法。
這種動(dòng)態(tài)獲取類的信息以及動(dòng)態(tài)調(diào)用對(duì)象的方法的功能...
閱讀全文
posted @
2010-08-25 16:12 CoderDream 閱讀(2284) |
評(píng)論 (0) |
編輯 收藏
有時(shí)候我們會(huì)碰到需要設(shè)置代理,然后通過svn獲取源代碼,下面我們來看一下如何設(shè)置;
1、找到 C:\Documents and Settings\your userName\Application Data\Subversion 這個(gè)目錄下的servers文件,用任意一個(gè)文本編輯器打開,找到類似于如下的文字:
[global]
# http-proxy-exceptions = *.exception.com, www.internal-site.org
#http-proxy-host = proxy2.some-domain-name.com
#http-proxy-port = 9000
# http-proxy-username = defaultusername
將
#http-proxy-host
#http-proxy-port
這兩行前面的#號(hào)去掉,并將=號(hào)右邊的值分別改為你的代理服務(wù)器地址和端口號(hào)即可。
2、設(shè)置Eclipse/MyEclipse,確認(rèn)SVN的客戶端是SVNKit:

這樣,就可以在Eclipse/MyEclipse中通過代理使用SVN了。
![]()
posted @
2010-03-05 15:29 CoderDream 閱讀(3809) |
評(píng)論 (2) |
編輯 收藏
我們?cè)谲浖_發(fā)中,經(jīng)常需要以表格的方式展現(xiàn)批量數(shù)據(jù),如統(tǒng)計(jì)分析等等。
這里介紹一個(gè)Flash的表格生成工具--FusionCharts,它是一個(gè)收費(fèi)軟件,不過如果不是用于商業(yè)用途,只是用于,可以到網(wǎng)上下載破解版,csdn上面就有,如果想商業(yè),購(gòu)買應(yīng)該也不貴。
下面我們來看一個(gè)最簡(jiǎn)單的例子:
這個(gè)軟件生成表格的模式是:數(shù)據(jù)(XML文件或文件流)+模板。
1、XML數(shù)據(jù):
<chart caption='Monthly Sales Summary' subcaption='For the year 2006' xAxisName='Month' yAxisName='Sales' numberPrefix='$'>
<set label='January' value='17400' />
<set label='February' value='19800' />
<set label='March' value='21800' />
<set label='April' value='23800' />
<set label='May' value='29600' />
<set label='June' value='27600' />
<set label='July' value='31800' />
<set label='August' value='39700' />
<set label='September' value='37800' />
<set label='October' value='21900' />
<set label='November' value='32900' />
<set label='December' value='39800' />
</chart>
2、將所有需要用到的模板拷貝到固定的位置。
3、在html中指定數(shù)據(jù)位置和模板名稱:
<html>
<head>
<title>My First FusionCharts</title>
</head>
<body bgcolor="#ffffff">
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="900" height="300" id="Column3D" >
<param name="movie" value="../FusionCharts/Column3D.swf" />
<param name="FlashVars" value="&dataURL=Data.xml">
<param name="quality" value="high" />
<embed src="../FusionCharts/Column3D.swf" flashVars="&dataURL=Data.xml" quality="high" width="900" height="300" name="Column3D" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>
</body>
</html>
4、運(yùn)行結(jié)果:
posted @
2010-02-03 11:16 CoderDream 閱讀(1089) |
評(píng)論 (0) |
編輯 收藏
1、FCKeditor源代碼分析(一 )----------fckeditor.js的中文注釋分析(原創(chuàng))
http://blog.csdn.net/nileader/archive/2009/10/21/4710559.aspx
2、
Developers GuideJavaScript
http://docs.cksource.com/FCKeditor_2.x/Developers_Guide/Integration/JavaScript
3、網(wǎng)絡(luò)營(yíng)銷實(shí)戰(zhàn)密碼——策略.技巧.案例
http://product.dangdang.com/product.aspx?product_id=20449076
posted @
2009-10-23 16:00 CoderDream 閱讀(409) |
評(píng)論 (0) |
編輯 收藏
1、安裝
Oracle 版本:Oracle Database 10g Release 2 (10.2.0.1)
下載地址:
http://www.oracle.com/technology/software/products/database/oracle10g/htdocs/10201winsoft.html
安裝設(shè)置:
1)這里的全局?jǐn)?shù)據(jù)庫(kù)名即為你創(chuàng)建的數(shù)據(jù)庫(kù)名,以后在訪問數(shù)據(jù),創(chuàng)建“本地Net服務(wù)名”時(shí)用到;
2)數(shù)據(jù)庫(kù)口令在登錄和創(chuàng)建“本地Net服務(wù)名”等地方會(huì)用到。
2、創(chuàng)建“本地Net服務(wù)名”
1)通過【程序】-》【Oracle - OraDb10g_home1】-》【配置和移植工具】-》【Net Configuration Assistant】,運(yùn)行“網(wǎng)絡(luò)配置助手”工具:
2)選擇“本地 Net 服務(wù)名配置”:
3)這里的“Net 服務(wù)名”我們輸入安裝數(shù)據(jù)庫(kù)時(shí)的“全局?jǐn)?shù)據(jù)庫(kù)名”:
4)主機(jī)名我們輸入本機(jī)的IP地址:
5)測(cè)試數(shù)據(jù)庫(kù)連接,用戶名/密碼為:System/數(shù)據(jù)庫(kù)口令(安裝時(shí)輸入的“數(shù)據(jù)庫(kù)口令”):

默認(rèn)的用戶名/密碼錯(cuò)誤:

更改登錄,輸入正確的用戶名/密碼:

測(cè)試成功:

3、PLSQL Developer 連接測(cè)試
輸入正確的用戶名/口令:

成功登陸:

4、創(chuàng)建表空間
打開sqlplus工具:
sqlplus /nolog
連接數(shù)據(jù)庫(kù):
conn /as sysdba
創(chuàng)建表空間:
create tablespace camds datafile 'D:\oracle\product\10.2.0\oradata\camds\camds.dbf' size 200m autoextend on next 10m maxsize unlimited;
5、創(chuàng)建新用戶
運(yùn)行“P/L SQL Developer”工具,以DBA(用戶名:System)的身份登錄:
1)新建“User(用戶):
2)設(shè)置用戶名、口令、默認(rèn)表空間(使用上面新建的表空間)和臨時(shí)表空間:
3)設(shè)置角色權(quán)限:
4)設(shè)置”系統(tǒng)權(quán)限“:
5)點(diǎn)擊應(yīng)用后,【應(yīng)用】按鈕變灰,新用戶創(chuàng)建成功:
6)新用戶登錄測(cè)試:
輸入新用戶的“用戶名/口令”:

新用戶“testcamds”成功登陸:
6、導(dǎo)入導(dǎo)出數(shù)據(jù)庫(kù)
先運(yùn)行cmd命令,進(jìn)入命令行模式,轉(zhuǎn)到下面的目錄:D:"oracle"product"10.2.0"db_1"BIN【該目錄下有exp.exe文件】
1)導(dǎo)入
命令語(yǔ)法:
imp userid / pwd @sid file = path / file fromuser = testcamds touser = userid
命令實(shí)例:
imp testcamds / 123 @camds file = c:"testcamds fromuser = testcamds touser = testcamds
導(dǎo)入結(jié)果:
2)導(dǎo)出:
命令語(yǔ)法:
exp userid / pwd @sid file = path / file owner = userid
命令實(shí)例:
exp testcamds / 123 @camdsora file = c:"testcamds owner = testcamds
導(dǎo)入結(jié)果:

posted @
2009-10-18 20:13 CoderDream 閱讀(20347) |
評(píng)論 (1) |
編輯 收藏
1
、Java通過XML Schema校驗(yàn)XML
http://lavasoft.blog.51cto.com/62575/97597
posted @
2009-08-27 09:50 CoderDream 閱讀(386) |
評(píng)論 (0) |
編輯 收藏
1、實(shí)例不能啟動(dòng)!
癥狀:“計(jì)算機(jī)管理”-》“服務(wù)和應(yīng)用程序”-》“服務(wù)”-》“OracleOraDb10g_camdsTNSListener”的啟動(dòng)類型為“自動(dòng)”,但是狀態(tài)為空(已停止),手工啟動(dòng),狀態(tài)變?yōu)?#8220;已啟動(dòng)”,1~5秒后狀態(tài)變回“已停止”,數(shù)據(jù)庫(kù)不能正常使用;
解決方法:【開始】-》【程序】-》【Oracle - OraDb10g_camds】-》【Configuration and Migration Tools】-》【Net Configuration Assistant】,重新配置一下剛才的【監(jiān)聽程序配置】,然后刷新服務(wù)就可以看到服務(wù)正常“自動(dòng)”啟動(dòng)了。
posted @
2009-06-25 09:15 CoderDream 閱讀(517) |
評(píng)論 (0) |
編輯 收藏
由于Spring AOP實(shí)現(xiàn)了AOP聯(lián)盟約定的接口,而Spring框架并不提供該接口的源代碼,我在網(wǎng)上搜索了一下相關(guān)資料,整理如下:
1、官方網(wǎng)站:
http://sourceforge.net/projects/aopalliance/
2、源代碼:
http://coderdream.javaeye.com/topics/download/322bb187-64b3-3f4f-9ac2-fdc0ef4d0033
3、在線文檔:
http://aopalliance.sourceforge.net/doc/index.html
posted @
2009-04-04 22:31 CoderDream 閱讀(3453) |
評(píng)論 (0) |
編輯 收藏
最近,myeclipse 發(fā)布了最新的7.1版,其中blue版提供了對(duì)RAD 6.X的支持:
本版本的最引人注目之處莫過于對(duì)WSAD5.1、RAD 6.X和7.X項(xiàng)目的加強(qiáng)支持, 包括促進(jìn)WSAD/RAD用戶在MyEclipse Blue 和RAD環(huán)境下提高項(xiàng)目質(zhì)量, . 全面有效執(zhí)行任務(wù)的特性。此外,那些希望能將自己的項(xiàng)目完全移植到 MyEclipse Blue 版本的朋友們,可以通過使用MyEclipse Blue 7.1中的簡(jiǎn)單向?qū)韺?shí)現(xiàn)了。 同時(shí),新項(xiàng)目也能夠完全支持已有的開發(fā)和服務(wù)器工具。
下載地址為:
A:普通版:
http://downloads.myeclipseide.com/downloads/products/eworkbench/7.0/myeclipse-7.1-win32.exe
B:Blue版
http://downloads4.myeclipseide.com/downloads/products/eworkbench/7.0-Blue/myeclipse-blue-7.1-win32.exe
其中普通版可以直接用迅雷下載,但是blue卻連不上。
嘗試了多種方式,終于找到了下載方法,不過速度很慢,而且很不穩(wěn)定:
使用的軟件
1、OperaTor-2.5
這是一個(gè)附帶代理的瀏覽器軟件;
2、eMule V1.1.3
常用的電驢軟件;
下面我們來看看如何下載:
【步驟1】:打開OperaTor,程序打開后,會(huì)發(fā)現(xiàn)托盤區(qū)有一個(gè)藍(lán)色圖標(biāo),上面有一個(gè)字母“P";
【步驟2】:將鼠標(biāo)移到該圖標(biāo),點(diǎn)擊右鍵,依次選擇【Edit】-》【Main configuration】

【步驟3】:在打開的config.txt文件中,我們可以看到,本地代理的端口為:9050,

【步驟4】:設(shè)置電驢的代理服務(wù)器,這里的服務(wù)器類型選”Socks 4a“:

【步驟5】:最后,點(diǎn)擊電驢的”新建“按鈕,將”blue版“的地址拷貝過來就可以下載了:

不過通過代理方式下載的速度很慢,有時(shí)候還會(huì)斷線,這時(shí)候只需要重新打開上面軟件就可以了。
posted @
2009-03-16 22:04 CoderDream 閱讀(2679) |
評(píng)論 (0) |
編輯 收藏
啟動(dòng)服務(wù):
1、首先建立一個(gè)新的“服務(wù)器”
在“Servers”面板空白處點(diǎn)擊右鍵,依次選擇【New】-》【Server】:
2、選擇新服務(wù)器的類型
服務(wù)器主機(jī)名默認(rèn)為:localhost,類型為:Oracle WebLogic Server v10.3:
3、選擇域的文件路徑:
這里選擇WebLogic安裝路徑下的base_domain
注:我們安裝WebLogic后有兩個(gè)domain,分別為:base_domain和test_domain,其實(shí)還可以自己創(chuàng)建自定義的domain,點(diǎn)擊面板中鏈接進(jìn)入新建向?qū)А?/p>
4、啟動(dòng)服務(wù)器
選擇新建的服務(wù)器,點(diǎn)擊右鍵,選中【Start】即可,通過控制臺(tái)(Console)面板即可看到啟動(dòng)信息:
5、出現(xiàn)錯(cuò)誤警告
提示:
The domain edit lock is owned by another session - this
deployment operation requires exclusive access to the edit lock and
hence cannot proceed.
You can release the lock in Administration Console by first disabling
"Automatically Acquire Lock and Activate Changes" in Preference,
then clicking the Release Configuration button.
解決方法:
1、進(jìn)入WebLogic控制臺(tái):
鏈接:http://localhost:7001/console/
2、進(jìn)入?yún)?shù)(Preferences)面板:

3、將自動(dòng)鎖定和激活勾選去掉:

4、點(diǎn)擊頁(yè)面左上角的【Release Configuration】,使剛才的設(shè)置生效:

posted @
2009-03-10 14:58 CoderDream 閱讀(1637) |
評(píng)論 (0) |
編輯 收藏
01、
Java中的易混問題收集
02、
Java程序的加密和反加密
03、
JAVA JSP
servlet取路徑問題總結(jié)....
04、
[轉(zhuǎn)載]社會(huì)生存的75條忠告----勝讀十年書(轉(zhuǎn)載)
05、
【轉(zhuǎn)載}08年Java開發(fā)者最迫切的五個(gè)期望
06、
【轉(zhuǎn)載】給研究起步者的忠告 !
07、
[轉(zhuǎn)載]Glassfish介紹
08、
民間偏方大全(總有你需要的時(shí)候)(轉(zhuǎn)載)
09、
【轉(zhuǎn)載】25條人生建議
10、
【轉(zhuǎn)載】讓你的生活和人生有所改變的45個(gè)方法
11、
【轉(zhuǎn)載】Java程序員面試寶典
12、
【轉(zhuǎn)載】sql 面試中的問題
13、
【轉(zhuǎn)載】面試進(jìn)行曲之技術(shù)面試(項(xiàng)目經(jīng)驗(yàn))
14、
【轉(zhuǎn)載】一家公司的面試題
15、
【轉(zhuǎn)載】面試雜談
16、
[轉(zhuǎn)載]一條sql 數(shù)據(jù)庫(kù)去除重復(fù)記錄
17、
【轉(zhuǎn)載】如何快速面試篩選,找到合適的人
18、
【原創(chuàng)】動(dòng)態(tài)生成日歷
19、
[原創(chuàng)]日期時(shí)間處理實(shí)用類
20、
[原創(chuàng)]八皇后回溯版
21、
[原創(chuàng)]java.util.Comparator使用示例
22、
【轉(zhuǎn)載】一個(gè)IT強(qiáng)人的奮斗歷程
23、
【轉(zhuǎn)載】Javeline的八年之期,走出象牙塔的紙象
24、
【轉(zhuǎn)載】職業(yè)生涯幾句話
25、
【整理】八皇后回溯版
26、
【轉(zhuǎn)載】2007年值得去思考的N大軟件技術(shù)
27、
【轉(zhuǎn)載】2008年值得學(xué)習(xí)的五種Java技術(shù)
28、
【轉(zhuǎn)載】實(shí)戰(zhàn) JDK 6.0 自帶web service
29、
【轉(zhuǎn)載】Linux學(xué)習(xí)系列之J2EE(JAVA EE)配置指南
30、
【轉(zhuǎn)載】招聘的吹牛體系
31、
【轉(zhuǎn)載】經(jīng)典論壇回復(fù)收集
32、
【轉(zhuǎn)帖】什么是MIS
33、
【轉(zhuǎn)載】如何去做你討厭做的事情?
34、
【轉(zhuǎn)載】在windowsXP系統(tǒng)中卸載oracle9i
35、
【原創(chuàng)】泛型動(dòng)態(tài)數(shù)組類
36、
【原創(chuàng)】數(shù)目字計(jì)數(shù)器,可多次添加整形數(shù),累計(jì)0-9各個(gè)數(shù)字出現(xiàn)了多少次
37、
【原創(chuàng)】輸出一萬(wàn)以內(nèi)(1-9999)整數(shù)的中文大寫形式
38、
【原創(chuàng)】求兩字符串的公共子串
posted @
2008-10-27 19:57 CoderDream 閱讀(301) |
評(píng)論 (0) |
編輯 收藏
1、
SQL注入攻擊及其防范淺談
posted @
2008-10-14 16:35 CoderDream 閱讀(276) |
評(píng)論 (0) |
編輯 收藏
在開發(fā)過程中使用模態(tài)窗口(window.showModelessDialog())時(shí),由于模態(tài)窗口默認(rèn)方式是有頁(yè)面緩存的,也就是說如果你改變了模態(tài)窗口的內(nèi)容,但是窗口內(nèi)的內(nèi)容不會(huì)更新,其實(shí)只要在<head>標(biāo)簽中加入下面三行代碼禁用頁(yè)面緩存即可:
<META HTTP-EQUIV='pragma' CONTENT='no-cache'>
<META HTTP-EQUIV='Cache-Control' CONTENT='no-cache, must-revalidate'>
<META HTTP-EQUIV='expires' CONTENT='0'>
posted @
2008-09-09 17:55 CoderDream 閱讀(854) |
評(píng)論 (0) |
編輯 收藏
摘要: 需求:
對(duì)XML中的特定內(nèi)容進(jìn)行排序:
原始XML:
<?xml version="1.0" encoding="UTF-8"?>
<hostgateway>
<header>
&nb...
閱讀全文
posted @
2008-08-20 15:14 CoderDream 閱讀(961) |
評(píng)論 (0) |
編輯 收藏
Comparable & Comparator 都是用來實(shí)現(xiàn)集合中的排序的,只是 Comparable 是在集合內(nèi)部定義的方法實(shí)現(xiàn)的排序,Comparator 是在集合外部實(shí)現(xiàn)的排序,所以,如想實(shí)現(xiàn)排序,就需要在集合外定義 Comparator 接口的方法或在集合內(nèi)實(shí)現(xiàn) Comparable 接口的方法。
一、Comparator
強(qiáng)行對(duì)某個(gè)對(duì)象collection進(jìn)行整體排序的比較函數(shù),可以將Comparator傳遞給Collections.sort或Arrays.sort。
接口方法:
/**
* @return o1小于、等于或大于o2,分別返回負(fù)整數(shù)、零或正整數(shù)。
*/
int compare(Object o1, Object o2);
二、Comparable
強(qiáng)行對(duì)實(shí)現(xiàn)它的每個(gè)類的對(duì)象進(jìn)行整體排序,實(shí)現(xiàn)此接口的對(duì)象列表(和數(shù)組)可以通過Collections.sort或Arrays.sort進(jìn)行自動(dòng)排序。
接口方法:
/**
* @return 該對(duì)象小于、等于或大于指定對(duì)象o,分別返回負(fù)整數(shù)、零或正整數(shù)。
*/
int compareTo(Object o);
三、Comparator和Comparable的區(qū)別
一個(gè)類實(shí)現(xiàn)了Camparable接口則表明這個(gè)類的對(duì)象之間是可以相互比較的,這個(gè)類對(duì)象組成的集合就可以直接使用sort方法排序。
Comparator可以看成一種算法的實(shí)現(xiàn),將算法和數(shù)據(jù)分離,Comparator也可以在下面兩種環(huán)境下使用:
1、類的設(shè)計(jì)師沒有考慮到比較問題而沒有實(shí)現(xiàn)Comparable,可以通過Comparator來實(shí)現(xiàn)排序而不必改變對(duì)象本身
2、可以使用多種排序標(biāo)準(zhǔn),比如升序、降序等。
完整代碼:
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class SortObject {
public static void main(String[] args) {
sortByComparable();
sortByComparator();
}
/**
* 通過Comparable排序
*/
public static void sortByComparable() {
List list = new ArrayList();
list.add(new Person("Coder", 1));
list.add(new Person("King", 3));
list.add(new Person("Dream", 2));
list.add(new Person("Baby", 4));
System.out.println("--- Sort Before ---");
printPerson(list);
Collections.sort(list);
System.out.println("--- After Sorted ---");
printPerson(list);
}
/**
* 通過Comparator排序
*/
public static void sortByComparator() {
List list = new ArrayList();
list.add(new Person("Coder", 1));
list.add(new Person("King", 3));
list.add(new Person("Dream", 2));
list.add(new Person("Baby", 4));
System.out.println("--- Sort Before ---");
printPerson(list);
Collections.sort(list, new PersonComparator());
System.out.println("--- After Sorted ---");
printPerson(list);
}
/**
* 打印List
*
* @param list
*/
public static void printPerson(List list) {
int size = list.size();
Person p = null;
for (int i = 0; i < size; i++) {
p = (Person) list.get(i);
System.out.println(p.getName() + ":" + p.getId());
}
}
}
class Person implements Comparable {
public String name;
public int id;
public Person() {
}
public Person(String name, int id) {
this.name = name;
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int compareTo(Object o) {
Person p = (Person) o;
return this.getName().compareTo(p.getName());
}
}
class PersonComparator implements Comparator {
public int compare(Object o1, Object o2) {
Person p1 = (Person) o1;
Person p2 = (Person) o2;
return p1.name.compareTo(p2.name);
}
}
輸出結(jié)果:
--- Sort Before ---
Coder:1
King:3
Dream:2
Baby:4
--- After Sorted ---
Baby:4
Coder:1
Dream:2
King:3
--- Sort Before ---
Coder:1
King:3
Dream:2
Baby:4
--- After Sorted ---
Baby:4
Coder:1
Dream:2
King:3
參考:
1、
Comparator和Comparable在排序中的應(yīng)用
2、
java中對(duì)于復(fù)雜對(duì)象排序的模型及其實(shí)現(xiàn) [轉(zhuǎn)]
posted @
2008-08-20 11:37 CoderDream 閱讀(355) |
評(píng)論 (0) |
編輯 收藏
|
WebSphere V6 專題 |
作為 WebSphere 軟件平臺(tái)的基礎(chǔ),WebSphere® Application Server V6.0 是業(yè)內(nèi)首選的基于 Java 的應(yīng)用程序平臺(tái),集成了動(dòng)態(tài)電子商務(wù)世界的企業(yè)數(shù)據(jù)和事務(wù)。每個(gè)可用配置都提供了豐富的應(yīng)用程序部署環(huán)境和應(yīng)用程序服務(wù),這些服務(wù)提供了增強(qiáng)的事務(wù)管理性能,同時(shí)還具備 WebSphere 產(chǎn)品家族的共同特性,包括安全性、性能、可用性、連接性和可伸縮性。
>>更多產(chǎn)品信息
posted @
2008-06-19 10:04 CoderDream 閱讀(349) |
評(píng)論 (0) |
編輯 收藏
目標(biāo):將形如(tppabs="js_3.htm#window 窗口對(duì)象")之類的問題替換成新的文字。
規(guī)則:以(tppabs=")開頭,(")結(jié)尾,中間有任意個(gè)字符
Java:^tppabs=".*"$
EditPlus(替換時(shí)注意選擇"正則表達(dá)式"):^tppabs=".*" 如果末尾加美元符號(hào)($),則不行!
Eclipse的正則表達(dá)式插件:Regular Expression Tester
Eclipse Regular Expression Tester
Features
- Test and search for regular expression
- Matches are colorized, for an easy visual clue
- Support for pattern flags (e.g. Pattern.DOTALL)
- LiveEval evaluates your regular expression while you are typing it, gives feedback on possible errors and shows any matches automatically
- LiveEval is supported for changes of the regular expression, the search text and the pattern flags
- 4 distinct match modes:
- Find a sequence of characters
- Match a complete text
- Split text
- Replace every occurence of the regex with a different string
Replacing supports back references ($1,$2,...)
- LiveEval for match mode changes
- Context sensitive "Regular Expression Assist"
- Selective evaluation of expressions
- Bracket Matching
- Generation of string literals based on the regexp, e.g. "\(x\)" becomes "\\(x\\)"
- De-escape patterns in your code, e.g. \\(x\\) becomes \(x\)
- Improved "Clear Menu", choose which parts of the view you would like to get cleared every time you press the clear button
- Easy movement through matches: Choose "Previous Match" or "Next Match" and cycle through all matches found.
- Polished and accessible user interface, everything is reachable via keyboard
Download the plugin
- Unzip it to ECLIPSE_HOME
- Restart Eclipse
- In Eclipse, choose Window > Show View > Other > RegEx Tester
- Configure it in Window > Preferences > RegEx Tester
If you like RegEx Tester, please rate it at
eclipse-plugins.info.
The plugin requires a 1.4 JRE/JDK and Eclipse 3.0 or later.
There is an old (sorry) user guide which can
also be found here.
posted @
2008-06-18 15:08 CoderDream 閱讀(507) |
評(píng)論 (0) |
編輯 收藏
效果:
左邊鏈接(包括錨點(diǎn))、右邊顯示
文件清單1:
<!-- ------------------------------ -->
<!-- 文件范例:index.html -->
<!-- 文件說明:框架集 -->
<!-- ------------------------------ -->
<HTML>
<HEAD>
<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="TEXT/HTML;CHARSET=UTF-8">
<TITLE>框架集</TITLE>
</HEAD>
<FRAMESET COLS="30%,70%">
<FRAME SRC=menu.html Scrolling="No">
<FRAME SRC=1.html Name="right">
</FRAMESET>
</HTML>
說明:
1、<meta>標(biāo)簽放在<title>之前可以讓IE自動(dòng)選擇字符集,如UTF-8;
2、第二個(gè)frame的name為“right”,這個(gè)值會(huì)在menu.html中用到;
文件清單2:
<!-- ------------------------------ -->
<!-- 文件范例:menu.html -->
<!-- 文件說明:左側(cè)框架 -->
<!-- ------------------------------ -->
<HTML>
<HEAD>
<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="TEXT/HTML;CHARSET=UTF-8">
<TITLE>左側(cè)框架</TITLE>
</HEAD>
<BODY>
<A href="1.HTML" Target="right">《商業(yè)周刊》:iPhone2.0帶來的鯰魚效應(yīng)</A><P>
1、<A href="1.HTML#a1" Target="right">無線運(yùn)營(yíng)商的日子更不好過</A><P>
2、<A href="1.HTML#a2" Target="right">手機(jī)制造廠商們將更煩惱</A><P>
3、<A href="1.HTML#a3" Target="right">iPhone帶來的沖擊會(huì)持續(xù)多久?</A><P>
<A href="2.HTML" Target="right">Fireworks MX</A><P>
<A href="3.HTML" Target="right">Flash MX</A><P>
</BODY>
</HTML>
說明:
1、注意,這里<A>標(biāo)簽的target都為index.html中定義的"right"
文件清單3:
<!-- ------------------------------ -->
<!-- 文件范例:1.html -->
<!-- 文件說明:右側(cè)框架一 -->
<!-- ------------------------------ -->
<HTML>
<HEAD>
<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="TEXT/HTML;CHARSET=UTF-8">
<TITLE>右側(cè)框架一</TITLE>
<Style Type="text/css">
<!--
.abc {
font-weight: bold;
font-size: 18px;
}
-->
</Style>
</HEAD>
<BODY>
<H1><A name=aTitle>《商業(yè)周刊》:iPhone2.0帶來的鯰魚效應(yīng)</A></H1>
ugmbbc發(fā)布于 2008-06-17 08:26:20|2998 次閱讀 字體:大 小 打印預(yù)覽<BR><BR>
北京時(shí)間6月16日,《商業(yè)周刊》發(fā)表評(píng)論文章分析了iPhone2.0對(duì)無線運(yùn)營(yíng)商和手機(jī)制造商們帶來的沖擊,以下為其全文:
當(dāng)蘋果準(zhǔn)備憑著3G版iPhone再次吹響戰(zhàn)斗號(hào)角的時(shí)候,也是手機(jī)制造商和無線運(yùn)營(yíng)商們更加頭疼的時(shí)候.蘋果在手機(jī)市場(chǎng)中可謂旗開得勝,在iPhone 入市的第一年,蘋果就從競(jìng)爭(zhēng)對(duì)手RIM公司中搶過不少市場(chǎng)份額,而AT&T作為 iPhone唯一授權(quán)的運(yùn)營(yíng)商,也從其競(jìng)爭(zhēng)對(duì)手Alltel和T-Mobile中吸引了不少用戶.可以想象,一個(gè)更便宜、速度更快、功能更全的 iPhone將帶來什么樣的沖擊.<BR><BR>
將在7月面市的新版iPhone,不僅售價(jià)不到200美元、升級(jí)到更快的網(wǎng)絡(luò),而且新增了很多吸引普通消費(fèi)者以及商業(yè)用戶的功能.
<A name=a1><p class=abc> 無線運(yùn)營(yíng)商的日子更不好過</p></A>
據(jù)業(yè)內(nèi)人士說,為了對(duì)付iPhone帶來的沖擊,無線服務(wù)運(yùn)營(yíng)商們不得不提高對(duì)手機(jī)的補(bǔ)貼、提高營(yíng)銷預(yù)算并降低一些服務(wù)的價(jià)格,所有這一切意味著利潤(rùn)空間的縮減.面對(duì)iPhone的沖擊,本來就已經(jīng)處在政府監(jiān)管日益增加以及直面Google競(jìng)爭(zhēng)的無線運(yùn)營(yíng)商們的日子更不好過了.<BR><BR>
在過去的一年里,美國(guó)的無線運(yùn)營(yíng)商們已經(jīng)在手機(jī)津貼上展開激烈競(jìng)爭(zhēng),通過增加對(duì)手機(jī)的補(bǔ)貼來獲得長(zhǎng)期無線服務(wù)合同.但現(xiàn)在AT&T以 iPhone為誘惑來吸引用戶,對(duì)別的運(yùn)營(yíng)商來說,必須采取相應(yīng)的措施來吸引用戶,他們可能引進(jìn)類iPhone的手機(jī).但"大多數(shù)人要的是iPhone,就像他們喜歡iPod而不是其他MP3播放器一樣",東北大學(xué)營(yíng)銷系教授Gloria Barczak說到,"人們要的是真正的iPhone".因此,要想讓用戶被吸引,必須得有別的優(yōu)勢(shì),比如價(jià)格優(yōu)勢(shì)等.<BR><BR>
為了留住高端用戶,運(yùn)營(yíng)商們需要加大業(yè)務(wù)推廣的力度.據(jù)廣告顧問公司TNS媒體情報(bào)的數(shù)據(jù),運(yùn)營(yíng)商Verizon無線今年第一季度的廣告支出增加了30%.<BR><BR>
Sprint Nextel同期的廣告開支下降20%,主要是由于自身的財(cái)務(wù)問題,當(dāng)看到用戶不斷流失的時(shí)候,Sprint Nextel應(yīng)該會(huì)加大廣告的投入."他們必須拿出能對(duì)抗iPhone誘惑的方案來,盡量發(fā)揮自己的長(zhǎng)處",顧問公司TMNG的CEO Rich Nespola說到.<BR><BR>
另一種留住用戶的方式是降低服務(wù)的價(jià)格.事實(shí)上,這是一個(gè)有效對(duì)付AT&T的辦法.AT&T對(duì)提供iPhone的用戶增加了服務(wù)的價(jià)格,以彌補(bǔ)高額的津貼費(fèi)用."AT&T的對(duì)手們將在今年下半年繼續(xù)加強(qiáng)價(jià)格優(yōu)勢(shì),可能會(huì)有30%到40%的下降.當(dāng)人們因?yàn)楦哂蛢r(jià)開支增多的情況下,每月在無線服務(wù)上節(jié)省50美元也是很有吸引力的",Pali研究所的分析師Walter Piecyk說到,"因此,無線運(yùn)營(yíng)商的利潤(rùn)將從目前的40%下滑到30%".
<p class=abc><A name=a2> 手機(jī)制造廠商們將更煩惱</A></p>
手機(jī)制造廠商們也正在因?yàn)閕Phone而大傷腦筋,盡管現(xiàn)在他們正受益于兩位數(shù)增長(zhǎng)的智能手機(jī)市場(chǎng).當(dāng)運(yùn)營(yíng)商們因iPhone而必須提高補(bǔ)貼的時(shí)候,他們會(huì)將壓力轉(zhuǎn)加到手機(jī)制造廠商頭上,進(jìn)而壓低手機(jī)價(jià)格.何況,如果iPhone真像分析師們預(yù)期那樣大賣的話,其他手機(jī)廠商的市場(chǎng)份額也會(huì)受到很大侵蝕.很久沒推出拳頭產(chǎn)品的摩托羅拉可能受創(chuàng)最重,三星、LG甚至諾基亞也會(huì)遭受沖擊,NPD集團(tuán)的主任分析師Ross Rubin說到,"高端、時(shí)尚機(jī)型將受沖擊最大".<BR><BR>
還有,為了趕上iPhone的技術(shù)水平和圖形表現(xiàn)能力,手機(jī)制造廠商們將不得不提高他們的軟件研發(fā)成本.去年售出300萬(wàn)臺(tái)觸摸手機(jī)的 HTC,已經(jīng)開發(fā)了一種特殊的3D菜單,該菜單表現(xiàn)力強(qiáng)勁,把通訊錄做得就像在實(shí)際的紙制通訊錄中翻找一樣."我們希望能把用戶的觸摸體驗(yàn)提升到一個(gè)新的水平",HTC 首席營(yíng)銷官的John Wang說到.<BR><BR>
作為世界上最大手機(jī)制造商的諾基亞,在Ovi上投了大量資金,希望為它的智能手機(jī)建立一個(gè)集地圖、游戲和照片共享于一身的Web服務(wù)平臺(tái),這次在iPhone的刺激下也在加緊推出新服務(wù)."我們將繼續(xù)推出新服務(wù)",諾基亞美洲區(qū)副總裁Bill Plummer說到.
<p class=abc><A name=a3> iPhone帶來的沖擊會(huì)持續(xù)多久?</A></p>
iPhone帶來的沖擊將會(huì)持續(xù)多久?這個(gè)很難說.一個(gè)重量級(jí)手機(jī)的銷售要達(dá)到頂峰需要幾年的時(shí)間.摩托羅拉傳奇的RAZR系列手機(jī)在2004年推出,直到2007年一季度才達(dá)到銷售的頂峰,據(jù)NPD的數(shù)據(jù),當(dāng)時(shí)RAZR系列手機(jī)銷售占全美手機(jī)銷售的12%.<BR><BR>
雖然不好說那些別的智能手機(jī)和類iPhone的手機(jī)將會(huì)如何發(fā)展,但是"畢竟,重要的是,它們不是iPhone",Jupiter研究所分析師Neil Strother說到,"這不是在蘋果堆里挑蘋果".<BR><BR>
</BODY>
</HTML>
文件清單4:
<!-- ------------------------------ -->
<!-- 文件范例:2.html -->
<!-- 文件說明:右側(cè)框架二 -->
<!-- ------------------------------ -->
<HTML>
<HEAD>
<TITLE>右側(cè)框架二</TITLE>
<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="TEXT/HTML;CHARSET=UTF-8">
</HEAD>
<BODY>
<H1>Fireworks MX</H1>
Fireworks MX作為網(wǎng)頁(yè)圖像設(shè)計(jì)軟件的代表,在繼承了前期版本圖形繪制、頁(yè)面特效功能的同時(shí),大大地發(fā)展了位圖圖像方面的處理功能,這無疑使這個(gè)軟件有了向Photoshop挑戰(zhàn)的更多資本,而其在網(wǎng)頁(yè)設(shè)計(jì)方面的諸多應(yīng)用,又無任何軟件可與之媲美。與Dreamweaver MX的整合使其在專業(yè)網(wǎng)站圖像設(shè)計(jì)過程中,扮演著不可或缺的角色。
</BODY>
</HTML>
文件清單5:
<!-- ------------------------------ -->
<!-- 文件范例:3.html -->
<!-- 文件說明:右側(cè)框架三 -->
<!-- ------------------------------ -->
<HTML>
<HEAD>
<TITLE>右側(cè)框架三</TITLE>
<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="TEXT/HTML;CHARSET=UTF-8">
</HEAD>
<BODY>
<H1>Flash MX</H1>
Flash MX作為網(wǎng)頁(yè)矢量交互動(dòng)畫軟件的代表,提供了圖形繪制、動(dòng)畫制作和交互三大功能。掌握了這個(gè)軟件的核心,也就有能力在網(wǎng)上沖浪的同時(shí),充當(dāng)一把閃客的角色。越來越多的個(gè)人、商業(yè)網(wǎng)站采用Flash技術(shù)制作廣告Banner、動(dòng)畫片頭、MTV、交互游戲,其廣泛的應(yīng)用為Flash的學(xué)習(xí)者提供了廣闊的發(fā)展平臺(tái),學(xué)習(xí)Flash MX軟件更是一個(gè)具有誘惑力的過程。
</BODY>
</HTML>
源代碼
posted @
2008-06-18 11:47 CoderDream 閱讀(812) |
評(píng)論 (3) |
編輯 收藏
大家好,網(wǎng)頁(yè)設(shè)計(jì)思考欄目今天繼續(xù)第八講。我們上次討論了首頁(yè)設(shè)計(jì)的版面布局 和色彩的搭配,今天我們來談?wù)勛煮w。
●字體(Font)的設(shè)置是網(wǎng)頁(yè)制作新手遇到的第一個(gè)難點(diǎn)。如何控制字體大小,如何取消 超鏈接字體的下劃線是網(wǎng)友來信問得最多的。好,我們來徹底研究一下字體的各個(gè)方面:
○字符集的設(shè)定。
在查看html文件原代碼時(shí),我們經(jīng)常可以在文件頭<head>和</head>之間看到這么一句代碼:
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
這段代碼的作用是什么呢?是否可以刪除呢?
其實(shí)這是meta標(biāo)簽的設(shè)定語(yǔ)句,是給瀏覽器看的。它的作用就是告訴瀏覽器:這個(gè)HTML 文件是采用gb2312字符集制作的。當(dāng)瀏覽器讀到這一代碼,便以gb2312字符集來解釋和翻譯 網(wǎng)頁(yè)原代碼,然后我們就可以看到正確的網(wǎng)頁(yè)。所以這個(gè)meta語(yǔ)句是非常重要的,盡量不要 刪除。
gb2312就是我們最熟悉的GB簡(jiǎn)體碼,英文是iso-8859-1字符集。其它還有BIG5,UTF-8, Shift-JIS,EUC,KOI8-2等字符集,分別用于不同的字體顯示。
○字體的使用。
在網(wǎng)頁(yè)里,字體的定義語(yǔ)句是:<font face="Arial">顯示文字</font> 其中Arial就是一種字體的名稱。 默認(rèn)的瀏覽器定義的標(biāo)準(zhǔn)字體是中文宋體和英文times new Roma字體。也就是說, 如果你沒有設(shè)置任何字體,網(wǎng)頁(yè)將以這兩種標(biāo)準(zhǔn)字體顯示。同時(shí),著兩種字體也可以在任 何操作系統(tǒng)和瀏覽器里正確顯示。
windows另外自帶了40多種英文字體和5種中文字體。這些字體,你也可以在網(wǎng)頁(yè)里自由 使用和設(shè)置。凡是使用windows操作系統(tǒng)的瀏覽器都可以正確顯示這些字體,但在其它操作 系統(tǒng)里,如unix 則不能完全正確顯示。
如果你需要用一種特殊的字體來體現(xiàn)你的風(fēng)格,那么如何讓大家可以真正看到你的設(shè)計(jì) 頁(yè)面呢?解決的辦法是:用圖片。
將需要用這種字體的地方用圖片代替,以保證所有人看到的頁(yè)面是同一效果。
○字體的樣式(style)。
字體的樣式有四種:正常體(regular),斜體(Italic),粗體(Bold),粗斜體(Bold Italic)。 設(shè)置方法很簡(jiǎn)單,阿捷就不多羅嗦了。
○字體的效果。
這里指通過html語(yǔ)言設(shè)定可以直接顯示的效果,在html里的語(yǔ)句設(shè)定為: <span style="text-decoration: overline">顯示文字</span>
其中,overline是指上劃線效果。其它常用的效果還有:underline(下劃線), uppercase(大寫)等等。
○字體大小的控制。
字體大小的控制是本節(jié)的重點(diǎn)。
一般字體默認(rèn)的大小是12pt(鎊).用<font size="+1">語(yǔ)句可以將文字增大2pt。這種方法我們都已經(jīng)掌握了。而現(xiàn)在網(wǎng)絡(luò)上最流行的小中文字體大小為9pt,是如何設(shè)定的呢?有三種方法:
1.用"<span style="font-size:9pt">顯示文字</span>"語(yǔ)句來設(shè)定。
顯然這種方法非常麻煩,你必須為每段文字都設(shè)定大小。
2.用CSS層疊樣式表。
CSS是DHTML的一個(gè)組成部分,它可以定義整個(gè)頁(yè)面的字體顯示風(fēng)格和大小。是較為簡(jiǎn)便的方法。比如,這里需要設(shè)定整個(gè)頁(yè)面文字大小為9 pt,只要將下面這段代碼加入html代碼的<head>和</head>之間:
<style type="text/css">
<--
body {FONT-SIZE: 9pt}
th {FONT-SIZE: 9pt}
td {FONT-SIZE: 9pt}
-->
</style>
其中FONT-SIZE:9pt指字體的大小為9鎊
3.第二種方法已經(jīng)簡(jiǎn)化了許多步驟,但是仍然不是最理想的方法,因?yàn)槟惚仨氃诿總€(gè)頁(yè)面的head區(qū)都放置這么一段代碼,擴(kuò)大了文件的字節(jié)。另外這樣的做法還有一個(gè)重大缺點(diǎn),就是如果我需要修改整個(gè)站點(diǎn)的字體大小,就必須一頁(yè)一頁(yè)的改!
所以推薦給你最終也是目前最好的方法---外部摸板文件調(diào)用法。
“外部摸板調(diào)用”就是說你將css的設(shè)定作成一個(gè)單獨(dú)的文件,在每個(gè)頁(yè)面里都調(diào)用它。一旦你需要修改字體大小,只要修改一個(gè).cs s文件,幾百個(gè)頁(yè)面就同時(shí)修改了。(這種方法類似子程序調(diào)用編寫過程序的網(wǎng)友很容易理解
調(diào)用的具體方法如下:
(1)將上面的css代碼copy成一個(gè)mycss.txt文件,然后修改后綴名為mycss.css
(2)在html文件的<head></head>之間插入<LINK href="mycss.css" rel=stylesheet type=text/css>, 語(yǔ)句調(diào)用mycss.css(注意有關(guān)路徑的設(shè)置正確)OK!
○字體超鏈接樣式的設(shè)定。
通常在網(wǎng)頁(yè)的<body>中設(shè)置連接的顏色,如<body link="#FF00FF" vlink="#FF0000" alink="#008080"> 其中:
link -- Hyperlink(連接)的顏色
vlink-- visited Hyperlink(已訪問過的連接)顏色
alink-- active Hyperlink (當(dāng)前活動(dòng)的連接)顏色 顏色用rgb的16進(jìn)制碼表示如紅色是#FF0000。
同樣用CSS可以更簡(jiǎn)便的設(shè)定網(wǎng)頁(yè)超連接的樣式,看下面這段代碼:
<style type="text/css"> A:link {TEXT-DECORATION: none;COLOR: #0000FF} A:visited {TEXT-DECORATION: none;COLOR: #000000} A:active {TEXT-DECORATION: none;COLOR: #FF0000} A:hover {COLOR: #FF0000} </style>
將它插入html文件的head區(qū)就可以了。其中l(wèi)ink設(shè)定的是有超鏈接的顏色;visited是訪問過的超 鏈接顏色;active是鼠標(biāo)移上去的顏色;hover是鼠標(biāo)點(diǎn)擊時(shí)的顏色。而"text-decoration:none"是指 取消超鏈接的下劃線顯示。
關(guān)于CSS的設(shè)定還有更多的用法和技巧,比如在同一頁(yè)中設(shè)定不同的字體大小和超鏈接顏色,請(qǐng)學(xué)習(xí)有關(guān)CSS的專門知識(shí)(可以到阿捷的主頁(yè)h ttp://pageone.yeah.net查閱)在這里我們不在冗述。
●上面已經(jīng)介紹了字體在技術(shù)上的各個(gè)方面。有關(guān)字體的設(shè)計(jì)使用,目前還沒有一個(gè)成熟的理論, 下面是幾條網(wǎng)頁(yè)設(shè)計(jì)中字體的使用原則,僅供參考:
1.不要使用超過3種以上的字體。字體太多則顯得雜亂,沒有主題。
2.不要用太大的字。因?yàn)榘婷媸菍氋F,有限的,粗陋的大字體不能帶給訪問者更多信息。
3.不要使用不停閃爍的文字。想讓瀏覽者多停留一會(huì)兒的話,就不要使用閃爍的文字。
4.原則上標(biāo)題的字體較正文大,顏色也應(yīng)有所區(qū)別。
posted @
2008-06-18 09:42 CoderDream 閱讀(386) |
評(píng)論 (0) |
編輯 收藏
在windows操作系統(tǒng)上使用IE作為瀏覽器時(shí)。常常會(huì)發(fā)生這樣的問題:在瀏覽使用UTF-8編碼的網(wǎng)頁(yè)時(shí),瀏覽器無法自動(dòng)偵測(cè)(即沒有設(shè)定“自動(dòng)選擇”編碼格式時(shí))該頁(yè)面所用的編碼。即使網(wǎng)頁(yè)已經(jīng)聲明過編碼格式:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
由此造成某些含有中文UTF-8編碼的頁(yè)面產(chǎn)生空白輸出。
如果使用的是Mozilla、Mozilla 瀏覽器、Sarafi的瀏覽器這不會(huì)造成這個(gè)問題。這是由于IE解析網(wǎng)頁(yè)編碼時(shí)以HTML內(nèi)的標(biāo)簽優(yōu)先,而后才是HTTP header內(nèi)的訊息;而mozilla系列的瀏覽器則剛剛相反。
由于UTF-8為3個(gè)字節(jié)表示一個(gè)漢字,而普通的GB2312或BIG5是兩個(gè)。頁(yè)面輸出時(shí),由于上述原因,使瀏覽器解析、輸出<title></title>的內(nèi)容時(shí),如果在</title>前有奇數(shù)個(gè)全角字符時(shí),IE把UTF-8當(dāng)作兩個(gè)字節(jié)解析時(shí)出現(xiàn)半個(gè)漢字的情況,這時(shí)該半個(gè)漢字會(huì)和</title>的<結(jié)合成一個(gè)亂碼字,導(dǎo)致IE無法讀完<title>部分,使整個(gè)頁(yè)面為空百輸出。而這個(gè)時(shí)候如果察看源文件的話,會(huì)發(fā)現(xiàn)實(shí)際上整個(gè)葉面全部已經(jīng)輸出了。
因此最簡(jiǎn)單的解決辦法是在網(wǎng)頁(yè)文件的<head></head>標(biāo)簽中一定要把字符定義
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
放在<title></title>之前。
posted @
2008-06-18 09:30 CoderDream 閱讀(415) |
評(píng)論 (0) |
編輯 收藏
1、
如何使用Log4j?
2、
http://supportweb.cs.bham.ac.uk/documentation/tutorials/docsystem/build/tutorials/log4j/log4j.html
3、
Log4j
http://my.so-net.net.tw/idealist/Java/Log4j.html
posted @
2008-06-13 17:56 CoderDream 閱讀(405) |
評(píng)論 (0) |
編輯 收藏
摘要: 14.1 什么是JavaScript
14.1.1 JavaScript概念
JavaScript是一種基于對(duì)象和事件驅(qū)動(dòng)并具有安全性能的腳本語(yǔ)言。
14.1.2 JavaScript特點(diǎn)
是一種腳本編寫語(yǔ)言;
基于對(duì)象的語(yǔ)言;
簡(jiǎn)單性;
安全性;
動(dòng)態(tài)性;
跨平臺(tái)性
14.2 編寫第一個(gè)JavaScript腳本
文件范例:1401.html
<!-- --...
閱讀全文
posted @
2008-06-04 09:29 CoderDream 閱讀(423) |
評(píng)論 (0) |
編輯 收藏
我們?cè)陂_發(fā)的過程中,調(diào)試的時(shí)候經(jīng)常要進(jìn)入某些包,如果沒有將這些包與對(duì)應(yīng)的源文件文件夾或zip包對(duì)應(yīng),就會(huì)提示“Source not found”,但是現(xiàn)在很多jar文件都會(huì)有相應(yīng)的源文件,如Struts、Spring等等。而且JavaEE的很多源文件可以通過Tomcat的源文件找到,我們把它打成zip包,注意要和jar文件夾對(duì)應(yīng),然后設(shè)置一下,以后新建Web Project的時(shí)候,就可以很方便的查看servlet文件夾下面的源代碼了。
這是javaee.jar的設(shè)置畫面,其他Struts等等設(shè)置類似。
posted @
2008-05-29 14:57 CoderDream 閱讀(3160) |
評(píng)論 (0) |
編輯 收藏
出現(xiàn)這個(gè)問題后使用“清理”功能,如果還不行,就直接到上一級(jí)目錄,再執(zhí)行“清理”,然后再“更新”。
有時(shí)候如果看到某個(gè)包里面的文件夾沒有SVN的標(biāo)志,直接用“Ctrl+Delete”手工刪除,然后“清理”,最后“更新”或“提交”。
網(wǎng)絡(luò)摘抄1:
錯(cuò)誤信息
Malformed file
svn: E:\svn\repository\conf\svnserve.conf:12: Option expected
原因:
配置文件12行開頭有空格
錯(cuò)誤信息
Attempted to lock an already-locked dir
svn: Working copy 'E:\integration\com.svn.practise' locked
原因:
需要用svn cleanup上次關(guān)閉時(shí)的鎖定
網(wǎng)絡(luò)摘抄2:
在eclipse里提交和更新文件是抱錯(cuò)。
Attempted to lock an already-locked dir
svn: Working copy 'F:\workspace\WebFrame\WebRoot\attach\prodrelation' locked
執(zhí)行“清除”操作后,問題解決了。
很多操作,例如中斷提交,都會(huì)進(jìn)入這種工作拷貝的鎖定狀態(tài)。
網(wǎng)絡(luò)摘抄3:
因?yàn)檫@兩天頻出這個(gè)現(xiàn)象,現(xiàn)在基本不怕這個(gè)問題了
我是這樣解決的:
1 三令五申項(xiàng)目的組員必須先同步,合并,再提交
2 操作后經(jīng)常地在父目錄使用clean up命令
3 解決了locked問題后,還出現(xiàn)不能更新的現(xiàn)象時(shí),就刪除目錄下的所有文件,包括.svn,再重新check out服務(wù)器同目錄一次
4 總之,操作要規(guī)范,要強(qiáng)調(diào)組員每天開工時(shí),先在ECLIPSE里同步,下班時(shí),要提交(提交前,先在文件夾的右菜單中,選擇小組>清除),保證每個(gè)人的機(jī)子里在開工前都是最新版本
老實(shí)講,因?yàn)榘姹緵_突,提交沖突,更新失敗等等問題,耽誤了好些時(shí)間,但我知道主要還是自身操作不熟練不規(guī)范的問題。我相信,只要堅(jiān)持,大家包括我的組員一定都會(huì)喜歡上這個(gè)小海龜?shù)?nbsp;
posted @
2008-05-27 09:51 CoderDream 閱讀(108659) |
評(píng)論 (14) |
編輯 收藏
效果:
文件清單:
序號(hào) |
文件名 |
1 |
ChangeLocaleAction.java |
2 |
ChangeLocaleForm.java |
3 |
struts-config.xml |
4 |
index.jsp |
5 |
application_en_US.properties |
6 |
application_zh_CN.properties |
7 |
application_zh_TW.properties |
清單1:
package com.coderdream.struts.action;
import java.util.Locale;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.Globals;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import com.coderdream.struts.form.ChangeLocaleForm;
public class ChangeLocaleAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
ChangeLocaleForm clForm = (ChangeLocaleForm)form;
String language = clForm.getLanguage();
if (language != null) {
Locale locale;
if (language.equalsIgnoreCase("en")) {
locale = Locale.US;
request.getSession().setAttribute(
Globals.LOCALE_KEY, locale);
} else if (language.equalsIgnoreCase("tw")) {
locale = Locale.TAIWAN;
request.getSession().setAttribute(
Globals.LOCALE_KEY, locale);
} else {
locale = Locale.CHINA;
request.getSession().setAttribute(
Globals.LOCALE_KEY, locale);
}
}
return mapping.findForward("success");
}
}
清單2:
package com.coderdream.struts.form;
import org.apache.struts.action.ActionForm;
/**
*
* description:
*
* @author
*
*/
public class ChangeLocaleForm extends ActionForm{
public ChangeLocaleForm() {
super();
}
private String language;
public String getLanguage() {
return language;
}
public void setLanguage(String language) {
this.language = language;
}
}
清單3:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">
<struts-config>
<data-sources />
<form-beans>
<form-bean name="ChangeLocaleForm"
type="com.coderdream.struts.form.ChangeLocaleForm" />
</form-beans>
<action-mappings>
<action name="ChangeLocaleForm" path="/ChangeLocale"
scope="request"
type="com.coderdream.struts.action.ChangeLocaleAction"
validate="false">
<forward name="success" path="/index.jsp" />
</action>
</action-mappings>
<message-resources key="application"
parameter="com.coderdream.struts.resources.application" />
</struts-config>
清單4:
<%@ page contentType="text/html; charset=UTF-8"%>
<%@page import="org.apache.struts.Globals"%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic"%>
<html:html>
<head>
<title>多語(yǔ)言測(cè)試</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
</head>
<script language="javascript">
function onLanguage(){
var language = document.getElementsByName("language")[0].value;
if(language!=null&&language!=""){
document.forms[0].submit();
}
}
</script>
<body>
<html:form action="ChangeLocale.do">
<html:select property="language" styleId="height:18"
onchange="onLanguage();">
<option value="" title="">
--
<bean:message bundle="application" key="global.select.language" />
--
</option>
<option value="en" title="English">
English
</option>
<option value="cn" title="簡(jiǎn)體中文">
簡(jiǎn)體中文
</option>
<option value="tw" title="繁體中文">
繁體中文
</option>
</html:select>
</html:form>
<br>
<br>
<br>
<bean:message bundle="application" key="global.select.test" />
<%=request.getSession().getAttribute(Globals.LOCALE_KEY)%>
</body>
</html:html>
清單5:
#Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
global.select.language = Language
global.select.test = Test
清單6:
#Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
#BizException
global.select.language = \u8BED\u8A00
global.select.test = \u6D4B\u8BD5
清單7:
#Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
global.select.language = \u8A9E\u8A00
global.select.test = \u6E2C\u8A66
此功能的關(guān)鍵是在Action里面將頁(yè)面?zhèn)鬟^來的language信息得到,然后根據(jù)信息設(shè)置Locale,然后將新的Locale放到Session中。
源代碼:
點(diǎn)擊下載
posted @
2008-05-14 18:20 CoderDream 閱讀(1018) |
評(píng)論 (0) |
編輯 收藏
需求:用實(shí)線把各個(gè)面板圈起來,然后把面板的名字寫在圈圈的左上角。
原始畫面:
由于原來的程序使用的是AWT中的Panel,而這個(gè)控件我們沒有設(shè)置titleBorder的方法。
現(xiàn)在將更新為Swing中的JPanel面板,代碼分別為:
舊代碼:
Panel pRoboCtrl=new Panel();
pRoboCtrl.setLayout(new GridLayout(5, 1, 2, 5));
// Robot控制面板的第一排,面板的標(biāo)題
Panel pR1=new Panel();
pR1.setLayout(new GridLayout(1, 1, 2, 3));
//Row One
pR1.add(new Label("Robot Control",Label.CENTER));
新代碼:
JPanel pRoboCtrl=new JPanel();
pRoboCtrl.setLayout(new GridLayout(4, 1, 2, 5));
Border titleBorder1=BorderFactory.createTitledBorder("Robot Control");
pRoboCtrl.setBorder(titleBorder1);
原來的處理方式是將一個(gè)Label放到Panel中,然后將這個(gè)Panel放到外層的Panel中,新方式是將外層Panel定義成JPanel,然后設(shè)置Border的值為BorderFactory產(chǎn)生的一個(gè)實(shí)例。
解決這個(gè)問題后,新問題又來了,兩個(gè)JPanel中的內(nèi)容不一樣,上面多,下面少,但是現(xiàn)在面板卻是一樣大,要改成面板高度自動(dòng)適應(yīng)。
其實(shí)這只需要修改一行代碼就可以了,代碼如下:
舊代碼:
CP.setLayout(new GridLayout(3, 1, 2, 5));
新代碼:
CP.setLayout(new BoxLayout(CP, BoxLayout.Y_AXIS)); // 沿垂直方向布置組件
舊代碼的處理方式是網(wǎng)格布局,新代碼的方式是用BoxLayout布局管理器,它會(huì)按要求垂直或水平分布。

以下代碼創(chuàng)建了一個(gè)JPanel容器,它采用垂直 BoxLayout,在這個(gè)容器中包含兩個(gè)Button,這兩個(gè)Button沿垂直方向分布,并且保持像素為 5 的固定垂直間隔。
JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));// 沿垂直方向布置組件
panel.add(new JButton("Button1"));
panel.add(Box.createVerticalStrut(5));
panel.add(new JButton("Button2"));
源代碼:
下載
posted @
2008-04-29 16:16 CoderDream 閱讀(15618) |
評(píng)論 (2) |
編輯 收藏
1、下載
http://www.opensymphony.com/quartz/download.action
https://quartz.dev.java.net/files/documents/1267/43545/quartz-1.6.0.zip
2、
詳細(xì)講解Quartz如何從入門到精通
3、
用 Quartz 進(jìn)行作業(yè)調(diào)度
posted @
2008-04-15 17:46 CoderDream 閱讀(738) |
評(píng)論 (0) |
編輯 收藏
數(shù)據(jù)庫(kù)和表
create table USERS
(
USERNAME VARCHAR2(20) not null,
PASSWORD VARCHAR2(20)
)
alter table USERS
add constraint U_PK primary key (USERNAME)
/**
* JdbcExample.java
*
* Provider: CoderDream's Studio
*
* History
* Date(DD/MM/YYYY) Author Description
* ----------------------------------------------------------------------------
* Apr 14, 2008 CoderDream Created
*/
package com.coderdream.jdbc.oracle;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
/**
* @author XL
*
*/
public class JdbcExample {
private static Connection getConn() {
String driver = "oracle.jdbc.driver.OracleDriver";
String url = "jdbc:oracle:thin:@10.5.15.117:1521:csi";
String username = "scott";
String password = "tiger";
Connection conn = null;
try {
Class.forName(driver);
// new oracle.jdbc.driver.OracleDriver();
conn = DriverManager.getConnection(url, username, password);
}
catch (ClassNotFoundException e) {
e.printStackTrace();
}
catch (SQLException e) {
e.printStackTrace();
}
return conn;
}
private static int insert(String username, String password) {
Connection conn = getConn();
int i = 0;
String sql = "insert into users (username,password) values(?,?)";
PreparedStatement pstmt;
try {
pstmt = conn.prepareStatement(sql);
// Statement stat = conn.createStatement();
pstmt.setString(1, username);
pstmt.setString(2, password);
i = pstmt.executeUpdate();
System.out.println("resutl: " + i);
pstmt.close();
conn.close();
}
catch (SQLException e) {
e.printStackTrace();
}
return i;
}
private static void query() {
Connection conn = getConn();
String sql = "select * from users";
PreparedStatement pstmt;
try {
pstmt = conn.prepareStatement(sql);
ResultSet rs = pstmt.executeQuery();
while (rs.next()) {
System.out.println("name: " + rs.getString("username")
+ " \tpassword: " + rs.getString("password"));
}
rs.close();
pstmt.close();
conn.close();
}
catch (SQLException e) {
e.printStackTrace();
}
}
private static int update(String oldName, String newPass) {
Connection conn = getConn();
int i = 0;
String sql = "update users set password='" + newPass
+ "' where username='" + oldName + "'";
PreparedStatement pstmt;
try {
pstmt = conn.prepareStatement(sql);
i = pstmt.executeUpdate();
System.out.println("resutl: " + i);
pstmt.close();
conn.close();
}
catch (SQLException e) {
e.printStackTrace();
}
return i;
}
private static int delete(String username) {
Connection conn = getConn();
int i = 0;
String sql = "delete users where username='" + username + "'";
PreparedStatement pstmt;
try {
pstmt = conn.prepareStatement(sql);
i = pstmt.executeUpdate();
System.out.println("resutl: " + i);
pstmt.close();
conn.close();
}
catch (SQLException e) {
e.printStackTrace();
}
return i;
}
/**
* @param args
*/
public static void main(String[] args) {
insert("CDE", "123");
insert("CoderDream", "456");
query();
update("CoderDream", "456");
query();
delete("CoderDream");
query();
}
}
posted @
2008-04-14 17:55 CoderDream 閱讀(7051) |
評(píng)論 (0) |
編輯 收藏
1、首先下載eclipse的Tomcat插件,文件名為:tomcatPluginV321.zip
下載:
地址
2、安裝Tomcat插件,即將zip檔解壓,放入eclipse目錄下的 plugins 文件夾中。
3、在項(xiàng)目上點(diǎn)右鍵,設(shè)置properties,在'Tomcat'下面設(shè)置'export to war settings'輸入要導(dǎo)出的war文件路徑和文件名,確定,返回項(xiàng)目。
4、在項(xiàng)目上點(diǎn)右鍵,選擇tomcat project->Export to the war file sets in project properties
5、 進(jìn)入C盤,可以看到csi.war文件正在生成,成功后會(huì)有提示框。這樣就可以通過Tomcat插件導(dǎo)出WAR檔了。
posted @
2008-04-08 13:43 CoderDream 閱讀(3737) |
評(píng)論 (1) |
編輯 收藏
有關(guān)CVS權(quán)限設(shè)置參考
個(gè)人建議:如果各個(gè)項(xiàng)目獨(dú)立,我還是建議每個(gè)項(xiàng)目一個(gè)庫(kù)!
你的整體思路是正確的,步驟很清晰。
不過要注意cvs chacl -R default:n 的使用,此命令會(huì)把該模塊的全部權(quán)限都去掉的。
另外建議 如果admini,pm 是管理員用戶,可以在CVSROOT下建立超級(jí)用戶admin文件,將這兩個(gè)用戶加入。
=====================================================================
那就按找你的思想設(shè)計(jì)權(quán)限
假設(shè)目錄結(jié)構(gòu)如下
project
|
|……pro1
| |_pro
| |_aa
|
|……Pro2
| |_pro
| |_bb
|
|_CVSROOT
權(quán)限要求
1.用戶admini,pm 對(duì)project 整個(gè)目錄有rcw的權(quán)限
2.用戶h,y,w 對(duì)pro1\pro 整個(gè)目錄有rcw的權(quán)限
3.用戶y 對(duì)pro1\aa 整個(gè)目錄有rcw的權(quán)限
4.用戶h 對(duì)pro2 整個(gè)目錄有rcw的權(quán)限
=====================================================================
權(quán)限設(shè)置步驟如下:
首先,建立一個(gè)組包含3個(gè)用戶h,y,w。 group1:h,y,w
一.用戶admini,pm 對(duì)project 目錄有rcw的權(quán)限
選中模塊roject設(shè)置權(quán)限:
cvs chacl -R default:n
cvs chacl -R admini:rcw
cvs chacl -R pm:rcw
cvs lsacl
二.用戶h,y,w 對(duì)pro1\pro目錄有rcw的權(quán)限
選中模塊pro設(shè)置權(quán)限:
cvs chacl -R group1:rcw
cvs lsacl
三.用戶y 對(duì)pro1\aa目錄有rcw的權(quán)限
選中模塊aa設(shè)置權(quán)限:
cvs chacl -R y:rcw
cvs lsacl
四.用戶h 對(duì)pro2目錄有rcw的權(quán)限
選中模塊pro2:
cvs chacl -R h:rcw
cvs lsacl
結(jié)束!
C應(yīng)該是check out/in
R:READ-只讀權(quán)限;用戶不能對(duì)文件進(jìn)行修改操作;
A:ADD/RENAME/DELETE-用戶可以對(duì)文件進(jìn)行添加、刪除和更名的操作;其中刪除的操作支持從視圖中刪除文件連接,并沒有徹底刪除文件,配置庫(kù)中依然保存文件及其日志信息;
C:CHECK IN/CHECK OUT-文件修改權(quán)限:用戶可以將文件進(jìn)行簽出進(jìn)行修改,并可以將修改后的文件簽入到配置庫(kù)中;
D:DESTROY-徹底刪除權(quán)限;
1、
VSS和CVS的比較
2、
CVS使用手冊(cè)
3、
一篇CVS權(quán)限管理手冊(cè)
4、
CVS資料集中營(yíng)
5、
CVS權(quán)限設(shè)置
posted @
2008-04-07 16:32 CoderDream 閱讀(530) |
評(píng)論 (0) |
編輯 收藏
摘要: Struts連接數(shù)據(jù)庫(kù)一般有直接JDBC和數(shù)據(jù)源兩種方式,
1、JDBC:
在MySQL中創(chuàng)建數(shù)據(jù)庫(kù):
drop database if exists login;
create database login;
use login;
create table user(...
閱讀全文
posted @
2008-03-26 13:47 CoderDream 閱讀(3870) |
評(píng)論 (5) |
編輯 收藏