将Java对象转换为JSONObject并以GET方法传输。
看看Google的Gson。这是一个非常简洁的API,用于将对象转换为JSON。通过将类中的@Expose批注添加到需要包括的属性中,可以轻松地指定属性。像这样尝试:
@RequestMapping(value = '/restaurant/listing', method = RequestMethod.GET)public @ResponseBody String listAllRestaurants(){ ModelAndView modelAndView = new ModelAndView(); modelAndView.addobject('restaurant', new Restaurant()); List<Restaurant> restaurantList = this.restaurantService.listRestaurants(); Gson gson = new GsonBuilder().excludeFieldsWithoutExposeAnnotation().create(); String jsonString = gson.toJson(restaurantList); return jsonString;}
不必使用@Expose注释属性,但是如果最终有任何循环引用,它将很有用。
祝好运。
解决方法 我正在开发一个Android应用程序,为此我还正在开发基于Spring-MVC的服务器。不幸的是,在此之前,我还没有在JSONObjects上做太多工作。目前,我能够从Android应用程序将Java对象发送到服务器,也可以接收Java对象。 我对使用Google提供的Volley框架感兴趣,该框架将避免Asynctask的麻烦,并且效率更高,但它处理JSONObject。不幸的是,无论我在网上什么地方,都找到了创建JSOnObjects的代码,将其保存在本地硬盘上的某个文件中,但是不,我想在ResponseBody中传输它们,任何人都可以帮助我为JSOBObject创建JAVA对象反之亦然。我具有所有POM依赖项,并在servlet上下文中设置了messageConvertors。控制器代码电流:
//Restaurant is just a plain Java class,I can give it as a JSONObject,but I dont know how to convert that JSONObject to java so I can save the restaurant in the server. @RequestMapping(value = '/restaurant/add',method = RequestMethod.POST) @ResponseBody public String addRestaurantWebView(@RequestBody Restaurant restaurant){ModelAndView modelAndView = new ModelAndView();modelAndView.addObject('restaurant',new Restaurant());modelAndView.addObject(restaurant);this.restaurantService.addRestaurant(restaurant);return 'true'; }//Similarly,here,I don’t know how to convert the Restaurant’s list to JSONObject when there is a get Request. @RequestMapping(value = '/restaurant/listing',method = RequestMethod.GET) public @ResponseBody List<Restaurant> listAllRestaurants(){ModelAndView modelAndView = new ModelAndView();modelAndView.addObject('restaurant',new Restaurant());List<Restaurant> restaurantList = this.restaurantService.listRestaurants();modelAndView.addObject('listRestaurant',restaurantList);return restaurantList; }
我希望我的问题很清楚,如果有任何疑问,请告诉我。非常感谢。
相关文章:
1. python - 能通过CAN控制一部普通的家用轿车吗?2. python - beautifulsoup获取网页内容的问题3. Python爬虫如何爬取span和span中间的内容并分别存入字典里?4. mysql优化 - 关于mysql分区5. html5 - 只用CSS如何实现input框的宽度随框里输入的内容长短自动适应?6. 人工智能 - python 机器学习 医疗数据 怎么学7. centos7 编译安装 Python 3.5.1 失败8. mysql - 分库分表、分区、读写分离 这些都是用在什么场景下 ,会带来哪些效率或者其他方面的好处9. python - Django内使用filter过滤时间,只认年份不认月份是怎么回事?10. c++ - 请问MySQL_Connection::isReadOnly 怎么解决?
