ガイドパッケージ:
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.4</version>
<classifier>jdk15</classifier>
<!-- jdk版本 -->
</dependency>
注: ここで問題が発生します。依存関係は自動的にインポートできません。
解決:
Jar パッケージのダウンロード アドレス: Json-lib - SourceForge.net でファイルを参照
json-lib jar パッケージをダウンロードした後、jar パッケージの名前には jdk15 などの接尾辞が付きますが、現時点では 2 つの解決策があります。
1. jar パッケージをローカル ウェアハウス (対応するバージョン フォルダー) の net/sf/json-lib/2.4 に直接コピーし、jar パッケージの名前を json-lib-2.4.jar に変更し、 IDEA の Maven プロジェクト JSONObject を使用します。ディレクトリ内の lastUpdated ファイルを忘れずに削除してください。
2. mvn install コマンドを使用して、jar パッケージをローカル ウェアハウスにインストールします (ウェアハウスのアドレス、jar バージョン、ダウンロードした jar の場所は独自のものに変更する必要があります)。
mvn install:install-file -DgroupId=net.sf.json-lib -DartifactId=json-lib -Dversion=2.4 -Dpackaging=jar -Dfile=D:\firefoxDownload\Redhat6.8\json-lib-2.4-jdk15。瓶
このようにして、JSONObject クラスを使用できます。
文字列を json オブジェクトまたは json 配列に変換する
注: json 文字列内のキーの名前は、エンティティ クラスと一致している必要があります。
String datajson =
"[" +
"{" +
"'aliasName':'Taurus-49999787'," +
"'ftpPort':16602," +
"'hasPassWord':false," +
"'height':1080," +
"'ignoreTime':0," +
"'ip':'172.16.9.205'," +
"'key':'novaStar'," +
"'logined':false," +
"'loginedUsernames':[" +
"''" +
"]," +
"'password':''," +
"'platform':'rk312x'," +
"'privacy':true," +
"'productName':'TC300'," +
"'sn':'BZSA07194A0049999787'," +
"'syssetFtpPort':16604," +
"'syssetTcpPort':16605," +
"'tcpPort':16603," +
"'terminalState':5," +
"'username':[" +
"]," +
"'width':1920" +
"}," +
"{....}"+
"]";
JSONArray jsonArray = JSONArray.parseArray(datajson);
for(int i=0; i<jsonArray.size(); i++) {
JSONObject object = jsonArray.getJSONObject(i);
Entity entity = JSONObject.parseObject(object.toJSONString() , Entity.class);// 将string类型直接封装成对象
System.out.println(entity.toString());
}