错误:
代码:
if(response.getStatusLine().getStatusCode()== HttpStatus.SC_OK){
//将响应请求的对象转换成实体形式的字符形式的参数
result= EntityUtils.toString(response.getEntity(), "utf-8");
System.out.println("result值:"+result.toString());
if((result.toString()).equals("error")||result==null||(result.toString()).length()==0){
Message msg=new Message();
msg.obj="sorry,用户名不存在,去注册吧~";
handler.sendMessage(msg);
}else{
//创建一个json对象
JSONObject jsonObject=new JSONObject(result.toString());
//将从后台获取的数据放到封装对象里面
User userinfo = new User();
userinfo.setUserid(jsonObject.getInt("userid"));
userinfo.setUsername(jsonObject.getString("username"));
userinfo.setUserpwd(jsonObject.getString("userpwd"));
userinfo.setUsernumber(jsonObject.getString("usernumber"));
userinfo.setUserorders(jsonObject.getString("userorders"));
userinfo.setUserimage(jsonObject.getString("userimage"));
userinfo.setUseraddress(jsonObject.getString("useraddress"));
userinfo.setUsersign(jsonObject.getString("usersign"));
Message msg=new Message();
msg.obj="success";
handler.sendMessage(msg);
}
}else{
Message msg=new Message();
msg.obj="INTERNETerror";
handler.sendMessage(msg);
}
解决方法:
是因为后台stucts返回数据时加入了html等等标签,出现了脏数据。
后来用了structs自带json格式的方法:
public String flowerinfo() {
//1--表示季节,2--表示节日,3--表示手工花,4--表示用途,5--表示颜色,6--表示价格
flowerlist=flowerDAO.findByFcategory(cateval);
return "flowerinfo";
}
flowerlist要get,set.
structs中配置:
<action name="getflowerinfo" class="getFlowerInfoAction" method="flowerinfo">
<result name="flowerinfo" type="json">
<param name="root">flowerlist</param>
</result>
</action>