beanUtils 方法

此方法会抛出的异常:
1、找不到原始的bean 2、使用此方法必须捕捉异常。
二、此文的Data全部为获取的对象。

//踩坑分析
List projectlist = projectAssembl.getProjectList(userOrgRelation);        
   //beanutils复制数据问题,必须每次进入for循环new出一个新对象,才能保证数据正确性。        
for (int i = 0; i < projectlist.size();i++){ 
       ProjectDto pj = newProjectDto();                   BeanUtils.copyProperties(pj,projectlist.get(i));            
}     

2、两个包(Spring和apache 的包)

1、packageorg.springframework.beans;中的
     BeanUtils.copyProperties(A,B); 是A中的值付给B
    FinCpDocDO  finCpDoc = finCpDocService.selectByDocNo(orderNo);
    FinCpDocDto finCpDto = new FinCpDocDto();
    if (finCpDoc == null){
       throw new ServiceException("查无该订单" + "orderNo:" + orderNo);
    }
    try{
       BeanUtils.copyProperties(finCpDoc, finCpDto);
       }

2、packageorg.apache.commons.beanutils;(常用)
     BeanUtils.copyProperties(A,B);
      是B中的值付给A

    for(OboFeeDO feeDO : oboFeeList){
        if(feeDO.getPayTime()!=null){
            ErpOboFeeDto feeDto = new ErpOboFeeDto();
            BeanUtils.copyProperties(feeDto, feeDO);
            oboFeList.add(feeDto);
        }
    }

tobean()和BeanUtils.copyProperties(dto, tq);(后赋前)方法。(这两个方法必须保持安卓和后台数据库字段唯一对应)

(1)业务层处理

public boolean saveQuaAcceptance(QuaAcceptanceDto dto) throws Exception     {
    TQuaAcceptance tq = new TQuaAcceptance();
    if(dto!=null){
     try {
//此方法拿不到时间类型的值,可以通过get方法获取到时间类型的值。设置单个属性值。
    BeanUtils.copyProperties(dto, tq);(后赋前)
    return true;
    } catch (Exception e) {
        e.printStackTrace();
    }
  }
return false;
}

(2)App业务层处理方式。

    //从安卓获取对象。
String date = request.getParameter("date");
     //工具类
Util u = new Util();
//调用解码方法,参考如下
QuaAcceptanceDto dto = (QuaAcceptanceDto) u.getRequestDate( data,QuaAcceptanceDto.class);

2.解决字符串乱码问题

request.setCharacterEncoding(“utf-8”);//手机端默认为utf—8格式的;全局统一设置

response.setCharacterEncoding(“utf-8”);//返回给手机端的数据字符格式。

3、

public Object getRequestDate(String date, Class objClass) {

    //先转换对象类型。
    JSONObject json = JSONObject.fromObject(date);
    // 将一个json的字符串转化成为java Bean。并将所有的属性赋值过去。
    Object obj = JSONObject.toBean(json, objClass);
    return obj;
}

4、

//json数据解码封装方法      
    publicString getURLDecoder(String data){
       Strings="";
       try {
          s =URLDecoder.decode(data, "gbk");
       } catch(UnsupportedEncodingException e) {
         e.printStackTrace();
       }
       returns;
   }

5、

try { 
    //获取json对象中的属性值。处理时间问题。 
    JSONObject jsonObject = JSONObject.fromObject(data);
    //获取属性值。
    String AcceptTime = (String)jsonObject.get("AcceptTimeStr"); 
    // 转换时间类型 
    SimpleDateFormat sim = new SimpleDateFormat("yyyy-MM-ddHH:mm"); 
    Date date = sim.parse(AcceptTime); 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值