Java程序中自动导入MYSQL数据库程序

23 篇文章 0 订阅
22 篇文章 0 订阅

   最近项目中需要需要一个功能,为了方便使用人员不用通过命令或者工具创建数据库。在这里只要知道MYSQL的基本命令就可以了。首先说说方案,在启动应用程序之前,就需要检查数据库中是否已经存在要配置的数据库名称,如果有则不添加新的数据库名称,如果没有,则需要通过连接创建数据库。然后通过命令中的mysql  -uroot -p123456 testjava < /tmp/testjava.sql.整体思路是比较简单的,下面看看代码实现。

  

public class CheckDatabaseAndImport {

	private String url = "jdbc:mysql://127.0.0.1:3306/testjava";
	private String user = "root";
	private String password = "123456";
	private static final Logger logger = Logger.getLogger(CheckDatabaseAndImport.class.getName());

	public void start() {
		try {
			Class.forName("com.mysql.jdbc.Driver");
			DriverManager.getConnection(url, user, password);
			logger.info("the database have exist");
		} catch (Exception e) {
			url = "jdbc:mysql://127.0.0.1:3306/test";
			try {
				Class.forName("com.mysql.jdbc.Driver");
				Connection conn = DriverManager.getConnection(url, user, password);
				Statement stat = conn.createStatement();
				// 创建数据库hello
				stat.executeUpdate("create database testjava");
				logger.info("creat database proudlink");
				stat.close();
				conn.close();
				String path = System.getProperty("user.dir") + "/webapps/JettyHost/WEB-INF/classes/config/testjava.sql";
				logger.info("path:" + path);
				String statement = "mysql  -uroot -p123456 proudlink_test<"+path;
				try {
					String[] comands = new String[] { "/bin/sh", "-c", statement };
					Runtime.getRuntime().exec(comands);
					logger.info("import database success");
				} catch (Exception e2) {
					logger.info("error", e2);
				}
			} catch (Exception e1) {
				logger.error("connect database test error",e1);
			}
		}

	}
}
上面就实现了在运行应用程序的时候导入数据库,如果已经存在则不需要导入。方便用户在终端设备比较多的情况下。谢谢!

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值