JSON基础

来源:互联网 发布:php vardump 编辑:程序博客网 时间:2024/03/29 06:08
Java代码 复制代码
  1. package demo;   
  2.   
  3. import org.json.JSONException;   
  4. import org.json.JSONObject;   
  5.   
  6. public class Book {   
  7.   
  8.     private String name;   
  9.     private int id;   
  10.     public String getName() {   
  11.         return name;   
  12.     }   
  13.     public void setName(String name) {   
  14.         this.name = name;   
  15.     }   
  16.     public int getId() {   
  17.         return id;   
  18.     }   
  19.     public void setId(int id) {   
  20.         this.id = id;   
  21.     }   
  22.     public JSONObject toJSONObject() throws JSONException{   
  23.         JSONObject json = new JSONObject();   
  24.         json.put("id", id);   
  25.         json.put("name", name);   
  26.         return json;   
  27.     }   
  28. }  

 

Java代码 复制代码
  1. package demo;   
  2.   
  3. import java.text.SimpleDateFormat;   
  4. import java.util.ArrayList;   
  5. import java.util.Date;   
  6. import java.util.List;   
  7.   
  8. import org.json.JSONArray;   
  9. import org.json.JSONException;   
  10. import org.json.JSONObject;   
  11.   
  12. import com.sun.org.apache.bcel.internal.generic.NEW;   
  13.   
  14.   
  15. public class Order {   
  16.   
  17.     private String name;   
  18.     private float cost;   
  19.     private Date date;   
  20.     private List<Book> books = new ArrayList<Book>();   
  21.     public String getName() {   
  22.         return name;   
  23.     }   
  24.     public void setName(String name) {   
  25.         this.name = name;   
  26.     }   
  27.     public float getCost() {   
  28.         return cost;   
  29.     }   
  30.     public void setCost(float cost) {   
  31.         this.cost = cost;   
  32.     }   
  33.     public Date getDate() {   
  34.         return date;   
  35.     }   
  36.     public void setDate(Date date) {   
  37.         this.date = date;   
  38.     }   
  39.     public List<Book> getBooks() {   
  40.         return books;   
  41.     }   
  42.     public void setBooks(List<Book> books) {   
  43.         this.books = books;   
  44.     }   
  45.        
  46.     public JSONObject toJSONObject() throws JSONException{   
  47.         JSONObject json = new JSONObject();   
  48.         json.put("name", name);   
  49.         json.put("date"new SimpleDateFormat("yyyy-MM-dd").format(date));   
  50.         json.put("cost", cost);   
  51.         JSONArray jsonBooks = new JSONArray();   
  52.         for (Book book : books) {   
  53.             jsonBooks.put(book.toJSONObject());   
  54.         }   
  55.         json.put("books", jsonBooks);   
  56.         return json;   
  57.     }   
  58. }  

 

Java代码 复制代码
  1. package demo;   
  2.   
  3. import java.io.IOException;   
  4. import java.text.ParseException;   
  5. import java.text.SimpleDateFormat;   
  6. import java.util.ArrayList;   
  7. import java.util.Date;   
  8. import java.util.List;   
  9.   
  10. import javax.servlet.ServletException;   
  11. import javax.servlet.http.HttpServlet;   
  12. import javax.servlet.http.HttpServletRequest;   
  13. import javax.servlet.http.HttpServletResponse;   
  14.   
  15. import org.json.JSONException;   
  16.   
  17. public class JSONResponse extends HttpServlet {   
  18.   
  19.     @Override  
  20.     public void service(HttpServletRequest request, HttpServletResponse response)   
  21.             throws ServletException, IOException {   
  22.            
  23.         response.setContentType("application/x-json");   
  24.            
  25.         List<Book> books = new ArrayList<Book>();   
  26.         Book b1 = new Book();   
  27.         b1.setId(1);   
  28.         b1.setName("book1");   
  29.         Book b2 = new Book();   
  30.         b2.setId(2);   
  31.         b2.setName("book2");   
  32.         books.add(b1);   
  33.         books.add(b2);   
  34.         Order order = new Order();   
  35.         order.setBooks(books);   
  36.         order.setCost(100.5f);   
  37.         order.setName("orderName");   
  38.                   order.setDate(new Date(System.currentTimeMillis()));   
  39.         try {   
  40.             response.getWriter().print(order.toJSONObject());   
  41.         } catch (JSONException e) {   
  42.         }   
  43.     }   
  44. }  

 

Js代码 复制代码
  1. <script type="text/javascript">   
  2. //req是XMLHttpRequest对象   
  3. var jsonObj = "(" + req.responseText + ")";   
  4. var order = eval(jsonObj);  
原创粉丝点击