色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

java 實現反射 json動態轉實體類--fastjson

瀏覽:8日期:2022-08-16 16:20:39

我就廢話不多說了,大家還是直接看代碼吧~

package test.refect; public class Student {// 姓名private String name;// 年齡private String age;// 住址private String address; public String getName() {return name;} public void setName(String name) {this.name = name;} public String getAge() {return age;} public void setAge(String age) {this.age = age;} public String getAddress() {return address;} public void setAddress(String address) {this.address = address;} @Overridepublic String toString() {return 'Student [name=' + name + ', age=' + age + ', address=' + address + ']';}public void sayHello(Book book){System.out.println(book.getName());}}

package test.refect; public class Book {private String name; public String getName() {return name;} public void setName(String name) {this.name = name;} }

package test.refect; import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;import com.alibaba.fastjson.JSONObject; public class ExecuteWithFastJson { public static <T> void main(String[] args) {// Student str --> Student 主類String str = 'test.refect.Student';Class<?> clazz = null;try {clazz = Class.forName(str);} catch (ClassNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} // Book實體 str --> Book 參數類String bookStr = 'test.refect.Book';Class<?> bookClazz = null;try {bookClazz = Class.forName(bookStr);} catch (ClassNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} // json --> Book 將參數類轉為JSONOBJECTString bookJson = '{'name':'Java'}'; // 實例化參數類T t = (T) JSONObject.parseObject(bookJson, bookClazz);// 將參數類注入到主類Method method =null;try {method = clazz.getDeclaredMethod('sayHello', bookClazz);} catch (NoSuchMethodException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (SecurityException e) {// TODO Auto-generated catch blocke.printStackTrace();} // 執行主類try {method.invoke(clazz.newInstance(), t);} catch (IllegalAccessException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IllegalArgumentException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (InvocationTargetException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (InstantiationException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}

補充:使用fastjson 進行jsonObject轉實體類對象

<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.7</version></dependency>

首先引入相關jar包,

假設有一個實體類User

public class User{ private int id; private String name; }

然后通過fastJson進行類型轉換

public static void main(String[] args){ String userString = '{'id':1,'name','lz'}'; JSONObject userJson = JSONObject.parseObject(userString); User user = JSON.toJavaObject(userJson,User.class); }

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。如有錯誤或未考慮完全的地方,望不吝賜教。

標簽: Java
相關文章:
主站蜘蛛池模板: 欧美精品亚洲精品日韩专区 | 女人张开腿让男人桶视频 | 精品一久久香蕉国产线看观 | 草草在线免费视频 | 成人免费看片 | 欧美另类孕交 | 久草手机在线观看视频 | 国产成人影院一区二区 | 玖草 | 精品一区二区久久久久久久网站 | 亚洲欧美7777| 久久99爱视频 | 在线播放高清国语自产拍免费 | 美国一级特a黄 | 久草新免费 | 久久久久视频精品网 | 国产91久久久久久久免费 | 特黄的欧美毛片 | 亚洲精品国产精品一区二区 | 国产乱码精品一区二区三区四川人 | 三级com| 免费日本视频 | 亚洲rct中文字幕在线 | 国产精品免费久久 | 美女黄色在线观看 | 国产欧美一区二区另类精品 | 日本午夜高清视频 | 特级黄色毛片在放 | 一区二区三区在线看 | 国产精选经典三级小泽玛利亚 | 91精品国产免费网站 | 男人天堂亚洲 | 91碰碰 | 国产精品福利午夜一级毛片 | 不卡无毒免费毛片视频观看 | 日韩区在线 | 欧美激情国产一区在线不卡 | 韩国一级免费视频 | 亚洲永久中文字幕在线 | 久久久这里只有精品加勒比 | 国产在线不卡免费播放 |