电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

springBoot下實現java自動創建數據庫表

瀏覽:3日期:2023-02-27 16:33:43
SpringBoot環境啟動項目創建數據庫表使用環境

windows+eclipse+mysql+navicat

步驟

1.創建SpringBoot項目

2.新建數據庫,配置連接信息

3.編寫初始化數據庫表類

4.運行查看結果

1.創建SpringBoot項目

關于如何創建SpringBoot項目不再詳細描述,只要創建一個可以運行的SpringBoot項目就行。

2.新建數據庫,配置連接信息

2.1 新建數據庫

打開Navicat新建一個Mysql連接(連接信息如用戶名,密碼記好,下面配置連接信息要用),建立好連接后新建一個數據庫,設置數據庫名稱為'nfsj',這個根據自己喜好設置,記得在下面配置信息修改就行。

2.2 配置連接信息

項目中找到如下圖文件,打開文件添加配置:

springBoot下實現java自動創建數據庫表

打開上述文件,添加如下代碼:

# datasourcefolivora.datasource.url=jdbc:mysql://localhost:3306/nfsj?useUnicode=true&characterEncoding=utf-8folivora.datasource.username=rootfolivora.datasource.password=123456folivora.datasource.driver-class-name=com.mysql.jdbc.Driver

注意:這里的配置信息天上你創建數據庫時的配置信息。

3.編寫初始化數據庫表類

在項目目錄src/main/java下新建一個包,報名任意,在包下新建一個類,類名稱為”InitSysAdminDivisions.java'(類名稱也可以自己命名)。

InitSysAdminDivisions.java

package cn.idatatech.folivora.modules.sys.common;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import javax.annotation.PostConstruct;import org.springframework.beans.factory.annotation.Value;import org.springframework.stereotype.Repository;//SpringBoot單元測試啟動類注解//@RunWith(SpringRunner.class)//@SpringBootTest//@Component@Repository //繼承自@Component,作用于持久層/** * 如果配置文件沒有在默認目錄下,使用注解@PropertySource獲取,下面演示的是在多配置文件中獲取相同屬性名的值,以后置為準 * 單配置文件只要一個路徑參數就可以 *///@PropertySource({'classpath:application.properties','classpath:config/config.properties'}) public class InitSysAdminDivisions {@Value(value = '${folivora.datasource.driver-class-name}')private String driver; @Value(value = '${folivora.datasource.url}')private String url; @Value(value = '${folivora.datasource.username}')private String userName;@Value(value = '${folivora.datasource.password}')private String password;@PostConstructpublic void init() throws SQLException, ClassNotFoundException{//連接數據庫Class.forName(driver);//測試url中是否包含useSSL字段,沒有則添加設該字段且禁用if( url.indexOf('?') == -1 ){url = url + '?useSSL=false' ;}else if( url.indexOf('useSSL=false') == -1 || url.indexOf('useSSL=true') == -1 ){url = url + '&useSSL=false';}Connection conn = DriverManager.getConnection(url, userName, password);Statement stat = conn.createStatement();//獲取數據庫表名ResultSet rs = conn.getMetaData().getTables(null, null, 'sys_admin_divisions', null);// 判斷表是否存在,如果存在則什么都不做,否則創建表if( rs.next() ){return;}else{// 先判斷是否純在表名,有則先刪除表在創建表//stat.executeUpdate('DROP TABLE IF EXISTS sys_admin_divisions;CREATE TABLE sys_admin_divisions('//創建行政區劃表stat.executeUpdate('CREATE TABLE sys_admin_divisions('+ 'ID varchar(32) NOT NULL COMMENT ’行政區劃ID(行政區劃代碼)這里不使用32位的UUID,使用全數字的行政區域代碼作為ID(如:440000)’,'+ 'TYPE varchar(50) DEFAULT NULL COMMENT ’類型(1省級 2市級 3區縣)’,'+ 'CODE varchar(50) DEFAULT NULL COMMENT ’字母代碼’,'+ 'NAME varchar(100) DEFAULT NULL COMMENT ’名稱’,'+ 'PINYIN varchar(100) DEFAULT NULL COMMENT ’拼音’,'+ 'PARENT_ID varchar(32) DEFAULT NULL COMMENT ’上級行政區劃數字代碼’,'+ 'IS_DISPLAY int(1) DEFAULT NULL COMMENT ’是否顯示( 0:否 1:是 )’,'+ 'SORT bigint(20) DEFAULT NULL COMMENT ’排序標識’,'+ 'DEL_FLAG int(1) DEFAULT NULL COMMENT ’刪除標識(0:正常 1:已刪除)’,'+ 'PRIMARY KEY (ID)'+ ') ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=’行政區劃 (省市區)’;');}// 釋放資源stat.close();conn.close();}}

注:上面的建表邏輯是先判斷數據庫中是否存在要創建的表,如果有則返回不做任何操作。如果數據庫中不存在要創建的表,則創建新表。具體邏輯可以根據自己需求定義。

去掉判斷數據庫中是否存在表的判斷操作,也可以使用注釋掉的如果存在表則先刪除表在創建表(這樣會刪除原表中的數據)。

4.運行查看結果

找到項目中的Application.java類,運行該類,等運行完畢后再打開navicate查看自己的數據庫,發現數據庫中已經創建好了一個表為'sys_admin_divisions'的表和表中的相關字段。

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 切铝机-数控切割机-型材切割机-铝型材切割机-【昆山邓氏精密机械有限公司】 | jrs高清nba(无插件)直播-jrs直播低调看直播-jrs直播nba-jrs直播 上海地磅秤|电子地上衡|防爆地磅_上海地磅秤厂家–越衡称重 | 北京中创汇安科贸有限公司| 诚暄电子公司首页-线路板打样,pcb线路板打样加工制作厂家 | 转向助力泵/水泵/发电机皮带轮生产厂家-锦州华一精工有限公司 | 陕西鹏展科技有限公司 | 超细|超微气流粉碎机|气流磨|气流分级机|粉体改性机|磨粉机|粉碎设备-山东埃尔派粉体科技 | 模具硅橡胶,人体硅胶,移印硅胶浆厂家-宏图硅胶科技 | 拖鞋定制厂家-品牌拖鞋代加工厂-振扬实业中国高端拖鞋大型制造商 | 衬四氟_衬氟储罐_四氟储罐-无锡市氟瑞特防腐科技有限公司 | 全屋整木定制-橱柜,家具定制-四川峨眉山龙马木业有限公司 | 磨煤机配件-高铬辊套-高铬衬板-立磨辊套-盐山县宏润电力设备有限公司 | 尾轮组_头轮组_矿用刮板_厢式刮板机_铸石刮板机厂家-双驰机械 | 定制/定做冲锋衣厂家/公司-订做/订制冲锋衣价格/费用-北京圣达信 | 咖啡加盟-咖啡店加盟-咖啡西餐厅加盟-塞纳左岸咖啡西餐厅官网 | 仿古瓦,仿古金属瓦,铝瓦,铜瓦,铝合金瓦-西安东申景观艺术工程有限公司 | HV全空气系统_杭州暖通公司—杭州斯培尔冷暖设备有限公司 | 杭州双螺杆挤出机-百科| 温室大棚建设|水肥一体化|物联网系统| MVE振动电机_MVE震动电机_MVE卧式振打电机-河南新乡德诚生产厂家 | 济南保安公司加盟挂靠-亮剑国际安保服务集团总部-山东保安公司|济南保安培训学校 | 法兰螺母 - 不锈钢螺母制造厂家 - 万千紧固件--螺母街 | 清水-铝合金-建筑模板厂家-木模板价格-铝模板生产「五棵松」品牌 | ptc_浴霸_大巴_干衣机_呼吸机_毛巾架_电动车加热器-上海帕克 | 水平筛厂家-三轴椭圆水平振动筛-泥沙震动筛设备_山东奥凯诺矿机 包装设计公司,产品包装设计|包装制作,包装盒定制厂家-汇包装【官方网站】 | 地磅-电子地磅维修-电子吊秤-汽车衡-无人值守系统-公路治超-鹰牌衡器 | 黄石妇科医院_黄石东方女子医院_黄石东方妇产医院怎么样 | 自动气象站_农业气象站_超声波气象站_防爆气象站-山东万象环境科技有限公司 | 防伪溯源|防窜货|微信二维码营销|兆信_行业内领先的防伪防窜货数字化营销解决方案供应商 | 合肥注册公司|合肥代办营业执照、2024注册公司流程 | 一礼通 (www.yilitong.com)-企业礼品解决方案一站式服务平台 | 浇钢砖,流钢砖_厂家价低-淄博恒森耐火材料有限公司 | 超细粉碎机|超微气流磨|气流分级机|粉体改性设备|超微粉碎设备-山东埃尔派粉碎机厂家 | 小型UV打印机-UV平板打印机-大型uv打印机-UV打印机源头厂家 |松普集团 | 扒渣机,铁水扒渣机,钢水扒渣机,铁水捞渣机,钢水捞渣机-烟台盛利达工程技术有限公司 | 蔬菜清洗机_环速洗菜机_异物去除清洗机_蔬菜清洗机_商用洗菜机 - 环速科技有限公司 | 海水晶,海水素,海水晶价格-潍坊滨海经济开发区强隆海水晶厂 | 彼得逊采泥器-定深式采泥器-电动土壤采样器-土壤样品风干机-常州索奥仪器制造有限公司 | 依维柯自动挡房车,自行式国产改装房车,小型房车价格,中国十大房车品牌_南京拓锐斯特房车 - 南京拓锐斯特房车 | 上海办公室装修,办公楼装修设计,办公空间设计,企业展厅设计_写艺装饰公司 | 长江船运_国内海运_内贸船运_大件海运|运输_船舶运输价格_钢材船运_内河运输_风电甲板船_游艇运输_航运货代电话_上海交航船运 |