cari
Rumahpembangunan bahagian belakangtutorial phpPHP和Java强强联合 PHP与Java集成开发详解(1)_PHP教程

PHP和Java强强联合 PHP与Java集成开发详解(1)_PHP教程

Jul 15, 2016 pm 01:25 PM
javaphpatasandandanPenjelasan terperinciPembangunan bersepadu

【php100独家特稿】很久以前,有人从www上看到看到天空上一个很亮的亮点,它就是Java语言,与此同时,在另一个地方一位梦想家也看到了一个亮点,它就是PHP。

时间一天天过去,这两个亮点也变得越来越亮,很快,它们受到了编程者的喜欢,于是有人有疑问了:要是它们两者相遇,会发生什么事情?有没有可能将它们的强项结合在一起呢?

尝试在PHP和Java之间搭建一座桥梁,利用这座桥梁在这两个实体之间建立起一个沟通渠道,在这座桥梁的帮助下,你可以在Java中开发类,然后在PHP中调用它们的方法,同样,在你的Java桌面或Web应用程序中也可以使用PHP脚本。

在这篇文章中,你将会学到如何:

◆安装和配置PHP/Java桥

◆在PHP脚本中使用Java类

◆在Java类中使用PHP脚本

◆在JSP页面中使用PHP脚本

那我们开始吧!

安装和配置PHP/Java桥

最新的PHP/Java桥zip包可在http://sourceforge.net/projects/php-java-bridge/下载到,安装过程依赖于选择哪个Java平台通过这座桥与PHP脚本交互。

◆对于J2SE,安装非常简单:

◆安装J2SE 1.6或更高版本

◆安装PHP 5.1.4或更高版本

◆解压php-java-bridge_5.2.2_j2ee.zip包

从命令提示符进入刚刚解压后的目录,输入:

?>java ?classpath JavaBridge.war TestInstallation

在这个文件夹下,你应该看到一个ext目录,它下面包括四个.jar文件,拷贝其中的JavaBridge.jar 和php-script.jar到你的J2SE安装目录下的ext文件夹(通常是{JAVA_HOME}/jre/lib/ext)。

对于J2EE,要执行下列安装步骤:

将JavaBridge.war文件拷贝到你的J2EE服务器或servlet引擎(Tomcat,Resin等)下的auto_deploy文件夹。

根据你的应用程序重命名该文件,然后重启J2EE服务器,等待自动部署进程创建与该.war文件相关的目录,在这个例子中,这个应用程序叫做appName.war。

从浏览器测试新的应用程序,输入:http://localhost:8080/appName,然后点击test.php。

如果你的J2EE服务器运行在不同的主机和端口好,参数要做相应的修改。

注意:如果你想在Apache或IIS上运行J2EE/PHP应用程序,将包括appName的目录拷贝到Apache/IIS的文档根目录下。

在PHP脚本中使用Java类

首先,你必须要知道PHP/Java桥为在PHP脚本中集成Java类创建了哪些特殊的函数(PHP类),这些函数包括:

◆java:它允许你访问给定名称的Java类型,如:

◆java("java.lang.System")->getProperties();

◆java_autoload:它允许你在当前的PHP脚本中载入一套Java库,如:

◆java_autoload("my_1.jar;my_2.jar");

◆java_cast:它允许你将一个Java对象转换成一个PHP值,如:

$mystr=new java("java.lang.String","9");$phpnr=java_cast($mystr,"integer");echo $ phpnr;

◆java_is_null:你可以使用它检查值是否为空,如:

◆java_is_null(java("java.lang.System")->;getProperty("my_prop"))

◆java_session:你可以使用它返回一个会话句柄,如:

$session = java_session();

◆java_values:你可以使用它评估对象和提取其内容(仅当这个操作是可能的时候),如:

$result = java_values($calcinstance->addAB($term_1,$term_2));

为了使用这些函数,你的PHP应用程序必须包含对应的PHP类,最重要的类是Java.inc,在目录appName/java下有完整的类列表,通过Java.inc,你可以获得Java类的实例,如:

$calcinstance=new Java("calculator.CalculatorBean");

提醒:在PHP/Java桥的安装目录/documentation/API下有更多的函数和它们的详细信息。在PHP脚本中使用Java类

在Java类中使用PHP脚本

为了在Java应用程序中调用PHP方法,你必须对Java API非常熟悉,这个API最重要的类是:

javax.script.ScriptEngineManager:这个类扩展了java.lang.Object类,并且为ScriptEngine类提供了实例化机制。

javax.script.ScriptEngine:这是一个Java接口,包括了每个Java ScriptEngine中期望的完整功能的函数,它是通过如AbstractScriptEngine, InteractivePhpScriptEngine, InvocablePhpScriptEngine, InvocablePhpServletScriptEngine, PhpScriptEngine,和 PhpServletScriptEngine这些类实现的。

javax.script.Invocable:这个接口提供了一个函数允许java应用程序在脚本编译器下调用中间层代码。

提醒:在/documentation/server/documentation/API目录下有更多的类及其详细信息。

1

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/446693.htmlTechArticle【php100独家特稿】很久以前,有人从www上看到看到天空上一个很亮的亮点,它就是Java语言,与此同时,在另一个地方一位梦想家也看到了一...
Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Bagaimanakah anda dapat mencegah serangan penetapan sesi?Bagaimanakah anda dapat mencegah serangan penetapan sesi?Apr 28, 2025 am 12:25 AM

Kaedah yang berkesan untuk mengelakkan serangan tetap sesi termasuk: 1. Meningkatkan semula ID Sesi selepas log pengguna masuk; 2. Gunakan algoritma penjanaan ID sesi yang selamat; 3. Melaksanakan mekanisme masa tamat sesi; 4. Menyulitkan data sesi menggunakan HTTPS. Langkah -langkah ini dapat memastikan bahawa aplikasi itu tidak dapat dihancurkan apabila menghadapi serangan tetap sesi.

Bagaimana anda melaksanakan pengesahan tanpa sesi?Bagaimana anda melaksanakan pengesahan tanpa sesi?Apr 28, 2025 am 12:24 AM

Melaksanakan pengesahan bebas sesi boleh dicapai dengan menggunakan JSONWEBTOKENS (JWT), sistem pengesahan berasaskan token di mana semua maklumat yang diperlukan disimpan dalam token tanpa penyimpanan sesi pelayan. 1) Gunakan JWT untuk menjana dan mengesahkan token, 2) memastikan bahawa HTTPS digunakan untuk mengelakkan token daripada dipintas, 3) menyimpan token dengan selamat di sisi klien, 4) mengesahkan token di sisi pelayan untuk mengelakkan gangguan, 5) melaksanakan mekanisme pembatalan token.

Apakah beberapa risiko keselamatan biasa yang berkaitan dengan sesi PHP?Apakah beberapa risiko keselamatan biasa yang berkaitan dengan sesi PHP?Apr 28, 2025 am 12:24 AM

Risiko keselamatan sesi PHP terutamanya termasuk rampasan sesi, penetapan sesi, ramalan sesi dan keracunan sesi. 1. Sesi rampasan boleh dicegah dengan menggunakan HTTPS dan melindungi kuki. 2. Penetapan sesi boleh dielakkan dengan menanam semula ID sesi sebelum log pengguna masuk. 4. Keracunan sesi boleh dicegah dengan mengesahkan dan menapis data sesi.

Bagaimana anda memusnahkan sesi PHP?Bagaimana anda memusnahkan sesi PHP?Apr 28, 2025 am 12:16 AM

Untuk memusnahkan sesi PHP, anda perlu memulakan sesi terlebih dahulu, kemudian membersihkan data dan memusnahkan fail sesi. 1. Gunakan session_start () untuk memulakan sesi. 2. Gunakan session_unset () untuk membersihkan data sesi. 3. Akhirnya, gunakan session_destroy () untuk memusnahkan fail sesi untuk memastikan keselamatan data dan pelepasan sumber.

Bagaimanakah anda boleh menukar sesi simpan sesi lalai di php?Bagaimanakah anda boleh menukar sesi simpan sesi lalai di php?Apr 28, 2025 am 12:12 AM

Bagaimana cara menukar laluan penjimatan sesi lalai PHP? Ia boleh dicapai melalui langkah -langkah berikut: gunakan session_save_path ('/var/www/sesi'); session_start (); Dalam skrip PHP untuk menetapkan laluan penjimatan sesi. Tetapkan session.save_path = "/var/www/sesi" dalam fail php.ini untuk menukar laluan penjimatan sesi di seluruh dunia. Gunakan memcached atau redis untuk menyimpan data sesi, seperti ini_set ('session.save_handler', 'memcached'); ini_set (

Bagaimana anda mengubah suai data yang disimpan dalam sesi PHP?Bagaimana anda mengubah suai data yang disimpan dalam sesi PHP?Apr 27, 2025 am 12:23 AM

Tomodififydatainaphpsession, startTheSessionWithSsion_start (), thenuse $ _SessionToset, Modify, Orremovariables.1) startTheSession.2) setOrmodifySessionVariabelinging $ _Session.3) ReveVariablesWithunset ()

Berikan contoh menyimpan array dalam sesi PHP.Berikan contoh menyimpan array dalam sesi PHP.Apr 27, 2025 am 12:20 AM

Array boleh disimpan dalam sesi PHP. 1. Mulakan sesi dan gunakan session_start (). 2. Buat array dan simpan dalam $ _Session. 3. Dapatkan array melalui $ _Session. 4. Mengoptimumkan data sesi untuk meningkatkan prestasi.

Bagaimanakah pengumpulan sampah berfungsi untuk sesi PHP?Bagaimanakah pengumpulan sampah berfungsi untuk sesi PHP?Apr 27, 2025 am 12:19 AM

Pengumpulan sampah sesi PHP dicetuskan melalui mekanisme kebarangkalian untuk membersihkan data sesi yang telah tamat tempoh. 1) Tetapkan kebarangkalian pencetus dan kitaran hayat sesi dalam fail konfigurasi; 2) Anda boleh menggunakan tugas cron untuk mengoptimumkan aplikasi beban tinggi; 3) Anda perlu mengimbangi kekerapan dan prestasi pengumpulan sampah untuk mengelakkan kehilangan data.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

SublimeText3 versi Inggeris

SublimeText3 versi Inggeris

Disyorkan: Versi Win, menyokong gesaan kod!

MantisBT

MantisBT

Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

DVWA

DVWA

Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

SecLists

SecLists

SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.