龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 操作系统 > LINUX系统 >

JSP、PHP与JAVA融合的开发环境(一)

时间:2011-03-20 22:37来源:未知 作者:admin 点击:
分享到:
前言 本文介绍了融JSP、PHP和JAVA于一炉的开发环境的建立,为了适合大多数初学者的需求,很多步骤都是采用比较方便的办法,力求简单明了。一般来说,没有特别需求的软件,我都是

  前言

  本文介绍了融JSP、PHP和JAVA于一炉的开发环境的建立,为了适合大多数初学者的需求,很多步骤都是采用比较方便的办法,力求简单明了。一般来说,没有特别需求的软件,我都是采用RPM的方式安装。如果你有优化配置、安全考虑等特殊需求,请参考相关的文章进行配置。

  

  在本文中,Apache以DSO模式安装,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.4.2_04

  下载地址: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.4.2

  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-module=so。

  

  --enable-mods-shared=most选项:告诉编译器将所有标准模块都编译为DSO模块。你要是用的是Apache1.3,改为--enable-shared=max就可以。

  

  --enable-rewrite选项:支持地址重写功能,使用1.3版本的朋友请将它改为--enable-module=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

  LoadModule php4_module modules/libphp4.so

  

  AddType application/x-httpd-php .php

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

  

  AddDefaultCharset gb2312

  

  /usr/local/apache/htdocs/test.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') . '

';

  echo 'Java vendor=' . $system->getProperty('java.vendor') . '

';

  echo 'OS=' . $system->getProperty('os.name') . ' ' .

  $system->getProperty('os.version') . ' on ' .

  $system->getProperty('os.arch') . '

';

  

  // 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目录下哦。

  

  

精彩图集

赞助商链接