纯java PHP引擎——Quercus
由于公司项目的需要,最经在研究Quercus一个纯java的php引擎。项目这两个需要做的就是将该引擎裁剪,做一个相对安全的版本,提供给ISV使用,同时,在引擎中提供默认的接口供调用。所以先研究了一下,在Quercus引擎的支持下,PHP如何与java集成。
以下是学习到的几点:
1、如果使用 Resin-IoC/WebBeans来组织应用的服务到脚本中,那么脚本中就可以直接获取到配置的服务的单例实例的引用,使用方式如下
<?php
$demo_manager = java_bean("DemoeManager");
$demo = $demo_manager->findData("demoId");
foreach ($demo->getDatas() as $data) {
echo $data . "\n";
}
?>
2、另外一种可以通过new Java()方式,以class完整名称以及构造函数参数作为参数来生成对应的java 对象,例如
<?php
$a = new Java("java.util.Date", 123);
echo $a->time;
?>
3、Quercus还支持,类似于java 的引用方式,即,在PHP中使用import语句引入class,使用new关键字来创建对象。
<?php
import java.util.Date;
$a = new Date(123);
echo $a->time;
?>
如果是使用Resin框架,会自动加载 WEB-INF/classes/classname.php中配置的的class。
4、在Quercus中,PHP的语法用于激活java对象的方法,下面说明一下通常的方法调用和属性的get和set
<?php
import java.util.Date;
$a = new Date(123);
echo $a->getTime(); # calls getTime()
echo $a->setTime(456); # calls setTime(456)
echo $a->time; # calls getTime()
$a->time = 456; # calls setTime(456)
?>
5、在Quercus中,java类被引入了,静态方式和静态属性是可以访问的
<?php
import java.util.Calendar;
$calendar = Calendar::getInstance();
var_dump($calendar);
?>
或者使用new java_class()方式获得class对象
<?php
$class = java_class("java.lang.System");
# System.in
$in = $class->in;
# System.currentTimeInMillis();
$time = $class->currentTimeInMillis();
?>
6、关于java对象中的方法重载问题,PHP本身是不支持函数重载的,对参数个数的重载支持得还不错,但是参数个数相同,参数类型不同的重载
支持得就不太好了。我觉得是由于PHP本身所类型有关。比如下面的定义的java类
import com.caucho.quercus.module.Abs
相关文档:
public static boolean isCheckN(String pInput) {
String regEx = "^[0-9]+$";
Pattern p = Pattern.compile(regEx);
Matcher m = p.matcher(pInput);
......
今天从同学们那里搞了两个翻墙软件,一个是无界,一个是自由门,刚听到翻墙软件大家一定很迷糊吧,我也是刚知道有这种东西,听说用这种软件可以访问一些被国家禁止访问的网站,确切的说就是一种代理机制,大家不要多想,我弄这个东西没别的目的,动机是很单纯的,就是想看一看全球最大的视频 ......
JAVA调用MYSQL存储过程
工程视图:
代码清单:
myconn.java
package org.apache.sh_mysql.test;
import java.sql.*;
public class MyConn {
private static final String DRIVER = "com.mysql.jdbc.Driver";
private static final String URL = "jdbc:mysql://localhost/test?useUnicode=true&characterEn ......
本文提供了20个非常有用的PHP类库的名称和下载地址。这20个PHP类库包含了图标库,RSS解析,缩略图生成,支付,OpenID,数据库抽 象,PDF生成器等一系列功能。
下面是一些非常有用的PHP类库,相信一定可以为你的WEB开发提供更好和更为快速的方法。
图表库
下面的类库可以让你很简的创建复杂的图表和图片。当然,它们需要G ......
我也是一ASP转PHP的初学者,我这里有一好的网站拿来与大家一起分享,希望大家会喜欢!
http://www.w3school.com.cn/
也还有一些好的视频也拿来与大家一起分享!
http://hi.baidu.com/ylinuxs/blog/item/4433d3354a58fed1a2cc2b26.html ......