摘要: 在網(wǎng)頁編程中,經(jīng)常需要使用到附加碼這樣的一個(gè)東西,防止黑客用程序用窮舉法去破解密碼。下面是我的一個(gè)附加碼的Servlet實(shí)現(xiàn)。
1import java.awt.*; 2import java.awt.image.*; 3import...
閱讀全文
技巧問題 如何實(shí)現(xiàn)為一個(gè)網(wǎng)卡綁定多個(gè)IP地址?
技巧主題 根目錄-=>網(wǎng)絡(luò)管理-=>網(wǎng)絡(luò)設(shè)置
技巧作者 泛舟
發(fā)表時(shí)間 2002-09-18 15:54:47
--------------------------------------------------------------------------------
Linux的網(wǎng)絡(luò)設(shè)備配置文件存放在/etc/sysconfig/network-scripts里面,對(duì)于以太網(wǎng)的第一個(gè)網(wǎng)絡(luò)設(shè)備,配置文件名一般為 ifcfg-eth0 如果需要為第一個(gè)網(wǎng)絡(luò)設(shè)備綁定多一個(gè)IP地址,只需要在/etc/sysconfig/network-scripts目錄里面創(chuàng)建一個(gè)名為ifcfg-eth0:0的文件,內(nèi)容樣例為:
DEVICE="eth0:0"
IPADDR="211.100.10.119"
NETMASK="255.255.255.0"
ONBOOT="yes"
其中的DEVICE為設(shè)備的名稱,IPADDR為此設(shè)備的IP地址,NETMASK為子網(wǎng)掩碼,ONBOOT表示在系統(tǒng)啟動(dòng)時(shí)自動(dòng)啟動(dòng)。
如果需要再綁定多一個(gè)IP地址,只需要把文件名和文件內(nèi)的DEVICE中的eth0:x加一即可。LINUX最多可以支持255個(gè)IP別名。
在Oracle中不支持LIMT ? OFFSET ?這樣的SQL語法,所以原先的MySQL的語句移植到Oracle中需要做一些改動(dòng),我的做法如下:
MySQL:SELECT * FROM foo ORDER BY xxx LIMIT ? OFFSET ?
Oracle:SELECT * FROM (SELECT ROWNUM AS NUMROW, A.* FROM (SELECT * FROM foo ORDER BY xxx) A) WHERE NUMROW>? AND NUMROW<=?
這是利用Oracle的一個(gè)虛擬的ROWNUM列實(shí)現(xiàn)的,只要在原來的SQL語句前面加上“SELECT * FROM (SELECT ROWNUM AS NUMROW, A.* FROM (”,并且把后面的“LIMIT ? OFFSET ?”改成“) A) WHERE NUMROW>? AND NUMROW<=?”,并且在代碼處做相關(guān)的修改即可。
最近在做系統(tǒng)的Oracle移植,需要從MySQL移植到Oracle中,在MySQL中有自增類型的字段,在Oracle中卻沒有,需要用其它的辦法實(shí)現(xiàn)。在Oracle中要用一個(gè)SEQUENCE和觸發(fā)器實(shí)現(xiàn)。下面是我的一個(gè)實(shí)現(xiàn):
1
CREATE TABLE FOO
2
(
3
INDEX INT NOT NULL,
4
ABC VARCHAR2(128),
5
DEF VARCHAR2(128),
6
PRIMARY KEY (INDEXID)
7
) TABLESPACE TEMP;
8
9
CREATE SEQUENCE FOO_INDEXID INCREMENT BY 1 START WITH 1 MAXVALUE 999999999999 CYCLE NOCACHE;
10
11
CREATE OR REPLACE TRIGGER INSERT_FOO_INDEXID
12
BEFORE INSERT ON FOO
13
REFERENCING
14
NEW AS new
15
OLD AS old
16
FOR EACH ROW
17
BEGIN
18
SELECT FOO_INDEXID.NEXTVAL INTO :new.INDEXID FROM DUAL;
19
END;
摘要: 以前在表單里面需要用戶輸入日期的時(shí)候,總是用一個(gè)text的輸入框讓用戶自己按照格式輸入,這樣還需要對(duì)用戶的輸入進(jìn)行有效性檢查。經(jīng)過幾次后,覺得煩了,還是用一個(gè)像客戶端的控件一樣的東西讓用戶選擇的比較好一些。下面是我所使用的JavaScript:
1//日歷 2var ...
閱讀全文
最近把自己的IDE從JBuilderX升級(jí)到了2005,雖然在編輯Struts的配置文件的時(shí)候感覺快了些,但是總體還是很吃機(jī)器。以前的一些項(xiàng)目都是跑在Tomcat 4.0.6的環(huán)境下的,在2005中卻沒有了Tomcat 4.0的Server。為了讓開發(fā)環(huán)境和運(yùn)行環(huán)境一致,我決定給2005加上Tomcat 4.0的Server。經(jīng)過一天的摸索,終于成功。
一開始我以為用Configure Servers里面的Copy功能,把Tomcat 4.1的拷貝成4.0的就可以了,但是Tomcat跑不起來,因?yàn)?.1和4.0的server.xml文件的格式是不一樣的,在4.1中的server.xml文件格式如下:
1
<?xml version="1.0" encoding="UTF-8"?>
2
<!--This comment marks this file as generated, so it may be deleted and regenerated at any time. To preserve manual changes to this file, delete this comment.-->
3
<Server debug="0" port="8081" shutdown="SHUTDOWN">
4
<Service name="Tomcat-Standalone">
5
<Connector acceptCount="10" className="org.apache.coyote.tomcat4.CoyoteConnector" connectionTimeout="60000" debug="0" maxProcessors="75" minProcessors="5" port="8080" useURIValidationHack="false"/>
6
<Engine debug="0" defaultHost="localhost" name="Standalone">
7
<Host appBase="D:\jbproject\xxxxx\Tomcat\webapps" debug="0" name="localhost" unpackWARs="true"/>
8
</Engine>
9
</Service>
10
</Server>
在4.0中的server.xml文件格式如下:
1
<?xml version="1.0" encoding="UTF-8"?>
2
<!--This comment marks this file as generated, so it may be deleted and regenerated at any time. To preserve manual changes to this file, delete this comment.-->
3
<Server debug="0" port="8081" shutdown="SHUTDOWN">
4
<Service name="Tomcat-Standalone">
5
<Connector acceptCount="10" className="org.apache.catalina.connector.http.HttpConnector" connectionTimeout="60000" debug="0" maxProcessors="75" minProcessors="5" port="8080"/>
6
<Engine debug="0" defaultHost="localhost" name="Standalone">
7
<Host appBase="D:\jbproject\xxxxx\Tomcat\webapps" debug="0" name="localhost" unpackWARs="true">
8
<Context debug="0" docBase="D:\jbproject\xxxxx\admin" path="/admin" reloadable="true" workDir="D:\jbproject\xxxxx\Tomcat\work\admin"/>
9
</Host>
10
</Engine>
11
</Service>
12
</Server>
13
在4.1中把具體的Context放到了webapps目錄下面,所以并不能簡單的copy過來就可以用。
在JBuilder 2005中,每個(gè)Server都是以plugin的形式加入的,具體的jar文件放在lib目錄下面的servers目錄里面。用WinRAR打開tomcat-jbsp.jar文件,可以看到里面有Tomcat33*.class和Tomcat40*.class,也就是說其實(shí)JBuilder 2005其實(shí)是有這些server的配置信息的,只是它隱藏了。那么怎么把它打開呢?答案就在MANIFEST.MF文件里面,修改前的文件內(nèi)容如下:
1
Implementation-Vendor: Borland Software Corp.
2
Implementation-Version: 011.000.236.000
3
Implementation-Title: JBuilder 2005, English Edition
4
OpenTools-Servers: com.borland.jbuilder.server.tomcat.Tomcat50Server
5
com.borland.jbuilder.server.tomcat.Tomcat41Server
6
在后面再增加一行:com.borland.jbuilder.server.tomcat.Tomcat40Server。保存,并且重啟JBuilder 2005,點(diǎn)擊Enterprise->Configure Servers,你將可以看到里面多了一個(gè)Tomcat4.0的Server。呵呵,大功告成!
類似的還可以添加其它的Server,不過只限于JBuilder 2005本身有的Server。如果熟悉JBuilder 的plugin的大蝦完全可以自己編程解決。
這是我的第一篇隨筆,不知道寫些什么好。我是一個(gè)普通的Java程序員,生活在深圳這個(gè)城市。按照寫程序的慣例,第一篇的標(biāo)題就叫做Hello,World!吧。