phprpc ソース コードを変更して、コレクション クラスの文字列型変換をサポートする
phprpc ソース コードを変更して、コレクション クラスの文字列型変換をサポートします
リモート プロトコルに関する限り、hessian と phprpc がより一般的に使用されますが、phprpc の変換効率は hessian の変換効率よりもはるかに高くなります。次のリンクは、専門家による 2 つのシリアル化/逆シリアル化の効率の比較です:
http://www.iteye.com/topic/333720
開発のニーズにより、一部のテストは両方をサポートできます。また、型の解析と変換のデータ型でも比較が行われます。
phprpc
1。コレクション内の値は文字列型の値としてサポートされていないため、お客様が変換する必要があります。コードは次のとおりです: new String((byte[])test.getMap() .get("1"),"utf-8")
2. byte[] を除き、他の配列はサポートされていません。 int[]、float[]、char[] などのコレクション。
一見すると、Hessian を使用するだけで十分であるように見えますが、Hessian はコレクション内の char 配列の変換をサポートしていません。実際のアプリケーションで使用される可能性は低いです。しかし、phprpc はヘッセ行列よりも N 倍効率的であることがわかったので、それについて心配する必要はありません。そこで、ソースからのコレクションで文字列型の値がサポートされていないという問題を解決するためにコードを研究し始めました。コード。
実際、この問題の原因は、PHPRPC が逆シリアル化 (アンシリアル化) プロセス中にコレクション内のサブ要素の文字列型を正しく識別できないことです。 PHPRPC では、シリアル化および逆シリアル化プロセスを担当するクラスは PHPSerializer.java です。したがって、問題が特定されれば、解決することは難しくありません。ここで N,000 語を省略するのは、実際にはコードを 1 行追加するだけですが、午後全体のエネルギーを消費します。以下は、コンパイル済み spring2.5 が phprpc を使用するために必要な 3 つの jar ファイル、つまり、phprpc_client.jar、phprpc_spring.jar、phprpc.jar です。
ダウンロードして使用してください。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック











プロジェクト ディレクトリ dockerfile に dockerfile ファイルを作成します。これは後で使用します。ファイルは、サーバー上に新しく作成された /data/docker/hellolearn フォルダーにデプロイされます (ファイル パスはカスタマイズできます)。Maven でパッケージ化された jar パッケージと上記で作成した dockerfile ファイルを、サーバー上に新しく作成されたフォルダー (/data) にコピーします。 /docker/hellolearn)。イメージを生成します dockerbuild-thellolearn.dockerbuild-t イメージ名: ラベル dockerfile の相対位置、ドットは現在のディレクトリを表し、タグが書き込まれていない場合のデフォルトは最新です。コンテナドキュメントの開始

JAR ファイルを実行するための前提条件 Linux システムで JAR ファイルを実行するには、Java 仮想マシン (JVM) やコア クラス ライブラリなどの Java アプリケーションを実行するために必要な基本コンポーネントである Java ランタイム環境 (JRE) をインストールする必要があります。 Ubuntu、Debian、Fedora、openSUSE などの多くの主流 Linux ディストリビューションは、ユーザーのインストールを容易にするための JRE パッケージのソフトウェア ライブラリを提供しています。次の記事では、一般的なディストリビューションに JRE をインストールする手順について詳しく説明します。 JRE をセットアップした後、個人の好みに応じて、コマンド ライン ターミナルまたはグラフィカル ユーザー インターフェイスの使用を選択して、JAR ファイルを開始できます。選択は、Linux シェルの知識と個人の好みによって決まるかもしれません。

maven コマンド: 1.mvncleanpackage-DskipTests: プロジェクト ディレクトリでこのコマンドを実行して、ターゲット ディレクトリに jar パッケージまたは war パッケージを生成します。 2.mvnclean: プロジェクトによって生成された一時ファイル (通常はモジュール下のターゲット ディレクトリ) をクリーンアップします 3.mvncompile-DskipTests: モジュール インストール コマンドは、他のモジュール (Dmaven.test) で使用できるように、パッケージ化された jar/war ファイルをローカル ウェアハウスにコピーします。 .skip=true はテストをスキップします (testcompile もスキップされます)。4.mvntest: テスト コマンド、または src/test/java/ を実行します。

Java の String.valueOf() 関数を使用して基本データ型を文字列に変換する Java 開発で基本データ型を文字列に変換する必要がある場合、一般的な方法は String クラスの valueOf() 関数を使用することです。この関数は、基本データ型のパラメータを受け入れ、対応する文字列表現を返すことができます。この記事では、基本的なデータ型変換に String.valueOf() 関数を使用する方法を検討し、いくつかのコード例を提供します。

char配列をstringに変換する方法:代入によって実現できます {char a[]=" abc d\0efg ";string s=a;} 構文を使用して、char配列にstringに値を直接代入させて実行します変換を完了するためのコード。

Springboot の設定ファイルでは、設定ファイルの名前にそれぞれ意味と用途があります dev 開発環境 prod 本番環境 (デフォルト) test テスト環境 指定された設定ファイルを読み込みます --spring.profiles.active=prod jar パッケージをロードする springboot は、コンソールで直接開始します。欠点は、コンソールを閉じるとプロジェクトも閉じられることです。 java-jarbootdo.jar//このメソッドはバックグラウンドで実行できますが、シェルが起動されると、java-jar/bootdo-2.0.0.jar>bootdolog.file2>& もハングします。

1. SpringBoot は構成ファイルのパスを指定します。SpringBoot では、構成ファイルを jar パッケージの外に配置できるため、再パッケージ化やデプロイメントを行わずに構成を簡単に変更できます。構成ファイルのディレクトリを指定する方法は次のとおりです: (有効性の優先順位が高いものから低いものに並べられています) 1) コマンド ライン パラメーターを使用します: アプリケーションを起動するときに、--spring.config.location または -Dspring.config を使用できます。 location コマンドラインパラメータは、設定ファイルへのパスを指定します。例: (config の後の / は省略できません) java-jartest.jar--spring.config.locatio

まえがき: 会社は急いでいるプロジェクトを持っており、プロジェクトの要件の一部は以前のプロジェクトの機能の一部と同じです。高速化するために、前のマルチモジュール Maven プロジェクトのいくつかのモジュールを直接導入します。 jar パッケージの形式。新しいプロジェクトが開始されました。これにより開発時間が大幅に節約されましたが、プロジェクト jar の関連依存関係をインポートする必要も生じ、プロジェクトが肥大化して起動が遅くなりました。プロジェクトに必要な Bean だけをロードさせる方法はありますか?もちろん、ソースコードを直接修正して再パッケージ化して問題を解決することもできますが、この方法は面倒すぎます。 Baidu のメソッドを通じて、クエリは Springboot スタートアップ クラスの @ComponentScan アノテーションを使用して、コード サンプル @Componen を実装できます。
