GSON£¨JSON×Ö·û´®×ª»»³ÉÒ»¸öÏàµÈµÄJava¶ÔÏó£©
GsonÕâ¸öJavaÀà¿â¿ÉÒÔ°ÑJava¶ÔÏóת»»³ÉJSON£¬Ò²¿ÉÒÔ°ÑJSON×Ö·û´®×ª»»³ÉÒ»¸öÏàµÈµÄJava¶ÔÏó¡£GsonÖ§³ÖÈÎÒ⸴ÔÓJava¶ÔÏó°üÀ¨Ã»ÓÐÔ´´úÂëµÄ¶ÔÏó¡£
´úÂëÀý×Ó£º
util.DateºÍsql.Date±»×ª³É³¤ÕûÐÎÓÃÓÚÐòÁл¯´«Êä
public class SQLDateSer
ializer implements JsonSerializer<java.sql.Date> {
public JsonElement serialize(java.sql.Date src, Type typeOfSrc,
JsonSerializationContext context) {
return new JsonPrimitive(src.getTime());
}
}
public class UtilDateSerializer implements JsonSerializer<java.util.Date> {
public JsonElement serialize(java.util.Date src, Type typeOfSrc,
JsonSerializationContext context) {
return new JsonPrimitive(src.getTime());
}
}
public class SQLDateDeserializer implements JsonDeserializer<java.sql.Date> {
public java.sql.Date deserialize(JsonElement json, Type typeOfT,
JsonDeserializationContext context) throws JsonParseException {
return new java.sql.Date(json.getAsJsonPrimitive().getAsLong());
}
}
public class UtilDateDeserializer implements JsonDeserializer<java.util.Date> {
public java.util.Date deserialize(JsonElement json, Type typeOfT,
JsonDeserializationContext context) throws JsonParseException {
return new java.util.Date(json.getAsJsonPrimitive().getAsLong());
}
}
ÐòÁл¯·´ÐòÁл¯ÀàWorker.class
private String name;
private java.sql.Date dob;
private java.util.Date inTime;
ÐòÁл¯·´ÐòÁл¯ÀàFactory.class
private String name;
private Worker worker;
private Set<Worker> workers;
private List<Worker> lws;
ÐòÁл¯·´ÐòÁл¯°ïÖúÀà
public class JsonUtils {
public static String bean2json(Object bean) {
Gson gson = new GsonBuilder().registerTypeAdapter(java.sql.Date.class,
new SQLDateSerializer()).registerTypeAdapter(
java.util.Date.class, new UtilDateSerializer()).setDateFormat(
DateFormat.LONG).setPrettyPrinting().create();
// gson = new Gson();
return gson.toJson(bean);
}
public static <T> T json2bean(String json, Type type) {
Gson g
Ïà¹ØÎĵµ£º
Package µÄÃüÃû
Package µÄÃû×ÖÓ¦¸Ã¶¼ÊÇÓÉÒ»¸öСдµ¥´Ê×é³É¡£
Class µÄÃüÃû
Class µÄÃû×Ö±ØÐëÓÉ´óд×Öĸ¿ªÍ·¶øÆäËû×Öĸ¶¼Ð¡Ð´µÄµ¥´Ê×é³É
Class ±äÁ¿µÄÃüÃû
±äÁ¿µÄÃû×Ö±ØÐëÓÃÒ»¸öСд×Öĸ¿ªÍ·¡£ºóÃæµÄµ¥´ÊÓôóд×Öĸ¿ªÍ·¡£
Static Final&nbs ......
Java¼¼Êõ·Ïßͼ
Ìáʾ£ºÇ°ÎĶÔJava¼¼Êõ×öÁË¿ò¼ÜÐԵķÖÎö£¬°üÀ¨Java SE¡¢Java EEºÍJava ME£¬ÈöÁÕßÁ˽âÁËJavaÓÉÄÄЩ¼¼Êõ×é³É¡£ÎªÁËϵͳµØÑ§Ï°ÕâЩ¼¼Êõ£¬±¾ÎĽ«Öƶ¨Ò»Ì×ÍêÕûµÄJava¼¼Êõѧϰ·Ïß¡£
´ÓǰÎÄÖÐÎÒÃÇÒѾÁ˽⵽£¬Java SEÖаüº¬ÁËJavaµÄ»ù´¡¼¼Êõ£¬Java EEÖаüº¬ÁËÍøÂçÓ¦Óÿª·¢µÄ¸÷ÖÖ¼¼Êõ£¬Java MEÖаüº¬ÁËÒÆ¶¯É豸Ӧ ......
ÖØÐÂÀ´ÈÏʶһÏÂÄÚ²¿ÀàµÄÇø±ð
1
Static member class£¨¾²Ì¬³ÉÔ±Àࣩ
ÀàÉùÃ÷Öаüº¬“static”¹Ø¼ü×ÖµÄÄÚ²¿Àà¡£ÈçÒÔÏÂʾÀý´úÂ룬
Inner1/Inner2/Inner3/Inner4¾ÍÊÇOuterµÄËĸö¾²Ì¬³ÉÔ±Àà¡£¾²Ì¬³ÉÔ±ÀàµÄʹÓ÷½Ê½ÓëÒ»°ã¶¥²ãÀàµÄʹÓ÷½Ê½»ù±¾Ïàͬ¡£
publi ......
µÚһƪ£ºJVM»ù´¡¸ÅÄî×ܽ᣺Êý¾ÝÀàÐÍ¡¢¶ÑÓëÕ» http://java.chinaitlab.com/Jvm/798192.html
Êý¾ÝÀàÐÍ
¡¡¡¡JavaÐéÄâ»úÖУ¬Êý¾ÝÀàÐÍ¿ÉÒÔ·ÖΪÁ½Àࣺ»ù±¾ÀàÐͺÍÒýÓÃÀàÐÍ¡£»ù±¾ÀàÐ͵ıäÁ¿±£´æÔʼֵ£¬¼´£ºËû´ú±íµÄÖµ¾ÍÊÇÊýÖµ±¾Éí;¶øÒýÓÃÀàÐ͵ıäÁ¿±£´æÒýÓÃÖµ¡£“ÒýÓÃÖµ”´ú±íÁËij¸ö¶ÔÏóµÄÒýÓ㬶ø²»ÊǶÔÏó±¾Éí£¬¶ÔÏó± ......
ÓÉÓÚ´ó¼Ò¶ÔpackageµÄʹÓôæÔÚÌ«¶àÀ§»ó£¬ÎÒÔÚÕâÀォ×Ô¼º¶ÔÓÚpackageµÄʹÓõÄÁìÎò½øÐÐÒ»µã×ܽ᣺
¡¡¡¡packageÖÐËù´æ·ÅµÄÎļþ
¡¡¡¡ËùÓÐÎļþ£¬²»¹ýÒ»°ã·ÖһϾͷÖÕâÈýÖÖ
¡¡¡¡1£¬java³ÌÐòÔ´Îļþ£¬À©Õ¹ÃûΪ.java¡£
¡¡¡¡2£¬±àÒëºÃµÄjavaÀàÎļþ£¬À©Õ¹ÃûΪ.class¡£
¡¡¡¡3£¬ÆäËûÎļþ£¬ÆäËûÈκÎÎļþ,Ò²³ÆÎªresource
¡¡¡¡ÀýÈçͼƬ ......