Jackson---此文章摘自jackson官网例子
来源:互联网 发布:知乎的童瑶事件 编辑:程序博客网 时间:2024/05/19 22:46
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。
易于人阅读和编写。同时也易于机器解析和生成
JSON-lib官网:http://json-lib.sourceforge.net/
Jackson官网:http://jackson.codehaus.org/
号称性能最快的JSON处理器Jackson远高于JSON_lib
转化json字符串:
/** * 使用Jackson生成json格式字符串 * * @author archie2010 since 2011-4-26下午05:59:46 */public class JacksonTest { private static JsonGenerator jsonGenerator = null; private static ObjectMapper objectMapper = null; private static User user = null; /** * 转化实体为json字符串 * @throws IOException */ public static void writeEntity2Json() throws IOException{ System.out.println("使用JsonGenerator转化实体为json串-------------"); //writeObject可以转换java对象,eg:JavaBean/Map/List/Array等 jsonGenerator.writeObject(user); System.out.println(); System.out.println("使用ObjectMapper-----------"); //writeValue具有和writeObject相同的功能 objectMapper.writeValue(System.out, user); } /** * 转化Map为json字符串 * @throws JsonGenerationException * @throws JsonMappingException * @throws IOException */ public static void writeMap2Json() throws JsonGenerationException, JsonMappingException, IOException{ System.out.println("转化Map为字符串--------"); Map<String, Object> map=new HashMap<String, Object>(); map.put("uname", user.getUname()); map.put("upwd", user.getUpwd()); map.put("USER", user); objectMapper.writeValue(System.out, map); } /** * 转化List为json字符串 * @throws IOException * @throws JsonMappingException * @throws JsonGenerationException */ public static void writeList2Json() throws IOException{ List<User> userList=new ArrayList<User>(); userList.add(user); User u=new User(); u.setUid(10); u.setUname("archie"); u.setUpwd("123"); userList.add(u); objectMapper.writeValue(System.out, userList); objectMapper.writeValue(System.out, userList); } public static void main(String[] args) { user = new User(); user.setUid(5); user.setUname("tom"); user.setUpwd("123"); user.setNumber(3.44); objectMapper = new ObjectMapper(); try { jsonGenerator = objectMapper.getJsonFactory().createJsonGenerator(System.out, JsonEncoding.UTF8); //writeEntity2Json(); //writeMap2Json(); writeList2Json(); } catch (IOException e) { e.printStackTrace(); } }}
[{"number":3.44,"uname":"tom","upwd":"123","uid":5},{"number":0.0,"uname":"archie","upwd":"123","uid":10}]
输出到浏览器端:
StringWriter writer = new StringWriter();ObjectMapper mapper = new ObjectMapper(); try { mapper.writeValue(writer, hMap); } catch (JsonGenerationException e) { e.printStackTrace(); } catch (JsonMappingException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }response.setContentType("text/html;charset=UTF-8");PrintWriter out= response.getWriter();out.print(writer.toString());
- Jackson---此文章摘自jackson官网例子
- JackSon
- jackson
- Jackson
- jackson
- jackson
- jackson
- jackson
- jackson
- jackson
- Jackson
- Jackson
- Jackson
- Jackson
- Jackson
- jackson
- jackson
- Jackson
- C语言指针学习(二) ---- 指针与数组
- 问题日记:VC MFC 鼠标移动画矩形
- ARP协议
- 努力学习,将来努力赚钱!
- 编译Android源码的全过程
- Jackson---此文章摘自jackson官网例子
- 过滤器和拦截器的区别
- linux音频处理
- asp.net页面刷新的六种方法
- [SRM] 519
- java 多线程
- VC中基于 Windows 的精确定时
- VC USB通信问题
- 动态设置DefaultButton