`
cppmule
  • 浏览: 447221 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

php和java的混合型项目建立手记

    博客分类:
  • php
 
阅读更多


创业公司参与项目的人口众多、背景不一,目前市场上的主流方向为php与java,很多时候java工程师恨铁不成钢,php工程师也无可奈何。于是便有了此文,讲述如何使用quercus创建php java混合型项目。

quercus是什么?
quercus是Caucho公司针对php语言的java实现,100%完成了php5的解析。是resin内建支持的功能。同时,因为使用了resin,使得php可以很容易得到连接池、分布式session、负载均衡等功能。使用resin的php项目可以更加安全,不存在很多fastcgi的问题。

性能如何?
官方:用mediawiki与drupal来做实验,要比mod_php快4倍。
有一个编译选项,在resin专业版里支持,可以把php转成java class,得到更高性能。

新建一个java项目混合php项目
web.xml是关键,里面声明了*.php文件的访问都以com.caucho.quercus.servlet.QuercusServlet来执行。

  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  3.     xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"  
  4.     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"  
  5.     id="WebApp_ID" version="2.5">  
  6.     <display-name>testquercus</display-name>  
  7.     <welcome-file-list>  
  8.         <welcome-file>index.html</welcome-file>  
  9.         <welcome-file>index.php</welcome-file>  
  10.     </welcome-file-list>  
  11.     <servlet>  
  12.         <servlet-name>Quercus Servlet</servlet-name>  
  13.         <servlet-class>com.caucho.quercus.servlet.QuercusServlet</servlet-class>   
  14.     </servlet>  
  15.     <servlet-mapping>  
  16.         <servlet-name>Quercus Servlet</servlet-name>  
  17.         <url-pattern>*.php</url-pattern>  
  18.     </servlet-mapping>   
  19. </web-app>  

所有的php文件放在webapp下,所有的java文件还放到java目录里。

如何混合java到php中?
在java目录新建类Test54Chen,生成后位置:
WEB-INF/classes/com/chen/FrameWork.class

  1. /** 
  2.  * @author 54chen(陈臻) [chenzhen@xiaomi.com czhttp@gmail.com] 
  3.  * @since 2011-10-25 下午08:40:49 
  4.  */  
  5. package com.chen;  
  6.   
  7. public class FrameWork {  
  8.     public String go(String who) {  
  9.         return who + " gogogo!";  
  10.     }  
  11. }  

在webapp新建php文件:
test.php

  1. <?php  
  2. import com.chen.FrameWork;  
  3. $f = new FrameWork();  
  4. var_dump($f->go("ohohoh"));  
  5. ?>  

配置到resin中:
目标文件夹指到webapp。

访问:test.php

截图:
1.整个项目的情况
quercus
2.访问的结果
quercus php java

分享到:
评论

相关推荐

    IT项目经理成长手记

    IT项目经理成长手记IT项目经理成长手记IT项目经理成长手记IT项目经理成长手记IT项目经理成长手记

    IT项目经理成长手记——来自项目第一线的管理经验和实用工具分享

    IT项目经理成长手记PDF 潘东_韩秋泉著 来自项目第一线的管理经验和实用工具 机械工业出版社 2013年1月第1次印刷 完整版,含全部书签目录 非常不错的资源 整本书以亲身经历的故事穿插理论知识的写法,很容易让人...

    IT项目经理成长手记PDF

    IT项目经理成长手记PDF,非常不错的资源

    IT项目经理成长手记.zip

    总的来说,《IT项目经理成长手记》是一本全面、实用的参考书籍,无论你是刚踏入IT项目管理领域的新人,还是已经在该领域有一定经验的专业人士,都能从中获得宝贵的洞见和启示,助力你的职业发展。

    IT项目经理成长手记 kindle

    IT项目 经理成长手记 kindle电子书 IT项目 经理成长手记 kindle电子书

    P道理-ERP项目实施手记

    P道理 ERP项目实施手记北京市:清华大学出版社_2011.10_童继龙,童继明著的pdf文档,共享,欢迎下载

    IT项目经理成长手记 潘东

    《IT项目经理成长手记 潘东》这本书深入浅出地揭示了软件项目管理的精髓,作者通过虚拟角色小M的视角,展示了项目经理在实际工作中可能遭遇的各种挑战和解决之道。书中不仅涵盖了PMBOK(项目管理知识体系指南)中的...

    《IT项目经理成长手记.pdf》

    项目管理实践经验; 行文特点通俗直接,脉络清晰; 大量的图标,易懂。

    P道理 ERP项目实施手记.童继龙,童继明著.pdf

    P道理 ERP项目实施手记.童继龙,童继明著.pdf 个人收集电子书,仅用学习使用,不可用于商业用途,如有版权问题,请联系删除!

    专题资料(2021-2022年)IT项目经理成长手记.doc

    《IT项目经理成长手记》是一本专为IT行业项目经理及有志于此领域发展的专业人士准备的实战指南。本书通过虚拟人物小M的成长经历,系统性地讲述了项目管理的实践技巧和经验教训,旨在帮助读者理解并掌握项目管理的...

    php程序员菜鸟成长手记——php入门教程

    语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。 - **特点**: - 开放源代码:免费且可自由修改。 - 跨平台:支持多种操作系统,如Windows、Linux等。 - 易于学习:语法简单,...

    8种Java Web框架安装手记及HelloWorld

    在Eclipse中使用GPE创建GWT项目,配置web.xml和GWTLearning.html,编写Java代码,并运行Web Application,浏览器会下载GWT运行所需的插件。 3. **JSF (JavaServer Faces)** JSF是Java EE的一部分,用于构建用户...

    基于Java语言开发的晨昏手记SSM在线日记本设计源码

    该项目是一款基于Java语言的晨昏手记SSM在线日记本设计源码,包含45个文件,其中Java源文件34个,XML配置文件6个,属性文件2个,Git忽略文件1个,Markdown文件1个,以及SQL脚本文件1个。

    php程序员菜鸟成长手记 php入门教程 pdf

    - **开源免费**:PHP是开源项目,可以免费使用和修改源代码。 - **易学易用**:PHP语法简单,易于学习,对于初学者来说,上手速度较快。 - **强大的功能**:PHP提供了丰富的内置函数库,可以轻松完成各种复杂的任务...

    Aspnet Mvc 前后端分离项目手记(四)vue项目的….docx

    ASP.NET Mvc 前后端分离项目手记(四)Vue 项目的创建 本文档记录了使用 Vue 框架创建 ASP.NET Mvc 前后端分离项目的过程,包括使用 Vue-cli 创建项目、配置文件的解释、项目结构的介绍等。 一、创建 Vue 项目 ...

    P道理 ERP项目实施手记.童继龙,童继明著.

    《P道理:ERP项目实施手记》从不同层面说明了如何确保ERP项目的成功实施。这是一本以实际工作案例和工作经验为基础的书籍,从三个层面展开论述:一开始着力从ERP项目相关的人(People)展开论述,说明了企业经营决策...

Global site tag (gtag.js) - Google Analytics