MySQL导出表结构相关字段以及把字段由下划线转驼峰命名
生活随笔
收集整理的這篇文章主要介紹了
MySQL导出表结构相关字段以及把字段由下划线转驼峰命名
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
SELECTCOLUMN_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导出表结构相关字段以及把字段由下划线转驼峰命名的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 180525
- 下一篇: springboot 问题总结