欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

MySQL导出表结构相关字段以及把字段由下划线转驼峰命名

发布时间:2025/3/20 32 豆豆
生活随笔 收集整理的这篇文章主要介绍了 MySQL导出表结构相关字段以及把字段由下划线转驼峰命名 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

SELECT
COLUMN_COMMENT 中文名,UPPER(COLUMN_NAME) 字段名,UPPER(DATA_TYPE) 字段类型,CHARACTER_MAXIMUM_LENGTH 长度,IS_NULLABLE 是否为空 FROMINFORMATION_SCHEMA.COLUMNS where table_schema ='shwmm' AND table_name = 'gis_interface_veh_his_gps_data'

import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.LinkedHashMap; import java.util.Map;import com.alibaba.fastjson.JSONObject; import com.mysql.jdbc.Connection;/*** 工具类* MySQL中以“_”分割的列名格式化为驼峰命名的列名*/ public class FormatDbColumns {static final String DB_URL = "jdbc:mysql://localhost:3306/shwmm";// MySQL的JDBC URL编写方式:jdbc:mysql://主机名称:连接端口/数据库的名称static final String USER = "root";static final String PASS = "root";public static void main(String[] args) throws SQLException,Exception{Connection conn = null;Statement stat = null;// 注册驱动Class.forName("com.mysql.jdbc.Driver");// 创建链接conn = (Connection) DriverManager.getConnection(DB_URL,USER,PASS);String str = "am_alarm_detail";// 执行查询stat = conn.createStatement();String sql = "select LOWER(COLUMN_NAME) as columnName from information_schema.COLUMNS where table_name = '"+str+"'";ResultSet rs = stat.executeQuery(sql);// 输出查询结果int i = 0;Map<String,String> map = new LinkedHashMap<>();while(rs.next()){i++;String a = rs.getString("columnName");String b= camelCaseName(a);map.put(b,"xxx");System.out.println(b);}System.out.println(JSONObject.toJSONString(map));System.out.println(i);// 关闭try {if (rs != null) {rs.close();}} catch (SQLException e) {e.printStackTrace();} finally {try {if (stat != null) {stat.close();}} catch (SQLException e) {e.printStackTrace();} finally {try {if (conn != null) {conn.close();}} catch (SQLException e) {e.printStackTrace();}}}}public static String camelCaseName(String underscoreName) {StringBuilder result = new StringBuilder();if (underscoreName != null && underscoreName.length() > 0) {boolean flag = false;for (int i = 0; i < underscoreName.length(); i++) {char ch = underscoreName.charAt(i);if ("_".charAt(0) == ch) {flag = true;} else {if (flag) {result.append(Character.toUpperCase(ch));flag = false;} else {result.append(ch);}}}}return result.toString();} }

 

转载于:https://www.cnblogs.com/zplogo/p/9871089.html

总结

以上是生活随笔为你收集整理的MySQL导出表结构相关字段以及把字段由下划线转驼峰命名的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。