PHPRPC 简略示例
PHPRPC 简单示例
PHPRPC是一个轻型的、安全的、跨网际的、跨语言的、跨平台的、跨环境的、跨域的、支持复杂对象传输的、支持引用参数传递的、支持内容输出重定向的、支持分级错误处理的、支持会话的、面向服务的高性能远程过程调用协议。
官方主页:http://www.phprpc.org/zh_CN/
官方网站有比较详尽的各种版本的使用介绍,上手还是比较快的。以下给出我的一个demo示例,从看文档到开发第一demo用了30分钟左右。
我使用的是java版本,前面的安装步骤不在重述了,看官方文档。
1.编写Service接口及实现类
public interface ServiceI { public String say(String name); public Errors showError(String info); }
public class FirstService implements ServiceI{ @Override public String say(String name) { String res = "Hello, "+name+" from PHPRPC"; return res; } public Errors showError(String info){ Errors er = null; er = new Errors(); er.setId("1111"); er.setMsg("phprpc make error:"+info); return er; } }
public class Errors implements Serializable{ private String id; private String msg; public Errors(){} public String getId() { return id; } public void setId(String id) { this.id = id; } public String getMsg() { return msg; } public void setMsg(String msg) { this.msg = msg; } }
2.通过Servlet发布服务
public class PhprpcGloabService extends HttpServlet { @Override protected void service(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { [b]PHPRPC_Server server = new PHPRPC_Server(); FirstService first = new FirstService(); server.add(first); server.start(req, res);[/b] } }
配置web.xml文件,将要发布的服务都置于rpcservice空间下
<!-- PHPRPC Web service发布 --> <servlet> <servlet-name>GloabService</servlet-name> <servlet-class> com.smartcoms.service.PhprpcGloabService </servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>GloabService</servlet-name> <url-pattern>/rpcservice/*</url-pattern> </servlet-mapping>
服务发布完毕!
3、编写客户端程序
我以jsp页面做客户端访问Service
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Phprpc 调试</title>
PHPRPC使用起来还是很简单的,可以实现快速Web Service应用。其它方面,还有待在更多的应用环境下实施和评估。

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Ramai pengguna akan memilih jenama Huawei apabila memilih jam tangan pintar Antaranya, Huawei GT3pro dan GT4 adalah pilihan yang sangat popular. Apakah perbezaan antara Huawei GT3pro dan GT4? 1. Rupa GT4: 46mm dan 41mm, bahan cermin kaca + badan keluli tahan karat + cangkang belakang gentian resolusi tinggi. GT3pro: 46.6mm dan 42.9mm, bahannya ialah kaca nilam + badan titanium/badan seramik + cangkerang belakang seramik 2. GT4 yang sihat: Menggunakan algoritma Huawei Truseen5.5+ terkini, hasilnya akan lebih tepat. GT3pro: Penambahan elektrokardiogram ECG dan saluran darah serta keselamatan

Tukar jenis data asas kepada rentetan menggunakan fungsi String.valueOf() Java Dalam pembangunan Java, apabila kita perlu menukar jenis data asas kepada rentetan, kaedah biasa ialah menggunakan fungsi valueOf() kelas String. Fungsi ini boleh menerima parameter jenis data asas dan mengembalikan perwakilan rentetan yang sepadan. Dalam artikel ini, kami akan meneroka cara menggunakan fungsi String.valueOf() untuk penukaran jenis data asas dan menyediakan beberapa contoh kod untuk

Kaedah menukar tatasusunan char kepada rentetan: Ia boleh dicapai dengan penugasan Gunakan sintaks {char a[]=" abc d\0efg ";string s=a;} untuk membenarkan tatasusunan char terus memberikan nilai kepada rentetan, dan laksanakan. kod untuk melengkapkan penukaran.

Mengapa Alat Snipping Tidak Berfungsi pada Windows 11 Memahami punca masalah boleh membantu mencari penyelesaian yang betul. Berikut ialah sebab utama Alat Snipping mungkin tidak berfungsi dengan betul: Focus Assistant dihidupkan: Ini menghalang Snipping Tool daripada dibuka. Aplikasi rosak: Jika alat snipping ranap semasa pelancaran, ia mungkin rosak. Pemacu grafik lapuk: Pemacu yang tidak serasi mungkin mengganggu alat snipping. Gangguan daripada aplikasi lain: Aplikasi lain yang sedang berjalan mungkin bercanggah dengan Alat Snipping. Sijil telah tamat tempoh: Ralat semasa proses naik taraf boleh menyebabkan penyelesaian mudah ini sesuai untuk kebanyakan pengguna dan tidak memerlukan sebarang pengetahuan teknikal khusus. 1. Kemas kini apl Windows dan Microsoft Store

Kitaran hayat Servlet merujuk kepada keseluruhan proses daripada penciptaan kepada pemusnahan servlet, yang boleh dibahagikan kepada tiga peringkat: 1. Peringkat permulaan, memanggil kaedah init() untuk memulakan Servlet 2. Peringkat berjalan (permintaan pemprosesan), bekas akan Meminta untuk mencipta objek ServletRequest yang mewakili permintaan HTTP dan objek ServletResponse yang mewakili respons HTTP, dan kemudian menghantarnya sebagai parameter kepada kaedah Servlet's service() 3. Fasa pemusnahan.

Setiap tahun sebelum Apple mengeluarkan versi utama baharu iOS dan macOS, pengguna boleh memuat turun versi beta beberapa bulan lebih awal untuk mengalaminya terlebih dahulu. Memandangkan perisian ini digunakan oleh orang awam dan pembangun, Apple telah melancarkan versi pembangun dan awam, yang merupakan versi beta awam bagi versi beta pembangun, untuk kedua-duanya. Apakah perbezaan antara versi pembangun dan versi awam iOS? Secara literal, versi pembangun ialah versi ujian pembangun dan versi awam ialah versi ujian awam. Versi pembangun dan versi awam menyasarkan khalayak yang berbeza. Versi pembangun digunakan oleh Apple untuk ujian oleh pembangun Anda memerlukan akaun pembangun Apple untuk memuat turun dan meningkatkannya.

Gantikan aksara (rentetan) dalam rentetan menggunakan fungsi String.replace() Java Dalam Java, rentetan ialah objek tidak boleh ubah, yang bermaksud apabila objek rentetan dicipta, nilainya tidak boleh diubah suai. Walau bagaimanapun, anda mungkin menghadapi situasi di mana anda perlu menggantikan aksara atau rentetan tertentu dalam rentetan. Pada masa ini, kita boleh menggunakan kaedah replace() dalam kelas String Java untuk melaksanakan penggantian rentetan. Kaedah replace() kelas String mempunyai dua jenis:

Salam semua, hari ini saya akan berkongsi dengan anda pengetahuan asas Java: String. Tidak perlu diperkatakan kepentingan kelas String, ia boleh dikatakan sebagai kelas yang paling banyak digunakan dalam pembangunan back-end kami, jadi adalah perlu untuk membincangkannya.
