1 <html> 2 <head> 3 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 4 <title>Insert title here</title> 5 <script type="text/javascript" src="js/prototype-1.6.0.3.js"></script> 6 <script type="text/javascript"> //字符串转换为json对象
var str = '{"name":"tom","age":25}';
var json = eval("("+str+")");
7 f2(); 8 //以json格式创建js对象 9 function f1(){ 10 var person = {'name':'zs','age':22}; 11 //alert(person.name); 12 var person2 = {'name':'ls','address':{ 13 'city':'beijing', 14 'room':2002 15 }}; 16 //alert(person2.address.city); 17 var family = [{'name':'zs','age':22}, 18 {'name':'ww','age':32}]; 19 alert(family[0].age); 20 } 21 22 //怎样将一个符合json格式的字符串转变成js对象 23 function f2(){ 24 var personDesc = "{'name':'zs','age':22}"; 25 //alert(typeof personDesc); 26 var person = personDesc.evalJSON(); 27 //alert(person.age); 28 var familyDesc="[{'name':'zs','age':22},{'name':'ww','age':32}]"; 29 var family = familyDesc.evalJSON(); 30 alert(family[0].name); 31 } 32 </script> 33 </head> 34 <body style="font-size:30pt;"> 35 36 </body> 37 </html>
1 package json; 2 3 import java.util.ArrayList; 4 import java.util.Date; 5 import java.util.List; 6 7 import net.sf.json.JSONArray; 8 import net.sf.json.JSONObject; 9 import net.sf.json.JsonConfig; 10 import entity.User; 11 12 public class Test { 13 //将java对象转变成符合json格式的字符串 14 public static void ObjectToJson(){ 15 User user = new User("zs",22); 16 user.setId(1l); 17 user.setBirthday(new Date()); 18 19 // 对于日期,需要写一个转换器 20 //step1 写一个转换器,实现JsonValueProcessor接口 21 //step2 注册转换器 22 JsonConfig config = new JsonConfig(); 23 config.registerJsonValueProcessor(Date.class, new DateTransfer()); 24 JSONObject obj = JSONObject 25 .fromObject(user,config); 26 String str = obj.toString(); 27 System.out.println(str); 28 } 29 30 public static void ArrayToJson(){ 31 User user = new User("zs",22); 32 user.setId(1l); 33 User user2 = new User("ws",32); 34 user2.setId(2l); 35 //User[] users = {user,user2}; 36 List<User> users = 37 new ArrayList<User>(); 38 users.add(user); 39 users.add(user2); 40 JSONArray array = 41 JSONArray.fromObject(users); 42 System.out.println(array.toString()); 43 44 } 45 /** 46 * @param args 47 */ 48 public static void main(String[] args) { 49 // TODO Auto-generated method stub 50 ObjectToJson(); 51 //ArrayToJson(); 52 } 53 54 }
1 package json; 2 3 import net.sf.json.JsonConfig; 4 import net.sf.json.processors.JsonValueProcessor; 5 import java.text.*; 6 import java.util.Date; 7 public class DateTransfer implements JsonValueProcessor{ 8 private String dateFormat = "yyyy-MM-dd"; 9 public void setDateFormat(String pattern){ 10 this.dateFormat = pattern; 11 } 12 public Object processArrayValue(Object arg0, 13 JsonConfig arg1) { 14 SimpleDateFormat sdf = 15 new SimpleDateFormat(dateFormat); 16 return sdf.format((Date)arg0); 17 } 18 19 public Object processObjectValue(String arg0, 20 Object arg1, JsonConfig arg2) { 21 SimpleDateFormat sdf = 22 new SimpleDateFormat(dateFormat); 23 return sdf.format((Date)arg1); 24 } 25 26 }
依赖jar包