Java
 Computer >> コンピューター >  >> プログラミング >> Java

Java 9のJShellにgsonライブラリをインポートするにはどうすればよいですか?


Java 9 インタラクティブなREPLを導入しました JShellという名前のコマンドラインツール 。これにより、Javaコードスニペットを実行してすぐに結果を得ることができます。クラスパスを介してJShellセッションからアクセスできる外部クラスをインポートできます。 Gsonライブラリ Javaのシリアル化/逆シリアル化です Javaオブジェクトをに変換することを目的としたライブラリ JSON 逆もまた同様です。

以下のコードスニペットでは、JShellでクラスパスを設定できます

jshell> /env --class-path C:\Users\User\gson.jar
| Setting new options and restoring state.


gsonをインポートしたら ライブラリ JShellで、リストにそのライブラリを表示できます。

jshell> import com.google.gson.*

jshell> /import
| import java.io.*
| import java.math.*
| import java.net.*
| import java.nio.file.*
| import java.util.*
| import java.util.concurrent.*
| import java.util.function.*
| import java.util.prefs.*
| import java.util.regex.*
| import java.util.stream.*
| import com.google.gson.*

jshell> Gson g = new GsonBuilder().setPrettyPrinting().create()
g ==> {serializeNulls:false,factories:[Factory[typeHier ... 78b9],instanceCreators:{}}


以下のコードスニペットでは、従業員を作成しました クラス。

jshell> class Employee {
...>       private String firstName;
...>       private String lastName;
...>       private String designation;
...>       private String location;
...>       public Employee(String firstName, String lastName, String desigation, String location) {
...>          this.firstName = firstName;
...>          this.lastName = lastName;
...>          this.designation = designation;
...>          this.location = location;
...>       }
...>       public String getFirstName() {
...>          return firstName;
...>       }
...>       public String getLastName() {
...>          return lastName;
...>       }
...>       public String getJobDesignation() {
...>          return designation;
...>       }
...>       public String getLocation() {
...>          return location;
...>       }
...>       public String toString() {
...>          return "Name = " + firstName + ", " + lastName + " | " +
...>                 "Job designation = " + designation + " | " +
...>                 "location = " + location + ".";
...>       }
...>    }
| created class Employee

jshell> Employee e = new Employee("Jai", "Adithya", "Content Developer", "Hyderabad");
e ==> Name = Jai, Adithya | Job designation = Content D ... er | location = Hyderabad.

jshell> String empSerialized = g.toJson(e)
empSerialized ==> "{\n \"firstName\": \"Jai\",\n \"lastName\": \" ... ation\": \"Hyderabad\"\n}"


以下のコードスニペットでは、従業員のインスタンスを作成できます オブジェクトを作成して結果を表示します。

jshell> System.out.println(empSerialized)
{
   "firstName": "Jai",
   "lastName": "Adithya",
   "designation": "Content Developer",
   "location": "Hyderabad"
}
jshell> Employee e1 = g.fromJson(empSerialized, Employee.class)
e1 ==> Name = Jai, Adithya | Job designation = Content D ... er | location = Hyderabad.

  1. Java OpenCVライブラリを使用して画像にノイズを追加するにはどうすればよいですか?

    OpenCVを使用して特定の画像にノイズを追加するには- 与えられた画像の内容をMatオブジェクトに読み込みます。 ノイズと結果の行列を格納するために、さらに2つの空の行列を作成します。 平均と標準偏差を格納する2つのMatOfDouble行列を作成します。 meanStdDev()メソッドを使用して平均値と標準偏差値を取得します。 randn()メソッドを使用して、(ノイズを格納するための)ランダム要素を含む行列を作成します。 このメソッドに、上記で作成したソース、平均、および標準の偏差オブジェクトを渡します。 最後に、ノイズマトリックスとソースマト

  2. Java OpenCVライブラリを使用して画像内の顔を検出するにはどうすればよいですか?

    のCascadeClassifierクラスは、分類ファイルをロードし、画像内の目的のオブジェクトを検出するために使用されます。 このクラスのdetectMultiScale()は、さまざまなサイズの複数のオブジェクトを検出します。このメソッドは-を受け入れます 入力画像を保持するクラスMatのオブジェクト。 検出された面を格納するためのクラスMatOfRectのオブジェクト。 画像内の顔の数を取得するには- CascadeClassifierクラスを使用してlbpcascade_frontalface.xmlファイルをロードします。 detectMultiSca