欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Android 客户端通过内置API(HttpClient) 访问 服务器(用Spring MVC 架构) 返回的json数据全过程  

程序员文章站 2022-07-16 08:31:58
...

************************************************************服务器端代码**************************************************************************

Spring Web MVC(Servlet) 具体细节就不说了,比较不一样的地方,下面会注明!

1. web.xml 的内容如下:


2. foodcenter-servlet.xml 的内容如下:


3. 子控制器FindFoodListController.java


4. FoodServiceImpl.java


5.IFoodService.java

6.Food.java


7.Spring Web MVC 中 将ModelAndView 中的数据自动转换成json ,靠的是jackjson 中 连个jar 包 (这个下载大本营里有下,花了我2积分哦)

jackson-core-asl-1.4.2.jar

jackson-mapper-asl-1.4.2.jar


*************************************以上是服务器端代码,已全部贴完!**********************************************

访问链接是: http://192.168.1.104:8088/FCAS/findFoodList.json?typeId=1


***************************************************************************Android 客户端 访问部分************************************************************

下面进入 Android 客户端访问部分(这里暂不贴 界面,用android 的单元测试 来 测试 服务器返回的json 数据是什么样的

8. GetFoodListTest.java



9. 激动人心的时刻-----> 结果是啥?

日志记录为:

07-19 16:12:53.282: INFO/GetFoodListTest(1287): {"TYPE_ID":1,"FOOD_LIST":[{"name":"鱼香肉丝","id":1,"price":12.0,"notes":"好吃的不得了-鱼香肉丝","foodTypeId":1,"kouWeiScore":4.5,"hotLevel":5.0},{"name":"农家小炒肉","id":2,"price":15.0,"notes":"好吃的不得了-农家小炒肉","foodTypeId":1,"kouWeiScore":3.7,"hotLevel":4.3},{"name":"韭菜炒蛋","id":3,"price":10.0,"notes":"好吃的不得了-韭菜炒蛋","foodTypeId":1,"kouWeiScore":2.6,"hotLevel":3.0},{"name":"回锅肉","id":4,"price":13.0,"notes":"好吃的不得了-回锅肉","foodTypeId":1,"kouWeiScore":3.1,"hotLevel":3.8},{"name":"宫保鸡丁","id":5,"price":14.0,"notes":"好吃的不得了-宫保鸡丁","foodTypeId":1,"kouWeiScore":3.7,"hotLevel":5.0},{"name":"苦瓜炒蛋","id":6,"price":9.0,"notes":"好吃的不得了-宫保鸡丁","foodTypeId":1,"kouWeiScore":4.9,"hotLevel":4.7},{"name":"莴笋肉片","id":7,"price":10.0,"notes":"好吃的不得了-莴笋肉片","foodTypeId":1,"kouWeiScore":2.6,"hotLevel":3.9}]}


我把上面{} 里的东西 放到一个foodlist.json 文件中,格式化后的内容如下:


10. OK! 返回数据正确。


************************************************Spring 是用ObjectMapper 将 数据转换成json 数据的*****************************

下面自己写了个转换的例子:

ObjectMapperTest.java


上述程序输出的是:

{"foodlist":[{"id":1,"kouWeiScore":4.5,"price":12.0,"hotLevel":5.0,"name":"鱼香肉丝","notes":"好吃啊,真的!"}]}

format 下:

{
"foodlist" : [{
"id" : 1,
"kouWeiScore" : 4.5,
"price" : 12.0,
"hotLevel" : 5.0,
"name" : "鱼香肉丝",
"notes" : "好吃啊,真的!"
}]
}


好吧,就到这里了。基本架子搭好,接着,就用这个架子来 实现 Android 客户端+Spring MVC 去做后面的项目。继续挖矿。。。。