當前位置:首頁 » 編程語言 » javaice

javaice

發布時間: 2024-03-29 21:56:37

『壹』 用ice實現java和c++的通信,代理類型返回為空是什麼原因

有區別, ICE 在基本上的相同的,但很多都是基於slice上的。 換句話來講只能是在slice上通用。
實際ICE是根據slice生成不同的原生語言(java,c++,php,c#)等,所以在語言上是等同於使用原生語言開發。 在數據上幾乎是一樣的,不過在顯示中文的時需要注意字元集問題。

返回代理類型為空一般都是,ICE的配置屬性是於相符, 代理是不是找不到。

『貳』 ice錛宼hrift鎬ц兘鍝涓楂

涓や釜妗嗘灦鐨勶細

1銆傝法璇璦
涓や釜妗嗘灦閮藉緢濂界殑鍋氬埌浜嗚繖涓鐐癸紝涓繪祦鐨勫紑鍙戣璦C++,Java,Python,Ruby絳夌瓑閮借兘鏀鎸併

2銆備唬鐮佺敓鎴
涓や釜妗嗘灦閮芥湁鑷宸辯殑IDL,(Interface Define Lanaguage),鍦↖CE閲岄潰鍙玸lice鏂囦歡錛孴hrift閲岄潰灝卞彨Thrift鏂囦歡錛岀敤鏉ユ弿榪板皢瑕佸疄鐜扮殑鏈嶅姟鎺ュ彛錛岀劧鍚庨氳繃宸ュ叿紼嬪簭鑷鍔ㄧ敓鎴愰ㄦ灦浠g爜錛屾瘮濡俢lient鍜宻erver絝鐨剆tub浠g爜.Thrift鐢熸垚鐨勪唬鐮侀兘鍦ㄤ竴涓鏂囦歡閲岋紝ICE鍒欑粏鑷寸殑澶氾紝鑳藉緢濂界殑鍖哄垎閭i儴鍒嗘槸server絝錛岄偅閮ㄥ垎鏄痗lient絝鐢ㄧ殑銆

3銆傜綉緇滀紶杈撶殑緙栫爜鍜岃В鐮
瀵硅薄鍦ㄤ紶杈撹繃紼嬫椂錛屽彂閫佺鍙戦佹椂闇瑕佸皢Object緙栫爜鎴愬瓧鑺傛祦錛屾帴鏀剁鎺ユ敹鍚庡垯灝嗚繖浜涘瓧鑺傛祦瑙g爜鎴愬瑰簲鐨凮bject,浠庝袱涓妗嗘灦鐨勫疄鐜版潵鐪嬶紝ICE鐨勭紪鐮佽佹瘮Thrift瑕佺揣鍑戝拰緇忔祹鐨勫氾紝Thrift鍦ㄧ紪鐮丱bject鏃訛紝榪炲悓Object鐨凢ield鐨勭被鍨嬪拰緙栧彿(Thrift瀹氫箟鐨勬瘡涓狾bject鐨刦ield閮戒細鍒嗛厤涓涓緙栧彿)浠ュ強姣忎釜鍑芥暟鐨勫弬鏁扮被鍨嬪拰緙栧彿閮界粰緙栫爜榪涘幓浜嗭紝ICE鍒欑粡嫻庣殑澶氾紝鍙緙栫爜浜咶ield鐨剉alue銆

4銆傛嗘灦鏈韜
Thrift鏁翠釜妗嗘灦浠g爜闈炲父綆媧侊紝鐩告瘮ICE鏉ヨ達紝ICE瑕佹瘮Thrift瀹屽杽鍜屾垚鐔熺殑澶氥傝繖涓涓昏佷綋鐜板湪鏈嶅姟鐨勯珮鍙鐢ㄦу拰鍙鎵╁睍鎬ф柟闈銆
ICE鎻愪緵鐨勬湇鍔″彲浠ユ槸鍒嗗竷寮忕殑錛屾嗘灦鏈夊畬鍠勶紝鎴愮啛鐨勮繍琛岀幆澧冩潵榪愯屾湇鍔★紝榪欎簺鐜澧冩彁渚涗簡寰堝氬緢濂界殑鏈哄埗錛屾潵淇濊瘉鏈嶅姟鐨勫彲鎵╁睍鍜岄珮鍙鐢ㄦэ紝姣斿
Register鏈哄埗錛岄氳繃Register錛岃ヽlient鍐嶈繛鎺ユ湇鍔℃椂澶氫簡涓灞傚誨潃鐨勬満鍒訛紝濡傚悓DNS涓鏍鳳紝鍙浠ユ柟渚跨殑灝嗘煇涓鏈嶅姟鍒囨崲鍒板叾浠栨満鍣ㄤ笂錛屽拰DNS浣淚P杞璇涓鏍鳳紝ICE鍙浠ラ氳繃Register鏉ョ粰鏈嶅姟鍋氳礋杞藉潎琛
涔熷洜涓篒CE鎻愪緵鐨勮繖浜涚幆澧冨彲浠ヤ嬌鐨処CE緙栧啓鐨勬湇鍔¤兘鏂逛究鐨勯儴緗插拰鍙戝竷銆

『叄』 Java有哪些相關書籍

Concurrency Practice in Java
又一部 約書亞·布洛克 大神的經典之作,當然本書的另一位主作者為 Doug Lea(影響兩次Java歷史上的大變革的大神)。這本書幾乎就是Java並發和多線程編程方面的權威,同時也是核心Java開發人員必讀的一本書。本書的強大主要表現在
Head First Java
Head First Java是所有編程或者Java初學者最適合的書籍,我很喜歡輕松和寓教於樂的Head First風格,這應該是最有意思的關於Java的書
Head First 設計模式
Head First設計模式又是一部Head First系列的書籍。作者為Kathy Sierra及其團隊。當我在2006年開始讀這本書的時候,我對設計模式並不是很了解。設計模式解決什麼問題,怎麼解決問題,如何使用設計模式,設計模式有什麼好處,這些問題我幾乎都無法回答出來。

『肆』 基於ICE的PHP與java間的通信

PHP與JAVA融合的開發環境

一.系統環境

1.初始安裝

防火牆開放介面:21,22,80,2401,8009,10000,eth0
Redhat linux 9.0
Development Tools

Network Servers
VSFtp
CVS-1.11.2-10
Mysql 3.23.54

2.包安裝

JDK 1.5
下載地址:http://www.netshine.com.cn/linux/j2sdk-1_4_2_04-linux-i586.rpm

Tomcat 5.0.19
下載地址:http://www.netshine.com.cn/linux/jakarta-tomcat-5.0.19.tar.gz

3.腳本安裝

Webmin 1.110
下載地址:http://www.netshine.com.cn/linux/webmin-1.110.tar.gz

ZendOptimizer 2.5.1
下載地址:http://www.netshine.com.cn/linux/ZendOptimizer-2.5.1-Linux_glibc21-i386.tar.gz

4.手工編譯

Apache 2.0.49
下載地址:http://www.netshine.com.cn/linux/httpd-2.0.49.tar.gz

PHP 4.3.5
下載地址:http://www.netshine.com.cn/linux/php-4.3.5.tar.gz
JK 2-2.0.4
下載地址:http://www.netshine.com.cn/linux/jakarta-tomcat-connectors-jk2-src-current.tar.gz

5.客戶機環境

Windows XP Professional
Absolute Telnet 3.0
Zend Encoder
Macromedia Dreamweaver MX 2004
Borland JBuilder 9 Enterprise
WinCVS 1.3
下載地址:http://www.netshine.com.cn/linux/WinCvs13b17.zip

二.系統安裝

啟動Linux安裝光碟,安裝基本系統:FTP、開發工具和MySQL3.23.54。如果你是手工編譯安裝MySQL,要記得以後在編譯PHP等程序時要指明MySQL的具體路徑,否則會因找不到路徑而導致編譯出錯。

三.安裝webmin1.110

用Webmin來配置系統,傻瓜化,可以節省不少力氣,所以一般我都先安裝它。安裝過程很簡單,執行setup.sh腳本後照提示一步一步來就可以了。

# cd webmin*
# ./setup.sh

四.安裝JDK1.5

1.編輯如下三個文件,沒有指明全路徑的放在你自己的home目錄就可以。

/etc/profile
JAVA_HOME=/usr/java/j2sdk1.4.2_04
CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
CVSROOT=/usr/local/cvsroot
PATH=.:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export JAVA_HOME CLASSPATH CVSROOT PATH

/etc/ld.so.conf
/usr/java/j2sdk1.4.2_04/jre/lib/i386
/usr/java/j2sdk1.4.2_04/jre/lib/i386/server

HelloWorld.java
class HelloWorld
{
public static void main(String[] args)
{
//本文件測試Java環境是否安裝成功。
System.out.println("Hello World!");
}
}

2.執行以下命令:

# rpm -ivh j2sdk*.rpm //安裝JDK包。
# source /etc/profile //重載profile環境。
# ldconfig //創建動態鏈接庫緩存文件。
# javac -d . HelloWorld.java //編譯測試文件。
# java HelloWorld //運行程序測試安裝是否成功。

五.安裝Apache

# tar xvzf httpd* //解壓源碼包。
# cd httpd* //進入安裝目錄。
# ./configure --prefix=/usr/local/apache --enable-so --enable-mods-shared=most --enable-rewrite
# make;make install //編譯並安裝。

說明:

--enable-so選項:讓Apache可以支持DSO模式,注意,我們在這里採用的是Apache2.0的語法。如果你的Apache是1.3版本,應改為--enable-mole=so。

--enable-mods-shared=most選項:告訴編譯器將所有標准模塊都編譯為DSO模塊。你要是用的是Apache1.3,改為--enable-shared=max就可以。

--enable-rewrite選項:支持地址重寫功能,使用1.3版本的朋友請將它改為--enable-mole=rewrite。

六.編譯安裝PHP

1.執行命令

#tar xvzf php* //解壓源碼包
#cd php* //進入PHP安裝命令
#./configure --prefix=/usr/local/php --with-mysql --with-apxs2=/usr/local
/apache/bin/apxs --with-java=/usr/java/j2sdk1.4.2_04
#make;make install //編譯並安裝
#cp php.ini-dist /usr/local/php/lib/php.ini //復制php配置文件
#cd /usr/local/php/lib/php/extensions/no-debug-non-zts-20020429 //extensions目錄
#ln -s java.so libphp_java.so //建立連接,忘記了會出錯哦
#cd Zend* //進入ZendOptimizer目錄
#./install //安裝PHP加速器

說明:

--with-apxs2=/usr/local/apache/bin/apxs是Apache2的語法,1.3版本的用戶請使用--with-apxs=/usr/local/apache/bin/apxs。

2.編輯下面三個文件

/usr/local/apache/conf/httpd.conf
LoadMole php4_mole moles/libphp4.so

AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

AddDefaultCharset gb2312

/usr/local/apache/htdocs/test.php
<?php
//本程序測試PHP的JAVA環境是否可用,
代碼是從http://www.php.net/manual/en/ref.java.php摘錄下來的。

// get instance of Java class java.lang.System in PHP
$system = new Java('java.lang.System');

// demonstrate property access
echo 'Java version=' . $system->getProperty('java.version') . '<br />';
echo 'Java vendor=' . $system->getProperty('java.vendor') . '<br />';
echo 'OS=' . $system->getProperty('os.name') . ' ' .
$system->getProperty('os.version') . ' on ' .
$system->getProperty('os.arch') . ' <br />';

// java.util.Date example
$formatter = new Java('java.text.SimpleDateFormat',
"EEEE, MMMM dd, yyyy 'at' h:mm:ss a zzzz");

echo $formatter->format(new Java('java.util.Date'));
?>

/usr/local/php/lib/php.ini
register_globals=On
[Java]
java.class.path=/usr/local/php/lib/php/php_java.jar:/home/jim/myclass
java.home=/usr/java/j2sdk1.4.2_04
java.library=/usr/java/j2sdk1.4.2_04/jre/lib/i386/libjava.so
java.library.path=/usr/local/php/lib/php/extensions/no-debug-non-zts-20020429
extension_dir=/usr/local/php/lib/php/extensions/no-debug-non-zts-20020429
extension=libphp_java.so

注意:

(1).如果你剛剛從以前老版本的PHP轉換到新版本,可能會發現你的PHP程序很多都不能用了。別緊張!把register_globals打開就一切正常啦!這是因為老版本的PHP,它的register_globals默認是開著的,而新版本,卻把它關了的緣故。

(2)./home/jim/myclass是我存放JAVA組件的路徑,你可以根據實際情況修改,但是為了安全起見,可不要放在web目錄下哦。

熱點內容
渲染器伺服器ip一定嗎 發布:2024-11-28 18:44:38 瀏覽:648
光遇的伺服器老是爆滿怎麼辦 發布:2024-11-28 18:41:10 瀏覽:714
sql最大日期的記錄 發布:2024-11-28 18:35:35 瀏覽:716
數據伺服器和電腦如何連接 發布:2024-11-28 18:06:49 瀏覽:745
怎麼讓編譯器輸出的字元相隔單位 發布:2024-11-28 18:04:25 瀏覽:524
w7電腦如何顯示配置 發布:2024-11-28 18:01:35 瀏覽:116
智通編譯股票股東 發布:2024-11-28 17:51:56 瀏覽:731
恥辱2低配置怎麼設置 發布:2024-11-28 17:51:50 瀏覽:92
王水是用什麼配置的 發布:2024-11-28 17:43:59 瀏覽:621
編程貓簡 發布:2024-11-28 17:30:20 瀏覽:163