Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 网站建设 > PHP > 初试JavaBridge
【标  题】:初试JavaBridge
【关键字】:JavaBridge
【来  源】:http://www.cublog.cn/u/14321/showart.php?id=116191

初试JavaBridge

Your Ad Here

一、安装
1、安装j2re,1.4.2以上版本
2、下载并解压php-java-bridge-3.0.8_j2ee
3、复制java-x86-windows.dll和JavaBridge.jar到extension_dir目录,
4、修改php.ini加载java-x86-windows.dll
 extension = java-x86-windows.dll
5、配置php.ini的java段
    [java]
    java.java        = c:/jdk1.5/jre/bin/java
    java.java_home   = c:/jdk1.5  #jdk主目录
    java.log_level   = 2
    java.log_file    = c:/jdk1.5/log.txt
    java.classpath   = c:/php/ext/JavaBridge.jar
 #如果使用servlet,还有host等配置,
 二、一些关键方法
new Java("CLASSNAME"): 引用并生成一个类实例,返回该实例
例:

$v = new Java("java.util.Vector");

$v->add($buf=new Java("java.lang.StringBuffer"));

$buf->append("100");

echo (int)($v->elementAt(0)->toString()) + 2;
 

new JavaClass("CLASSNAME"): 引用一个类,但不创建实例.


$Object = new JavaClass("java.lang.Object");

$obj = $Object->newInstance();

$Thread = new JavaClass("java.lang.Thread");

$Thread->sleep(10);
 


java_require("JAR1;JAR2"): 包含jar包,建议这些包放在ext/lib下
例:

java_require("kawa.jar"); //会在extendsion_dir下查找
java_require("http://localhost/kawa.jar");

 

java_values(JAVA_OBJECT): 获得java对象的值


$str = new java("java.lang.String", "hello");

echo $str; //out=> [o(String):"hello"]

echo (java_values($str));//out=> hello
 

JavaException: java异
try {
  new java("java.lang.String", null);
} catch(JavaException $ex) {
   $trace = new java("java.io.ByteArrayOutputStream");
   $ex->printStackTrace(new java("java.io.PrintStream", $trace));
   print "java stack trace: $trace\n";
}

foreach(COLLECTION): 对 java.util.Collection 或 java.util.Map循环
例:

$conversion = new java("java.util.Properties");
$conversion->put("name", "tim wong");
$conversion->put("birthday", "19771020");
foreach ($conversion as $key=>$value)
   echo "$key => $value\n";

也可以使用下标直接访问

$Array = new JavaClass("java.lang.reflect.Array");
$String = new JavaClass("java.lang.String");
$entries = $Array->newInstance($String, 3);
$entries[0] ="Jakob der Lügner, Jurek Becker 1937--1997";
$entries[1] ="Mutmassungen über Jakob, Uwe Johnson, 1934--1984";
$entries[2] ="Die Blechtrommel, Günter Grass, 1927--";
for ($i = 0; $i < $Array->getLength($entries); $i++) {
   echo "$i: " . $entries[$i] ."\n";
}

 

使用 eAccelerator加速PHP代码:【上一篇】
MPlayer向ARM平台移植(转):【下一篇】
【相关文章】
没有相关文章
【随机文章】
  • 巧截字符串(探讨用InStrRev函数配合Right/Left函数截取字符串)
  • Pinczakko的AwardBIOS逆向工程指导
  • 硬盘数据丢失后的解决方法
  • PL/SQL的一些语法
  • CodeProject上的最近几篇关于IronPython技术的文章
  • 用VC++ 6.0制作网络自动测试程序
  • C#锐利体验(5.1)
  • AMD64处理器编号规则
  • 我学php从自动摇奖系统开始…
  • 如何用Win XP自带“磁盘管理”进行分区操作
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.