JAVA基础知识库

这篇博客介绍了Java中检查Object对象是否为空或空字符串的方法,并展示了如何设置Excel表格自适应列宽高。同时,文章讲解了CLOB大字段的处理方式,以及在Springboot项目中解决线程中Mapper注入报空指针的方案。此外,还分享了设置Excel表格样式的代码,并演示了如何将Java后台的多个值字符串传递到XML中。
摘要由CSDN通过智能技术生成

1、判断Object对象为空或空字符串

/**
* 判断Object对象为空或空字符串
* @param obj
* @return
*/
public static Boolean isObjectNotEmpty(Object obj) {
    String str = ObjectUtils.toString(obj, "");
    Boolean flag = StringUtils.isNotBlank(str);
    return flag;
}

2、设置Excel表格导出自适应列宽高
Workbook wb = new Workbook();
Worksheet worksheet = wb.getWorksheets().get(0);
worksheet.autoFitRows();// 设置Excel自适应行高
worksheet.autoFitColumns();// 设置Excel自适应列宽

3、CLOB大字段处理

Map<String, Object> khbzMap = new HashMap<String, Object>();
if(selectList.size() > 0){
   for(int i = 0;i< selectList.size();i++){
    khbzMap.put("GUIDELINEPFBZ",selectList.get(i).get("GUIDELINEPFBZ") == null ? "" : selectList.get(i).get("GUIDELINEPFBZ"));
    Map<String, Object> responseMap = formatResponseMap(khbzMap);
    String GUIDELINEPFBZ = responseMap.get("GUIDELINEPFBZ") == null ? "" : responseMap.get("GUIDELINEPFBZ").toString();
    selectList.get(i).put("GUIDELINEPFBZ", GUIDELINEPFBZ);
   }   
  }
  return JSONArray.fromObject(selectList).toString();
  
  
  public Map<String, Object> formatResponseMap(Map<String, Object> map) {
  Set<String> set = map.keySet();
  for (Iterator<String> iterator = set.iterator(); iterator.hasNext();) {
   String key = iterator.next();
   // 判断数据是否是CLOB如果是对字段进行处理
   // 2018-01-12 09:56:14 CLOB 修改为Clob 解决框架更换Druid连接池导出CLOB解析错误问题
   if (map.get(key) instanceof Clob) {
    Clob clob = (Clob) map.get(key);
    try {
     map.put(key, clob.getSubString((long) 1, (int) clob.length()));
    } catch (SQLException e) {
     e.printStackTrace();
    }
   }
   if (map.get(key) instanceof CLOB) {
    CLOB clob = (CLOB) map.get(key);
    try {
     map.put(key, clob.getSubString((long) 1, (int) clob.length()));
    } catch (SQLException e) {
     e.printStackTrace();
    }
   }
  }
  return map;

 }

4、Springboot项目线程中无法注入Mapper,报空指针的解决方案

PmPskhKhsjdrMapper pmPskhKhsjdrMapper = SpringContextUtil.getBean(PmPskhKhsjdrMapper.class);
// 考核结果等次信息(代码值:好、较好、一般、较差、不确定等次)
List<PmPSKH_DM_01> KHDCList = pmPskhKhsjdrMapper.getKHJGDCList(requestMap);

5、设置Excel表格样式

worksheet.autoFitRows();// 设置Excel自适应行高
worksheet.autoFitColumns();// 设置Excel自适应列宽

6、java后台向XML传入拼接的多个值字符串,如A00S,如下

/**
 * 将list转换为字符串
 * @param list
 * @return
 */
public static String listToString(List<String> list) {
    StringBuilder sb = new StringBuilder();
    if (list != null && list.size() > 0) {
        for (int i = 0; i < list.size(); i++) {
            if (i < list.size() - 1) {
                sb.append(list.get(i) + ",");
            } else {
                sb.append(list.get(i));
            }
        }
    }
    return sb.toString();
}
if(listA00S != null && listA00S.size() > 0){
    map.put("A00Arr" , listToString(listA00S));
}
XML接收解析
<choose>
    <when test="A00Arr != null and A00Arr != ''">
        AND PD.A00 IN (${A00Arr})
    </when>
    <otherwise>
        AND PD.B00 = #{B00}
    </otherwise>
</choose>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值