java map重写 转大写、转驼峰
/**
* @author admin
* @Description
* 转大写
*/
public class HashMapUpper<V> extends HashMap<String, V> {
/**
* 复写put方法,因为Mybatis底层给Map赋值就是调用的put方法
*
* @param key
* @param value
* @return
*/
@Override
public V put(String key, V value) {
return super.put(key.toUpperCase(), value);
} /**
* 复写get方法
*
* @param key
* @return
*/
@Override
public V get(Object key) {
if (key instanceof String) {
return super.get(((String) key).toUpperCase());
} else {
return super.get(key);
}
}
}
/**
* @author admin
* @Description 将下划线转为驼峰格式
*/
public class HashMapToCamel<V> extends HashMap<String, V> { public static final char UNDERLINE = '_'; /**
* 复写put方法,因为Mybatis底层给Map赋值就是调用的put方法
*
* @param key
* @param value
* @return
*/
@Override
public V put(String key, V value) {
return super.put(underlineToCamel(key), value);
} /**
* 复写get方法
*
* @param key
* @return
*/
@Override
public V get(Object key) {
if (key instanceof String) {
return super.get(underlineToCamel(key + ""));
} else {
return super.get(key);
}
} /**
* 将下划线转为驼峰格式
*
* @param param
* @return
*/
public static String underlineToCamel(String param) {
if (param == null || "".equals(param.trim())) {
return "";
}
int len = param.length();
StringBuilder sb = new StringBuilder(len); for (int i = 0; i < len; i++) {
char c = param.charAt(i);
if (c == UNDERLINE) {
if (++i < len) {
sb.append(Character.toUpperCase(param.charAt(i)));
}
} else {
sb.append(Character.toLowerCase(param.charAt(i)));
}
}
return sb.toString();
} }
java map重写 转大写、转驼峰的更多相关文章
- java Map常用方法封装
java Map常用方法封装 CreationTime--2018年7月16日15点59分 Author:Marydon 1.准备工作 import java.util.HashMap; impo ...
- Java 阿拉伯数字转换为中文大写数字
Java 阿拉伯数字转换为中文大写数字 /** * <html> * <body> * <P> Copyright 1994 JsonInternational&l ...
- Mybatis,返回Map的时候,将Map内的Key转换为驼峰的命名
每次使用mybatis的时候,简单的连表查询,用Map接收的时候,都是像DB定义的字段一样,类似以下 student_name,student_id,没有转换为驼峰,但是又不能因为这一个定义一个jav ...
- 一文搞懂--Java中重写equals方法为什么要重写hashcode方法?
Java中重写equals方法为什么要重写hashcode方法? 直接看下面的例子: 首先我们只重写equals()方法 public class Test { public static void ...
- java Map实现的cache manager
一个模仿memcached的JAVA虚拟缓存工具,可以缓存java对象 import java.io.ByteArrayInputStream; import java.io.ByteArrayOut ...
- 【细说Java】Java的重写与隐藏
重写与隐藏,有些书上或介绍上可能名称不一样,但都大差不差.以前只了解重写,隐藏也听说过,但没有详细了解过,趁现在,整理一下这两方面的内容吧. 首先,先说一下概念方面的东西. 重写 重写:子类继承了父类 ...
- Java map 详解 - 用法、遍历、排序、常用API等
尊重原创: http://www.cnblogs.com/lzq198754/p/5780165.html 概要: java.util 中的集合类包含 Java 中某些最常用的类.最常用的集合类是 L ...
- java map遍历、排序,根据value获取key
Map 四种遍历: Map<String,String> map = new HashMap<String, String>(); map.put("one" ...
- java方法重写和super关键字
//java方法重写和super关键字 //在继承中,其实就是子类定义了和父类同名的方法 //就是方法,属性都是相通的 //重写限制: //被子类重写的方法不能拥有比父类方法更加严格的权限 //sup ...
- Java 异常 重写抛出异常限制
1 子类在重写父类抛出异常的方法时,要么不抛出异常,要么抛出与父类方法相同的异常或该异常的子类.如果被重写的父类方法只抛出受检异常,则子类重写的方法可以抛出非受检异常.例如,父类方法抛出了一个受检异常 ...
随机推荐
- centos 防火墙开放端口
centos防火墙开放端口 开启防火墙 systemctl start firewalld 开放指定端口 firewall-cmd --zone=public --add-port=<PORT& ...
- Warning: PHP Startup: Unable to load dynamic library 'php_pdo_oci.dll'处理
出现这样提示的原因可能有以下几种: (1)没有在php.ini中将extension=php_pdo_mysql.dll前面的分号去掉 在php.ini中分号表示注释,因为在配置时被注释掉了,所谓无法 ...
- 巴恩斯利蕨 The Barnsley Fern
巴恩斯利蕨学习链接 下面用R画一下: npts<-50000 point_mat<-matrix(data=NA,nrow=npts,ncol=2) list_fun<-list( ...
- base64 转图片
data:image+jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD//gA7Q1JFQVRPUjogZ2QtanBlZyB2MS4wICh1c2luZyBJSkcg% ...
- shell特殊符号
符号 含义 ; 命令分隔符 # 配置文件注释: root用户命令终端提示符 ~ 家目录 cd ~ - 上一次所在路径 cd - su - linux切换用户环境 ^ 非 [^abcd] $ ...
- ubuntu18 build opencv4 from source
1 安装依赖 ## Install dependencies sudo apt -y install build-essential checkinstall cmake pkg-config yas ...
- view 相关代码片段笔记
代码中动态创建view,并把AttributeSet加入到当前自定义的view中,动态创建属性相关 //https://blog.csdn.net/chenhuakang/article/detail ...
- 安装SSMS出现许可证被颁发者直接吊销
出现这种情况,使用以下链接下载rootsupd.exe程序:http://media.kaspersky.com/utilities/CorporateUtilities/rootsupd.zip 运 ...
- redis过期事件监听
1 修改 redis.conf配置文件: K Keyspace events, published with keyspace@ prefix事件 E Keyevent events, publish ...
- 【2】locust性能测试原理分析+登录测试脚本+总结
login_per_test1.py #对登录功能进行单点性能测试(一组测试数据)#发送首页请求,通过locust进行性能测试from locust import HttpLocust,task,T ...