栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java导入 .sql文件到数据库

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java导入 .sql文件到数据库

1.链接数据库类
import java.sql.*;
import java.util.List;


public class DBConnection {
    public  Connection getConnection(){
        Connection con=null;
        try {
            Class.forName("com.mysql.jdbc.Driver");
            con= DriverManager.getConnection("jdbc:mysql://10.30.10.124:3306/sati_code","root","123456" );
        } catch (ClassNotFoundException e) {
            System.out.println("没有找到数据库驱动");
        } catch (SQLException e) {
            System.out.println("数据库连接失败");
        }
        return con;
    }

    public static void close(Connection con){
        if(con!=null){
            try {
                con.close();
            } catch (SQLException e) {
                System.out.println("数据库关闭异常");
            }
        }
    }
    public boolean executeBatchByStatement(List sqlList) {
        Connection conn=null;
        boolean ret = false;
        if (conn != null) {
            Statement stmt = null;
            try {
                conn.setAutoCommit(false);
                stmt = conn.createStatement();
                for (String s : sqlList) {
                    stmt.addBatch(s);
                }
                stmt.executeBatch();
                conn.commit();
                ret = true;
            } catch (BatchUpdateException e) {
                e.printStackTrace();
                try {
                    conn.rollback();
                } catch (SQLException e1) {
                    e1.printStackTrace();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            } finally {
                try {
                    conn.setAutoCommit(true);
                    if (stmt != null) {
                        stmt.close();
                        stmt = null;
                    }
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
        return ret;
    }


}

2.SQL工具类

import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.support.EncodedResource;
import org.springframework.jdbc.datasource.init.scriptUtils;
import org.springframework.stereotype.Component;

import java.io.*;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
import java.util.*;


@Component
public class ExecuteSQLUtil {

    public boolean readSQLFile(InputStreamReader fileReader) {
        BufferedReader bufferedReader = new BufferedReader(fileReader);
        try {

            StringBuilder sBuilder = new StringBuilder("");
            String str = bufferedReader.readLine();
            while (str != null) {
                // 去掉一些注释,和一些没用的字符
                if (!str.startsWith("#") && !str.startsWith("
@RestController
public class TestController {

    @Autowired
    ExecuteSQLUtil executeSQLUtil;


    @PostMapping("/executeMysql")
    public String executeMysql(@RequestParam(value = "file") MultipartFile serviceFile) {
        try {
            //把MultipartFile转成字节流
            InputStream inputStream = serviceFile.getInputStream();
            //把inputStream 转到 InputStreamReader 用与BufferedReader缓冲流
            InputStreamReader  fileReader = new InputStreamReader(inputStream,"UTF-8");
            executeSQLUtil.readSQLFile(fileReader);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return "ok";
    }






}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/572636.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号