其实通过逆向工程,然后去配置一些config,就可以实现,从Table到Model的相互转换,而且,对于下划线命名的Table字段,实现驼峰式命名的Model ,有时候我们只是做个测试,或者自己基于数据的表,想快速建立Model,怎么实现呢!!

三种方式

第一种 IDEA + 可多行编辑的文本编辑器

第二种 简单的编辑器(除了windows自带的),正则替换

第三种 IDEA插件

一、准备工作,好点的编辑器,支持多行编辑的,IDEA就可以,还有UE,Hbuilder等

1.1 先查出某张表的所有字段,copy 一下,这是下划线命名的

user_id

brief

create_time

district

email

enable

facebook_id

favourite

is_lock_time

last_login_time

nickname

pass_word

phone

photo

twitter_id

wechat_id

nick_review

photo_review

instagram_id

device

type

customer_id

复制到IDEA中,放到List中

启动多行编辑,IDEA中同时按住,Ctrl Shift Alt 操作鼠标上下拉,即可多行编辑,同时左边加上双引号,Ctrl一下,同时跳到右边,再加上双引号,加上逗号,就好了

二、代码示例,基于Hutool实现

@Test

public void camelTest11() {

ArrayList list = Lists.newArrayList("user_id",

"brief",

"create_time",

"district",

"email",

"enable",

"facebook_id",

"favourite",

"is_lock_time",

"last_login_time",

"nickname",

"pass_word",

"phone",

"photo",

"twitter_id",

"wechat_id",

"nick_review",

"photo_review",

"instagram_id",

"device",

"type",

"customer_id");

List collect = list.stream().map(e -> StrUtil.toCamelCase(e)).collect(Collectors.toList());

System.out.println(collect);

}

输出

userId

brief

createTime

district

email

enable

facebookId

favourite

isLockTime

lastLoginTime

nickname

passWord

phone

photo

twitterId

wechatId

nickReview

photoReview

instagramId

device

type

customerId

然后再接着,复制到model中,多行编辑,就会很快完成,整个过程两分钟之内就可以完成。

第二种,一种更简单的操作方式,使用正则替换

下划线转驼峰式

[_]{1,1}([a-z] replace U$1

replace(使用regix),这里不知道为什么只能一个个replace替换,不能Replace ALl操作

驼峰式转下划线

([A-Z]) replace _L$1

也是一样的无法批量替换,其实也很方便的

第三种,插件方式,应该更简单,我就没去试

idea 下划线字段转驼峰_Java如何实现数据库中表字段的下划线和驼峰式命名的Model相互转换,很方便的...-Go语言中文社区...相关推荐

  1. java采用匈牙利命名法_【Java】工具类,如何将匈牙利命名法转换成驼峰命名法-Go语言中文社区...

    一.概念介绍 1.1.匈牙利命名法:user_id,字母均小写,不同单词间用下划线分割: 1.2.驼峰命名法:userId,除了第一个单词的首字母小写,其余单词的首字母均大写,单词之间没有符号,仅仅通 ...

  2. 编译高性能linux so库,关于如何在linux环境下生成a库和so库(改,附图)-Go语言中文社区...

    一般linux环境下的链接库分为a库和so库,分别表示静态链接库和动态链接库,其作用是把C程序编译好做成一种可执行链接文件,c主程序文件调用这些程序的函数接口是可以使用a库或so库,在主程序中只需要i ...

  3. linux连接wpa wifi密码,Linux环境下使用WIFI模块:使用wpa_supplicant工具配置和连接WIFI-Go语言中文社区...

    使用wpa_supplicant工具配置和连接WIFI 实验版本及下载地址 wpa_supplicant:wpa_supplicant-2.7 链接: [http://w1.fi/wpa_suppli ...

  4. java字段描述符_Java 的方法签名与字段类型表示-[Ljava.lang.String;

    我们什么时候会接触到 Java 的方法签名呢?在进行 JNI 调用时,还有在看方法重载时.重载的方法是有不同的方法签名的,而是不区分返回值,而实际方法签名还揉入了返回值类型的,还有就是 javap - ...

  5. java 数据库字段_JAVA如何获得数据库的字段及字段类型

    标签: Java获取数据库的表中各字段的字段名,代码如下: import java.sql.Connection; import java.sql.DriverManager; import java ...

  6. android studio 驼峰,android studio 高级设置--驼峰选择,命名前缀,快速导包,Log 颜色等等-Go语言中文社区...

    本文主要内容来自 Dmytro Danylyk 在 Medium 的文章Configuring Android Studio.在此感谢!虽然使用Android Studio 的朋友有一点帮助. 前面的 ...

  7. mac安装mysql修改密码_Mac下安装MySQL 5.7.28并且修改root密码-Go语言中文社区

    0.前言 mysql8安装:https://blog.csdn.net/qq_21383435/article/details/80577038 1.下载 地址:https://www.mysql.c ...

  8. MySQL非分片字段查询_Mycat从入门到放弃-Go语言中文社区

    当初写这篇文章的初衷只是想提醒自己在用一个开源产品前不仅要了解其提供的功能,更要了解其功能和场景边界. 1.非分片字段查询 Mycat中的路由结果是通过分片字段和分片方法来确定的.例如下图中的一个My ...

  9. Java元数据区的概念_java之元数据(metadata)-Go语言中文社区

    什么是元数据? 元数据是指用来描述数据的数据,更通俗一点,就是描述代码间关系,或者代码与其他资源(例如数据库表)之间内在联系的数据.在一些技术框架,如struts.EJB.hibernate就不知不觉 ...

最新文章

  1. iOS架构-静态库.a 和.framework的区别(0)
  2. LYNC 和 Exchange 整合手记之R2 如何下如何安装补丁
  3. 字符串和字符数组的关系
  4. seir模型启发式算法_好文荐读|选址问题的启发式方法
  5. 金融科技监管何时才能完善?
  6. 1024带给程序员的福利
  7. python3.7语法错误_Tweepy不会安装在Python3.7上;显示“语法错误”
  8. 世界之窗如何保存html,世界之窗(文字版)
  9. VC程序运行时间测试
  10. NumberFormat 的使用
  11. [计算流体力学] NS 方程的速度压力法差分格式
  12. galaxy s8 android pc,【三星GALAXYS8评测】DeX套件替代PC办公环境_三星 GALAXY S8_手机评测-中关村在线...
  13. Java分析学生成绩
  14. 一文读懂authorized_keys和known_hosts
  15. 【线性代数笔记】幂等矩阵的性质
  16. 如何添加/去掉开机的启动项
  17. 天龙八部 - 其它 - 属性伤害的计算方法
  18. SQL Pivot 行转列
  19. 2023北京物资学院计算机考研信息汇总
  20. 千亿资产路劲掉队 单伟豹无心恋战地产圈?

热门文章

  1. vue jsx 使用 自定义组件
  2. C# 全角半角相互转换
  3. 计算机里创建本地磁盘分区,大神教你如何将本地硬盘进行分区!
  4. spring-boot项目打war包并部署到本地的tomcat容器
  5. 湖南师大计算机学院院长,董新汉(数学与计算机科学学院)老师 - 湖南师范大学 - 院校大全...
  6. cmd oracle 连接实例_C#连接Oracle数据库的实例方法
  7. (四)ElasticSearch之数据
  8. 文档服务器设置密码,文档服务器设置密码
  9. 小程序云开发实战 - 口袋工具之“历史上的今天”
  10. 面向对象:包装类、对象处理、类成员