日期:2014-05-17  浏览次数:20678 次

如何将一个文件生成json数据返回给客户端
我想实现这样一个功能,servlet读取一个文件,比如说这个文件是一个图片,想转换成json数据后,通过客户端读取这个json的图片,并显示出来,能实现吗?

------解决方案--------------------
图片最好和其他信息分开
------解决方案--------------------
把图片内容转换为base64编码放到json中,页面面上显示图片的地址设置为:动态地址(如/imgshowservlet?base64code=你的base64编码)。在那个imgshowservlet代码里进行反编码得到二进制数据在response中用流输出。这种方式只能输出小图片,因为get参数长度有限制,图片大了会导致参数过长,无法完全传送过去。
这么做也就是能做个demo,实际上最好单独用程序提取这个图片,比如json里面只包含图片的索引信息,如文件名,或者你保存图片在数据库内,json止包含图片记录的id。通过Img的src传递参数给专门读图片的servlet,让这个servlet再读一遍。