ホームページ バックエンド開発 PHPチュートリアル ハイブリッドの新しい生活 -- Java+PHP 統合_PHP チュートリアル

ハイブリッドの新しい生活 -- Java+PHP 統合_PHP チュートリアル

Jul 13, 2016 pm 05:44 PM
対処する アプリ 統合する 時間 現実

ようやく最近になって、これに取り組み、このアイデアを現実世界のアプリケーションに適用する時間ができました。以下では、開発と公開の方法を 2 つの側面から説明します。
例: メニュー管理を例に挙げて、java+php 開発モデルを説明します。
例は次のとおりです:
1: Java 構造コード
Java開発構造図は次のとおりです:

java 开发结构图

Java プログラム コードについては、以下のアップロードされたファイルを参照してください。アップロードされるファイルは 2M を超えることができないため、使用されるライブラリはアップロードされません。必要な場合は、私にメールを残してください。全員に送信します。
注: PHP と Java はそれぞれ独自の言語内で定義されたデータ型を持っています。PHP データが Java に送信されるとき、または Java データが PHP に送信されるとき、LAJP はそれらを内部で自動的かつ正確に変換するため、プログラマはデコード作業を行う必要はありません。
2: Java アプリケーションのリリース
コンパイルしたファイルを LAJP ディレクトリに置きます: My file directory: E:lajp-10.05test_serviceecard
下の写真に示すように:

ハイブリッドの新しい生活 -- Java+PHP 統合_PHP チュートリアル

三:php结构代码
クラスメニューはCI_Controllerを拡張します{
 
 関数 __construct(){
  親::__construct();
  $this->load->model('system/menu_model');
 }
 
 関数インデックス(){
  $condition = array();
  $condition['menu_id'] = $this->uri->segment(4,0);
  $condition['path'] = $this->input->post('path');
  $condition['start'] = $this->input->post('start');
  $condition['id'] = $this->input->post('id');
  $condition['order'] = $this->input->post('order');
  $condition['isfresh'] = $this->input->post('isfresh');
  $condition['visible'] = $this->input->post('visible');
  $condition['defaultselect'] = $this->input->post('defaultselect');
  $condition['name'] = $this->input->post('name');
  $condition['parentid'] = $this->input->post('parent_id');
  $condition['numPerPage'] = $this->input->post('numPerPage') ? $this->input->post('numPerPage') : 20;
  $condition['orderField'] = $this->input->post('orderField') ? $this->input->post('orderField') : 'SMT_PARENT_ID';
  $condition['pageNum'] = $this->input->post('pageNum') ? $this->input->post('pageNum') : 1;
  $data = array();
  $allmenus = $this->menu_model->getMenus();
  $this->load->library('smart_tree');
  $options = 配列(
   'インデックス' => 1、
   「タイプ」 => 0、
   「自分」 => 1、
   'hreffromdb' => 0、
   'relfromdb' => 0、
   'rel' => 'システム/メニュー/インデックス',
   'href' => 'システム/メニュー/インデックス/',
   'hrefid' => 1、
   'タイトル' => 「菜单管理」
  );
  $data['allmenus'] = $this->smart_tree->getTrees($allmenus, $options);
  $data['menus'] = $this->menu_model->getMenusVoByCondition($condition);
  $data['total'] = $this->menu_model->getCount($condition);
  $data['条件'] = $条件;
  $this->load->view('system/menu/index.phtml', $data);
 }
 
 関数 add(){
  $data['menus'] = $this->menu_model->getMenus();
  $this->load->view('system/menu/add.phtml',$data);
 }
 
 関数挿入(){
  $vo = newObject('ecard_sys_menus_vo_MenusVo');
  $vo->name = (string)$this->input->post('name');
  $vo->parentid = (int)$this->input->post('parent_id');
  $vodefaultselect = (int)$this->input->post('defaultselect');
  $vo->visible = (int)$this->input->post('visible');
  $vo->isfresh = (int)$this->input->post('isfresh');
  $vo->desc = (string)$this->input->post('desc');
  $vo->path = (string)$this->input->post('path');
  $vo->start = (int)$this->input->post('start');
  $vo->order = (int)$this->input->post('order');
  $vo->cuser = 1;
 
  if($this->menu_model->insert($vo)){
   $reback = array("statusCode"=>"200","message" => "追加成功","navTabId" => "system/menu/index", "callbackType" => "closeCurrent", "forwardUrl" => "" );
  }その他{
   $reback = array("statusCode"=>"300","message" => "添加失败","navTabId" => "", "callbackType" => "","forwardUrl" => "" );
  }
  echo json_encode($reback);
 }
 
 関数編集(){
  $menu_id = $this->uri->segment(4,0) または exit('菜单不存在');
  $data['menu'] = $this->menu_model->getMenusVoById($menu_id) または exit('菜单不存在');
  $data['pmenu'] = $this->menu_model->getMenusVoById($data['menu']['parentid']) または exit('菜单不存在');
  $this->load->view('system/menu/edit.phtml',$data);
 }
 
 関数 update(){
  $vo = newObject('ecard_sys_menus_vo_MenusVo');
  $vo->id = (int)$this->input->post('id');
  $vo->name = (string)$this->input->post('name');
  $vo->path = (string)$this->input->post('path');
  $vo->parentid = (int)$this->input->post('parent_id');
  $vo->order = (int)$this->input->post('order');
  $vo->start = (int)$this->input->post('start');
  $vo->defaultselect = (int)$this->input->post('defaultselect');
  $vo->visible = (int)$this->input->post('visible');
  $vo->isfresh = (int)$this->input->post('isfresh');
  $vo->desc = (string)$this->input->post('desc');
  $vo->ユーザー = 1;
  if($this->menu_model->update($vo)){
   $reback = array("statusCode"=>"200","message" => "编辑成功","navTabId" => "system/menu/index", "callbackType" => "closeCurrent", "forwardUrl" => "" );
  }その他{
   $reback = array("statusCode"=>"300","message" => "编辑失败","navTabId" => "", "callbackType" => "","forwardUrl" => "" );
  }
  echo json_encode($reback);
 }
 
 関数削除(){
  $ids = $this->input->post('ids');
  if(!$ids){
   $ids = $this->uri->segment('4',0) または exit('缺少パラメータ');
  }
  if($this->menu_model->deletes($ids)){
   $reback = array("statusCode"=>"200","message" => "删除成功","navTabId" => "", "callbackType" => "","forwardUrl" => "" );
  }その他{
   $reback = array("statusCode"=>"300","message" => "删除失败","navTabId" => "", "callbackType" => "","forwardUrl" => "" );
  }
  echo json_encode($reback);
 }
 
 関数検索(){
  $data = array();
  $data['menus'] = $this->menu_model->getMenus();
  $this->load->view('system/menu/search.phtml',$data);
 }
 
 関数ツリー(){
  $menus = $this->menu_model->getMenus();
  $this->load->library('smart_tree');
  $data['menus'] = $this->smart_tree->getTrees($menus,array('index'=>1,'type'=>0,'self'=>1,'hreffromdb '=>0));
  $this->load->view('system/menu/tree',$data);
 }
 
}
四:应用展现
        javaプログラムの発行が完了したら、次の図に示すように、承認後のプログラムをlajpファイル名に配布した後、ポイントE:lajp-10.05のrun-socket.batを実行するプログラムを実行します。

ハイブリッドの新しい生活 -- Java+PHP 統合_PHP チュートリアル

启アニメーション界面:

ハイブリッドの新しい生活 -- Java+PHP 統合_PHP チュートリアル

php インターフェースは次のようになります:
アプリケーションインターフェース

ハイブリッドの新しい生活 -- Java+PHP 統合_PHP チュートリアル
この記事はブログ「潜水艦を引いたり電車や飛行機を押したりする自慢」から引用しました

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/478731.html技術記事ようやく最近になって、これに取り組み、このアイデアを現実世界のアプリケーションに適用する時間ができました。 以下では、開発と公開の方法を 2 つの側面から説明します。 例: Java+php 開発モデルの説明とメニュー管理の使用...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Windows 11 でフォト アプリへの変更を保存できないエラー Windows 11 でフォト アプリへの変更を保存できないエラー Mar 04, 2024 am 09:34 AM

Windows 11 で画像編集にフォト アプリを使用中に「変更を保存できません」エラーが発生した場合、この記事では解決策を紹介します。変更を保存できません。保存中にエラーが発生しました。後でもう一度試してください。この問題は通常、不正なアクセス許可設定、ファイルの破損、またはシステム障害が原因で発生します。そこで、この問題を解決し、Windows 11 デバイスで Microsoft フォト アプリを引き続きシームレスに使用できるようにするために、綿密な調査を行って最も効果的なトラブルシューティング手順をいくつかまとめました。 Windows 11で写真アプリへの変更を保存できないエラーを修正する 多くのユーザーがさまざまなフォーラムでMicrosoftフォトアプリのエラーについて話し合っています

Apple Vision ProをPCに接続する方法 Apple Vision ProをPCに接続する方法 Apr 08, 2024 pm 09:01 PM

Apple Vision Pro ヘッドセットはコンピュータとネイティブ互換性がないため、Windows コンピュータに接続するように設定する必要があります。 Apple Vision Pro は発売以来、最先端の機能と充実した操作性を備えた大ヒット商品です。その理由は簡単にわかります。ただし、お使いの PC に合わせて調整することはできますが、その機能は AppleOS に大きく依存しているため、機能は制限されます。 AppleVisionPro をコンピュータに接続するにはどうすればよいですか? 1. システム要件を確認します 最新バージョンの Windows 11 が必要です (カスタム PC および Surface デバイスはサポートされていません) 64 ビット 2GHZ 以上の高速プロセッサをサポート 高性能 GPU、最大

Windows 11 で MS ペイントが正しく動作しない Windows 11 で MS ペイントが正しく動作しない Mar 09, 2024 am 09:52 AM

Microsoft ペイントは Windows 11/10 では動作しませんか?これは一般的な問題のようで、それを修正するための優れた解決策がいくつかあります。 MSPaint を使用しようとすると、機能しない、または開かないというユーザーからの苦情が寄せられています。アプリのスクロールバーが機能しない、貼り付けアイコンが表示されない、クラッシュなどが発生します。幸いなことに、Microsoft ペイント アプリに関する問題の解決に役立つ、最も効果的なトラブルシューティング方法をいくつか集めました。 Microsoft ペイントが動作しないのはなぜですか? MSPaint が Windows 11/10 PC で動作しない理由としては、次のようなことが考えられます。 セキュリティ識別子が破損しています。ハングアップしたシステム

WIN10サービスホストの動作プロセスがCPUを過剰に占有している WIN10サービスホストの動作プロセスがCPUを過剰に占有している Mar 27, 2024 pm 02:41 PM

1. まず、タスクバーの空白スペースを右クリックして[タスクマネージャー]オプションを選択するか、スタートロゴを右クリックして[タスクマネージャー]オプションを選択します。 2. 開いたタスク マネージャー インターフェイスで、右端の [サービス] タブをクリックします。 3. 開いた[サービス]タブで、下の[サービスを開く]オプションをクリックします。 4. 表示される[サービス]ウィンドウで、[InternetConnectionSharing(ICS)]サービスを右クリックし、[プロパティ]オプションを選択します。 5. 表示されたプロパティ画面で[プログラムから開く]を[無効]に変更し、[適用]をクリックして[OK]をクリックします。 6. スタートロゴをクリックし、シャットダウンボタンをクリックして[再起動]を選択し、コンピュータの再起動を完了します。

Douyin レベル 10 のライトサインの価格はいくらですか?レベル 10 のファンサインを作成するには何日かかりますか? Douyin レベル 10 のライトサインの価格はいくらですか?レベル 10 のファンサインを作成するには何日かかりますか? Mar 11, 2024 pm 05:37 PM

Douyin プラットフォームでは、多くのユーザーがレベル認定の取得を熱望しており、レベル 10 の光サインは、Douyin に対するユーザーの影響力と認知度を示しています。この記事では、ユーザーがプロセスをよりよく理解できるように、Douyin のレベル 10 ライト ボードの価格と、このレベルに到達するまでにかかる時間を詳しく掘り下げます。 1. レベル10のDouyinライトサインの価格はいくらですか? Douyinの10段階ライトサインの価格は市場の変動や需要と供給によって異なり、一般的な価格は数千元から1万元の範囲です。この価格には主に照明サイン自体の費用と、場合によってはサービス料が含まれます。ユーザーは、Douyin の公式チャネルまたはサードパーティのサービス代理店を通じてレベル 10 のライト サインを購入できますが、虚偽または詐欺的な取引を避けるために、購入する際には法的チャネルに注意する必要があります。 2. レベル 10 のファンサインを作成するには何日かかりますか?レベル10のライトサインに到達する

ShazamアプリがiPhoneで動作しない:修正 ShazamアプリがiPhoneで動作しない:修正 Jun 08, 2024 pm 12:36 PM

iPhone の Shazam アプリに問題がありますか? Shazam は、曲を聞いて曲を見つけるのに役立ちます。ただし、Shazam が正常に動作しない場合、または曲が認識されない場合は、手動でトラブルシューティングを行う必要があります。 Shazam アプリの修復にはそれほど時間はかかりません。したがって、これ以上時間を無駄にすることなく、以下の手順に従って Shazam アプリの問題を解決してください。解決策 1 – 太字テキスト機能を無効にする iPhone の太字テキストが、Shazam が正しく動作しない原因である可能性があります。ステップ 1 – これは iPhone の設定からのみ実行できます。それで、開けてください。ステップ 2 – 次に、そこにある「ディスプレイと明るさ」設定を開きます。ステップ 3 – 「太字テキスト」が有効になっている場合

Windows 11 の古いフォトから新しいフォト アプリに写真を移動する Windows 11 の古いフォトから新しいフォト アプリに写真を移動する Mar 10, 2024 am 09:37 AM

この記事では、Windows 11 のフォト レガシーから新しいフォト アプリに写真を移行する方法について説明します。 Microsoft は、改良されたフォト アプリを Windows 11 に導入し、よりシンプルで機能豊富なエクスペリエンスをユーザーに提供しました。新しい写真アプリは、以前の PhotosLegacy アプリとは異なる方法で写真を並べ替えます。アルバムを作成するのではなく、他の Windows ファイルと同様に写真をフォルダーに整理します。ただし、フォト レガシー アプリをまだ使用しているユーザーは、写真を新しいバージョンの Microsoft フォトに簡単に移行できます。写真とは

0xc0000142 エラー コードが表示されるのはなぜですか? 0xc0000142 エラー コードが表示されるのはなぜですか? Feb 25, 2024 am 11:15 AM

0xc0000142 は Windows システムのエラー コードを指し、通常はプログラムやアプリケーションが起動または実行されないという問題に関連しています。ユーザーがプログラムを開こうとすると、システムはエラー メッセージ「0xc0000142」を表示し、プログラムは実行を続行できません。では、なぜ 0xc0000142 エラーが発生するのでしょうか?このエラー コードにはさまざまな理由が考えられますが、ここでは一般的な原因と解決策をいくつか紹介します。構成ファイルの破損: 一部のプログラムの構成ファイルが破損している可能性があります。

See all articles