将Map中的key由下划线转换为驼峰工具类(例:USER_TYEP转为userType)

前提:最近使用struts2+spring+hibernate集成框架做项目,突然从springmvc+spring+mybatis转过来不是很适应,尤其是从数据库查出来的数据不是java熟悉的驼峰格式,对了,数据库用的是oracle。所以就想着把数据库大写加下划线格式(USER_TYPE)类型的key转成java熟悉的驼峰格式,就有了该文章的思路。

 

/**
	   * 将Map中的key由下划线转换为驼峰
	   *
	   * @param map
	   * @return
	   */
	  public Map<String, Object> formatHumpName(Map<String, Object> map) {
	    Map<String, Object> newMap = new HashMap<String, Object>();
	    Iterator<Map.Entry<String, Object>> it = map.entrySet().iterator();
	    while (it.hasNext()) {
	      Map.Entry<String, Object> entry = it.next();
	      String key = entry.getKey();
	      String newKey = toFormatCol(key);
	      newMap.put(newKey, entry.getValue());
	    }
	    return newMap;
	  }

	  public String toFormatCol(String colName) {
	    StringBuilder sb = new StringBuilder();
	    String[] str = colName.toLowerCase().split("_");
	    int i = 0;
	    for (String s : str) {
	      if (s.length() == 1) {
	        s = s.toUpperCase();
	      }
	      i++;
	      if (i == 1) {
	        sb.append(s);
	        continue;
	      }
	      if (s.length() > 0) {
	        sb.append(s.substring(0, 1).toUpperCase());
	        sb.append(s.substring(1));
	      }
	    }
	    return sb.toString();
	  }
	

优点:解决了大部分数据类型的字段转换。

缺点:对于日期格式的字段,还是需要手动转换。

没有想到怎么更好的解决该问题!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值