From 55200ea20f1979aa74624007e2cebe2bb1ea4e92 Mon Sep 17 00:00:00 2001 From: zhangmeng <1334717033@qq.com> Date: Wed, 22 Feb 2023 18:10:42 +0800 Subject: [PATCH] =?UTF-8?q?mysql=20=E4=BB=A3=E7=A0=81=E7=94=9F=E6=88=90=20?= =?UTF-8?q?2023=E5=B9=B42=E6=9C=8822=E6=97=A518:10:35?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/MySQLCodeGenController.java | 63 ++++++++++++++----- src/main/resources/fxml/mysql-code-gen.fxml | 13 ++-- 2 files changed, 56 insertions(+), 20 deletions(-) diff --git a/src/main/java/com/zhangmeng/tools/controller/MySQLCodeGenController.java b/src/main/java/com/zhangmeng/tools/controller/MySQLCodeGenController.java index 411e71a..ef3847c 100644 --- a/src/main/java/com/zhangmeng/tools/controller/MySQLCodeGenController.java +++ b/src/main/java/com/zhangmeng/tools/controller/MySQLCodeGenController.java @@ -108,19 +108,19 @@ public class MySQLCodeGenController { private TextField controller_package_name_field; @FXML - private TableColumn column_name; + private TableColumn column_name; @FXML - private TableColumn column_type; + private TableColumn column_type; @FXML - private TableColumn bean_field_name; + private TableColumn bean_field_name; @FXML - private TableColumn bean_field_type; + private TableColumn bean_field_type; @FXML - private TableColumn bean_field_value; + private TableColumn bean_field_value; @FXML private TableView tableView; @@ -145,9 +145,13 @@ public class MySQLCodeGenController { @FXML private ComboBox comboBox_table; + @FXML + private ComboBox comboBox_data_base; + private SimpleObjectProperty bean_info = new SimpleObjectProperty<>(); - private ObservableList table_list = FXCollections.observableArrayList(); + private ObservableList table_list = FXCollections.observableArrayList(); + private ObservableList data_base_list = FXCollections.observableArrayList(); public static final String path = "d:/generate"; public static final String bean_package_name = "com.dashidao.server.model"; @@ -191,18 +195,48 @@ public class MySQLCodeGenController { bean_field_value.setPrefWidth(width); comboBox_table.getSelectionModel().selectedItemProperty().addListener((observable, oldValue, newValue) -> { - if(newValue != null){ - log.info("选择的表名为:{}",newValue); + if (newValue != null) { + log.info("选择的表名为:{}", newValue); table_name.setText(newValue); } }); + + comboBox_data_base.getSelectionModel().selectedItemProperty().addListener((observable, oldValue, newValue) -> { + if (newValue != null) { + log.info("选择的数据库名为:{}", newValue); + data_base.setText(newValue); + update_select_data_base(); + } + }); + } + + private void update_select_data_base() { + String text = data_base.getText(); + getJdbcTemplate(); + log.info("update_select_data_base:{}", text); + this.jdbcTemplate.execute("use `" + text + "`"); } @FXML - public void save_code(){ + public void get_all_data_base() { + log.info("获取所有数据表....."); + data_base_list.clear(); + getJdbcTemplate(); + List> maps = this.jdbcTemplate.queryForList("show databases"); + for (Map map : maps) { + log.info("map->{}", map.toString()); + data_base_list.add(map.get("Database").toString()); + } + comboBox_data_base.setItems(data_base_list); + comboBox_data_base.getSelectionModel().select(0); + data_base.setText(comboBox_data_base.getSelectionModel().getSelectedItem()); + } + + @FXML + public void save_code() { log.info("代码生成保存!"); GenerateDetail generateDetail = bean_info.getValue(); - if (generateDetail == null){ + if (generateDetail == null) { AlertUtils.alert_warning("请预览之后在进行操作!"); return; } @@ -245,14 +279,13 @@ public class MySQLCodeGenController { } @FXML - public void fetch_table(){ + public void fetch_table() { table_list.clear(); getJdbcTemplate(); - List> maps = this.jdbcTemplate.queryForList - ("SELECT table_name, table_type, TABLE_COMMENT FROM information_schema.tables WHERE table_schema = (select database()) ORDER BY table_name DESC"); + List> maps = this.jdbcTemplate.queryForList("SELECT table_name, table_type, TABLE_COMMENT FROM information_schema.tables WHERE table_schema = (select database()) ORDER BY table_name DESC"); for (Map map : maps) { String table_name = (String) map.get("table_name"); - log.info("table_name:{}",table_name); + log.info("table_name:{}", table_name); table_list.add(table_name); } comboBox_table.setItems(table_list); @@ -281,7 +314,7 @@ public class MySQLCodeGenController { jdbcTemplate = new JdbcTemplate(); DruidDataSource datasource = new DruidDataSource(); - String url = "jdbc:mysql://"+ ip_address.getText() +": " + port.getText() + "/" + data_base.getText() + "?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true"; + String url = "jdbc:mysql://" + ip_address.getText() + ": " + port.getText() + "/" + data_base.getText() + "?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true"; String driverClassName = "com.mysql.cj.jdbc.Driver"; datasource.setUrl(url); datasource.setUsername(username.getText()); diff --git a/src/main/resources/fxml/mysql-code-gen.fxml b/src/main/resources/fxml/mysql-code-gen.fxml index 4ba6e1f..d1e81de 100644 --- a/src/main/resources/fxml/mysql-code-gen.fxml +++ b/src/main/resources/fxml/mysql-code-gen.fxml @@ -45,14 +45,17 @@