transBean2Map,Dao层里的参数处理

Dao层里的:


public  void addPayOrderp1(com.tianjian.property.jieshun.entity.PayOrder payOrder) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException, IntrospectionException{
String sql = "INSERT INTO Park_PayOrder(carNo,AddTime)"
+ " VALUES(:carNo,:addTime)";
Map<String,Object> paramMap=BeanUtils.transBean2Map(payOrder);
this.namedJdbcTemplate.update(sql, paramMap);

}

//工具类:

import java.beans.BeanInfo;
import java.beans.IntrospectionException;
import java.beans.Introspector;
import java.beans.PropertyDescriptor;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.HashMap;
import java.util.Map;

public class BeanUtils {
 public static Map<String, Object> transBean2Map(Object obj) {
       if(obj == null){  
           return null;  
       }          
       Map<String, Object> map = new HashMap<>();


          try {
              BeanInfo beanInfo = Introspector.getBeanInfo(obj.getClass());
              PropertyDescriptor[] propertyDescriptors = beanInfo.getPropertyDescriptors();
              for (PropertyDescriptor property : propertyDescriptors) {
                  String key = property.getName();
                  // 过滤class属性
                  if (!key.equals("class")) {
                      // 得到property对应的getter方法
                      Method getter = property.getReadMethod();
                      Object value = getter.invoke(obj);


                      map.put(key, value);
                  }
              }
          } catch (IntrospectionException | InvocationTargetException | IllegalAccessException e) {
              e.printStackTrace();
          }
          return map;
   }  
}



public  void updatePayOrderpaystatus(com.tianjian.property.jieshun.entity.PayOrder payOrder) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException, IntrospectionException{
System.out.println(payOrder.getOrderNop()+"--------"+payOrder.getRemark()+"---------"+payOrder.getPayStatus());

String sql="UPDATE Park_PayOrder SET PayStatus=:PayStatus,Remark=:Remark  WHERE OrderNop=:OrderNop";
System.out.println("");

Map<String,Object> paramMap=new HashMap<>();
if(!isNull(payOrder.getPayStatus())){
paramMap.put("PayStatus", payOrder.getPayStatus());
}
if(!isNull(payOrder.getRemark())){
paramMap.put("Remark", payOrder.getRemark());
}
if(!isNull(payOrder.getOrderNop())){
paramMap.put("OrderNop", payOrder.getOrderNop());
}
System.out.println("paramMap:"+paramMap);
this.namedJdbcTemplate.update(sql, paramMap);
}











猜你喜欢

转载自blog.csdn.net/qq_23145857/article/details/78617687
今日推荐