精华内容
下载资源
问答
  • java中执行sql脚本

    2020-05-10 20:08:35
    在springboot项目中,要求的不是在项目启动的时候去执行sql脚本,而是需要再某个条件下去执行一些sql脚本,在本工程示例中,sql脚本是存放在resource/scripts目录下的: 在这次示例中使用的spring中的ScriptUtils来...

    在springboot项目中,要求的不是在项目启动的时候去执行sql脚本,而是需要再某个条件下去执行一些sql脚本,在本工程示例中,sql脚本是存放在resource/scripts目录下的:
    sql脚本存放的位置
    在这次示例中使用的spring中的ScriptUtils来执行的,代码如下:

    public String test(){
            try {
                File files = ResourceUtils.getFile("classpath:scripts");
                if(files != null && files.isDirectory()){
                    File[] listFiles = files.listFiles();
                    Connection conn = dataSource.getConnection();
                    for(File newFile : listFiles){
                        Resource resource = new FileSystemResource(newFile);
                        EncodedResource resourceDelegate = new EncodedResource(resource,"utf-8");
                        ScriptUtils.executeSqlScript(conn, resourceDelegate);
                    }
                    DataSourceUtils.releaseConnection(conn, dataSource);
                    return "执行成功";
                }
            } catch (ScriptException e) {
                e.printStackTrace();
            } catch (SQLException e) {
                e.printStackTrace();
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            }
            return "执行失败";
        }
    
    展开全文
  • 最近在研究电信相关项目,希望能对需要的人有所帮助!
  • 基于Oracle分页 MyEclipse完整工程SQL脚本 非常适合初学者 工程比较完整 导入脚本 和工程 部署后 即可运行 给学生讲课做Demo用的 其中注释写得比较详细 比较傻瓜了 相信每个人都能看懂了
  • 客车网上售票系统(Java源码+sql脚本)

    千次阅读 2018-04-07 14:01:00
    本实例为Java语言实现的客车网上售票系统, 系统提供了源码, 数据库脚本和相应的文档说明,文档经过修改可以做为论文使用,系统经过修改可以进行商用   点击右侧【下载实例】进行实例下载: 下载实例 ​ ...

    本实例为Java语言实现的客车网上售票系统, 系统提供了源码, 数据库脚本和相应的文档说明,文档经过修改可以做为论文使用,系统经过修改可以进行商用

     

    点击右侧【下载实例】进行实例下载:下载实例

    环境配置: MyEclipse + mysql + mysql客户端(sqlyog) + JDK1.7 + TOMCAT7

    开发工具下载请点击: http://www.wisdomdd.cn/Wisdom/category/getAllCategoryFile.htm

     

     

    项目包含内容(见下图):    

                    【b2csys】 实例源码

                    【b2csys_db.sql】 数据库脚本

                    【客车网上售票系统分析与设计 .doc】 为论文文档

    【实例简介】

     

    本系统分为两部分(可用于毕业设计):

    一、前台功能模块

    A.用户注册(游客进行该网站需要进行注册方可在系统中进行一系列与预订有关的活动)

    B.票务查询(旅客按出发地、到达地查询各车次的车票情况)

    C.车票销售(选择需要的车票,填写购买信息,比如:身份证号等,进行提交)

    D.改签(用户对已付款的订单车票信息进行变更操作)

    E.退票(用户对已付款的订单车票信息进行退货操作)

    F.信息浏览(查看管理员发布的各种信息)

    G.留言板(用户登陆后可以在留言板中发表留言,未登陆的用户则只能浏览其它用户发表的留言)

    H.个人信息修改

    二、后台系统管理部分

    A.用户管理(管理系统用户信息,作增删改查操作)

    B.票务管理(列车票务信息的增删改查)

    D.信息发布(管理员发布公告类新闻和图片类新闻)

    F.留言中心管理

    G.订单统计

    H.销售情况查询

    I.个人信息修改

     

     

    【实例截图】

     

    【项目配置】

    1. JDK设置为1.7

    2. 项目编码为UTF-8

    3. 项目中jsp的报错不用管

    3. 请根据本地数据库的用户名与密码进行本地化配置

    转载于:https://my.oschina.net/u/3743971/blog/1790738

    展开全文
  • java执行SQL脚本文件适用大多数据库

    千次阅读 2018-11-23 14:13:59
    利用ibatis的ScriptRunner执行sql文件,以下源码在mySql数据库测试通过。。oracl也测试通过,但需要更改驱动及相关信息。 maven项目工程需要引入相应jar包 <dependency>  <groupId>...

    利用ibatis的ScriptRunner执行sql文件,以下源码在mySql数据库测试通过。。oracl也测试通过,但需要更改驱动及相关信息。

    maven项目工程需要引入相应jar包

    <dependency>  
        <groupId>org.mybatis</groupId>  
        <artifactId>mybatis</artifactId>  
        <version>3.3.0</version>  
    </dependency>

    其他项目需要下载mybatis的jar包。。。。

    直接上源码::

    package Jacky.utils

    import java.io.FileInputStream;
    import java.io.InputStreamReader;
    import java.sql.Connection;
    import java.sql.DriverManager;

    import org.apache.ibatis.jdbc.ScriptRunner;
    import org.apache.log4j.Logger;

    /*
     * 当前设置能够保证文件的sql在同一个事务内执行,如果需要改变为错误仍然继续执行,
     * 只需修改参数:
     * conn.setAutoCommit(false);//改为true
     * runner.setAutoCommit(false);//该为true
     * runner.setStopOnError(true);//修改为false

     */
    public class ScriptRunnerExecSql {
        private static Logger LOG = Logger.getLogger(ScriptRunnerExecSql.class.getName());

        /**
         * 
        * @Title: execSqlFileByMysql
        * @Description: TODO()
        * @return void    返回类型
        * @param ip
        * @param port
        * @param userName
        * @param pwd
        * @param sqlFilePath
        * @param dbName
        * @throws Exception
         */
        public static void execSqlFileByMysql(String ip, String port, String userName, String pwd, String sqlFilePath,
                String dbName) throws Exception {

            String driver = "com.mysql.jdbc.Driver";
            String url = "jdbc:mysql://" + ip + ":" + port + "/" + dbName;

            Exception error = null;
            Connection conn = null;
            try {
                Class.forName(driver);
                conn = DriverManager.getConnection(url, userName, pwd);
    //          设置不自动提交
                conn.setAutoCommit(false);

                ScriptRunner runner = new ScriptRunner(conn);
    //          设置不自动提交
                runner.setAutoCommit(false);
                /* 
                 * setStopOnError参数作用:遇见错误是否停止;
                 * (1)false,遇见错误不会停止,会继续执行,会打印异常信息,并不会抛出异常,当前方法无法捕捉异常无法进行回滚操作,无法保证在一个事务内执行;
                 * (2)true,遇见错误会停止执行,打印并抛出异常,捕捉异常,并进行回滚,保证在一个事务内执行;
                 */
                runner.setStopOnError(true);

                /*
                 * 按照那种方式执行
                 * 方式一:true则获取整个脚本并执行;
                 * 方式二:false则按照自定义的分隔符每行执行;
                 */
                runner.setSendFullScript(false);

    //          定义命令间的分隔符
                runner.setDelimiter(";");
                runner.setFullLineDelimiter(false);

    //          设置是否输出日志,null不输出日志,不设置自动将日志输出到控制台
                runner.setLogWriter(null);

    //          如果又多个sql文件,可以写多个runner.runScript(xxx),
                runner.runScript(new InputStreamReader(new FileInputStream(sqlFilePath), "utf-8"));
                conn.commit();
            } catch (Exception e) {
                conn.rollback();
                LOG.error("执行sql文件进行数据库创建失败....", e);
                error = e;
            } finally {
                close(conn);
            }
            if (error != null) {
                throw error;
            }
        }


        private static void close(Connection conn) {
            try {
                if (conn != null) {
                    conn.close();
                }
            } catch (Exception e) {
                if (conn != null) {
                    conn = null;
                }
            }
        }

        public static void main(String[] args) {
            try {
                execSqlFileByMysql("192.168.2.23", "3306", "root", "root",
                        "C:\\Users\\Administrator\\Desktop\\business_collaboration.sql", "business_collaboration");
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
     

     

     

     

    展开全文
  • maven:sql-maven-plugin插件执行sql脚本

    千次阅读 2017-08-16 23:21:55
    sql-maven-plugin插件提供了sql脚本的执行功能,允许用户执行指定的sql脚本文件或语句。最近在进行一个项目是基于maven管理的java开发项目,其中有一个环节要对数据库初始化创建表,需要在maven中执行,正好有机会学习...

    sql-maven-plugin插件提供了sql脚本的执行功能,允许用户执行指定的sql脚本文件或语句。

    最近在进行一个项目是基于maven管理的java开发项目,其中有一个环节要对数据库初始化创建表,需要在maven中执行,正好有机会学习了sql-maven-plugin的使用.

    关于sql-maven-plugin的详细说明参见http://www.mojohaus.org/sql-maven-plugin

    下面的maven脚本实现的功能就是在mysql数据库中执行指定的sql脚本(create_tables.sql)来创建表:

    run-sql.xml

    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
      <groupId>yourGroupId</groupId>
      <artifactId>yourArtifactId</artifactId>
      <!--这里package不能使用默认的jar,否则不会执行插件-->
      <packaging>maven-plugin</packaging>
      <name>facelog-sql</name>
      <build>
        <plugins>        
          <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>sql-maven-plugin</artifactId>
            <version>1.5</version>
            <dependencies>
              <!-- 定义依赖的数据库驱动jar包(mysql) -->
              <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>5.1.43</version>
              </dependency>  
            </dependencies>
            <configuration>
              <!-- 定义数据库连接参数 -->
              <driver>com.mysql.jdbc.Driver</driver>
              <url>jdbc:mysql://localhost:3306/test</url>
              <username>root</username>
              <password></password>
              <!-- 指定要执行的sql脚本 'sql'文件夹为脚本所在文件夹下的子文件夹 -->
              <srcFiles>
                  <srcFile>${project.basedir}/sql/create_tables.sql</srcFile>
              </srcFiles>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </project>

    运行方式如下:

    # 因为上面的脚本我没有使用缺省的文件名pom.xml,所以maven执行的时候要用-f 指定文件名
    mvn -f run-sql.xml sql:execute

    定义多个独立执行的execution

    上面的脚本可以一次性执行一个或多个sql脚本,如果我们希望每个脚本可以在命令行分别独立执行,那么就要定义多个execution来实现。
    比如我们将删除表的语句和建表语句分成两个文件(clean_tables.sql,create_tables.sql),希望在命令行分别执行两个脚本,那么 上面脚本就修改成如下的样子:

    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
      <groupId>net.gdface.facelog</groupId>
      <artifactId>facelog-sql</artifactId>
      <!--这里package不能使用默认的jar,否则不会执行插件-->
      <packaging>maven-plugin</packaging>
      <name>facelog-sql</name>
      <build>
        <plugins>        
          <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>sql-maven-plugin</artifactId>
            <version>1.5</version>
            <dependencies>
              <!-- 定义依赖的数据库驱动jar包(mysql) -->
              <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>5.1.43</version>
              </dependency>  
            </dependencies>
            <configuration>
              <!-- 定义数据库连接参数 -->
              <driver>com.mysql.jdbc.Driver</driver>
              <url>jdbc:mysql://localhost:3306/test</url>
              <username>root</username>
              <password></password>
            </configuration>
            <executions>
              <!-- 删除表操作 -->
              <execution>
                <id>clean-tables</id>
                <configuration>
                  <srcFiles>
                    <srcFile>${project.basedir}/sql/clean_tables.sql</srcFile>
                  </srcFiles>
                </configuration>
              </execution> 
              <!-- 创建表操作 -->
              <execution>
                <id>create-tables</id>
                <configuration>
                  <srcFiles>
                    <srcFile>${project.basedir}/sql/create_tables.sql</srcFile>
                  </srcFiles>
                </configuration>
              </execution> 
            </executions>
          </plugin>
        </plugins>
      </build>
    </project>

    命令行执行如下:

    # 通过@execution-id的方式指定执行id为‘clean-tables’的execution
    mvn -f run-sql.xml sql:execute@clean-tables
    # 通过@execution-id的方式指定执行id为‘create-tables’的execution
    mvn -f run-sql.xml sql:execute@create-tables

    注意 Maven 3.3.1以上版本支持上述的@execution-id 的用法
    参见 https://stackoverflow.com/questions/3166538/how-to-execute-maven-plugin-execution-directly-from-command-line

    参考资料:

    《sql-maven-plugin usage》
    《execute-mojo》
    《Maven Properties Guide》

    展开全文
  • 批量执行sql脚本的web工程,通过myeclipse导入工程即可,经过测试可以批量导入oracle与sql server2005的脚本,而且是web页面的向导式执行*.sql脚本文件 支持事务,任何执行过程出现异常,均会提示并且回滚操作,页面...
  • Java 如何实现动态脚本

    千次阅读 2020-06-16 11:37:56
    简介:在平台级的 Java 系统中,动态脚本技术是不可或缺的一环。本文分享了一种 Java 动态脚本实现方案,给出了其中的关键技术点,并就类重名问题、生命周期、安全问题等做出进一步讨论,欢迎同学们共同交流。简介:...
  • 因为在数据库升级或者迁移的时候,为了保证不同环境不同数据库数据保持同步,故数据库SQL脚本非常作用。比如:数据库主脚本,副脚本,增量脚本。 3、 什么是主脚本、副脚本、增量脚本呢? 3.1、主脚本指数据库表或...
  • #需要加上这句,否则不会自动执行sql文件 spring.datasource.initialization-mode=always # schema.sql中一般存放的是建表语句DDL spring.datasource.schema = classpath:schema.sql # data.sql中一般存放的是需要...
  • JAVA WEB中处理防SQL注入|防XSS跨站脚本java web项目中,必然会涉及到从客户端向服务端提交数据,那么由于服务端对数据的处理等动作,会因为字符串拼接和使用的特殊性,存在一些漏洞被人利用。这篇文章,主要介绍...
  • 数据库日常管理常用sql脚本

    千次阅读 2016-11-29 22:43:38
    mon_sqlarea 未使用绑定变量的sql监控 mon_sharepool 占用大量内存的sql监控 mon_redo 产生大量redo log的session和sql监控 mon_temp 占用大量temp表空间的session和sql监控 关于数据库实例: 了解当前ASMM ...
  • JavaSQL注入方法

    千次阅读 2017-06-21 10:38:39
    JavaSQL注入方法
  • 配置git Git bash中配置用户名和... 执行sql脚本 在docker的mysql 中, 创建如下的数据库 分别执行如下的sql脚本 gulimalloms.sql gulimallpms.sql gulimallsms.sql gulimallums.sql gulimallwms.sql sql脚本的下载地址 ...
  • JAVA执行定时脚本

    千次阅读 2008-03-01 11:53:00
    Web工程实现执行定时脚本主要是利用Servlet在启动的时候被载入,使用java.util.Timer来实现;1.建立一个Web工程(AutoScript);2.建立一个com.wangwz.autoscript.AutoTimerTask类;内容如下: package com.wangwz.aut
  • [Java]Java工程师成神之路

    千次阅读 2015-12-23 09:48:44
    1.1.1. Java内存模型,Java内存管理,Java堆和栈,垃圾回收 http://www.jcp.org/en/jsr/detail?id=133 http://ifeve.com/jmm-faq/ 1.1.2. 了解JVM各种参数及调优 1.1.3. 学习使用Java工具 jps, ...
  • Java调用Python脚本(需要传参)
  • Groovy—一种Java平台的新脚本语言

    千次阅读 2004-09-10 11:13:00
    Groovy是一种基于JVM的...Groovy被设计为帮助你在Java平台上以快速的、更简洁和有趣的方式完成事情,将Python和Ruby的强大功能Java平台内部。Groovy可以作为javac的一种可选编译器来生成标准的Java字节码,在任何J
  • Java工程师学习路线

    千次阅读 2018-10-08 13:03:44
    1. 基础 主要看《java核心技术:卷一》的重点章节 ... 数据库,能看懂ER关系,熟悉数据库三大范式,熟练常用SQL语句 可以掌握一点java网络编程方面的知识,对tcp/ip有初步的认识 学习servlet/jsp,至少能写简单...
  • 面向对象编程(OOP)Java是一个支持并发、基于类和面向对象的计算机编程语言。下面列出了面向对象软件开发的优点:代码开发模块化,更易维护和修改。 代码复用。 增强代码的可靠性和灵活性。 增加代码的可理解性...
  • 接下来使用方法runScript来读取SQL脚本就可以了,具体的执行,在runner点方法可以查看,我在这里使用runScript来读取执行File文件,例如: runner.runScript(Resources.getResourceAsReader("table/****/****.sql")...
  • java web】java执行预编译Groovy脚本

    万次阅读 2014-05-25 14:31:35
    介绍一种使用Groovy的方法:编译成java字节码并且作为正常java应用程序运行在java虚拟机上,即预编译模式。   1、安装Groovy 下载Groovy binary: http://groovy.codehaus.org/Download 将其解压。然后设置环境...
  • Java工程师成神之路

    千次阅读 2016-10-31 09:40:41
    一基础篇11 JVM111 Java内存模型Java内存管理Java堆和栈垃圾回收112 了解JVM各种参数及调优113 学习使用Java工具114 学习Java诊断工具115 自己编写各种outofmemorystackoverflow程序116 使用工具尝试解决以下问题并...
  • Jenkins工程SQL语句执行的方法

    千次阅读 2019-09-28 05:51:04
    网上很多jenkins工程中基于shell或批处理方式调用sql文件执行sql命令的方式,大部分都是需要基于sql文件来完成的,因此在sql语句发生变化时需要去jenkins服务端修改对应的sql文件或者通过上传的方式进行替换,对于...
  • java +sql+bbs论坛

    2010-06-30 10:15:07
    这个是本人在学习过程自己做的一个论坛 里面包含了源代码,书库脚本和这个工程的所有文件。
  • Java 工程师成神之路

    千次阅读 2015-12-17 10:07:53
    转载 https://linux.cn/article-6739-1.html一、基础篇1.1 JVM1.1.1. Java内存模型,Java内存管理,Java堆和栈,垃圾回收http://www.jcp.org/en/jsr/detail?id=133 ... 学习使用Java工具jps, jstac
  • JAVA工程师面试题目大全_绝对值得看

    千次阅读 2015-05-16 22:28:08
    明天或者后天面试JAVA工程师怎么办?史上最全的全劲爆的JAVA工程师面试题,不得不看?本文集互联网全部的面试题,同时提供各大公司的面试题,助你增加面试成功机会

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 35,260
精华内容 14,104
关键字:

java工程带sql脚本

java 订阅