Example usage for org.apache.ibatis.jdbc ScriptRunner ScriptRunner

List of usage examples for org.apache.ibatis.jdbc ScriptRunner ScriptRunner

Introduction

In this page you can find the example usage for org.apache.ibatis.jdbc ScriptRunner ScriptRunner.

Prototype

public ScriptRunner(Connection connection) 

Source Link

Usage

From source file:myguice.SampleBasicTest.java

License:Apache License

@Before
public void setupMyBatisGuice() throws Exception {

    // bindings/*from  w  w  w .j av a 2  s .  c  om*/
    this.injector = createInjector(new MyBatisModule() {

        @Override
        protected void initialize() {
            install(JdbcHelper.HSQLDB_IN_MEMORY_NAMED);

            bindDataSourceProviderType(PooledDataSourceProvider.class);
            bindTransactionFactoryType(JdbcTransactionFactory.class);
            addMapperClass(UserMapper.class);

            bindProperties(binder(), createTestProperties());
            bind(FooService.class).to(FooServiceMapperImpl.class);
            bind(UserDao.class).to(UserDaoImpl.class);
        }

    });

    // prepare the test db
    Environment environment = this.injector.getInstance(SqlSessionFactory.class).getConfiguration()
            .getEnvironment();
    DataSource dataSource = environment.getDataSource();
    ScriptRunner runner = new ScriptRunner(dataSource.getConnection());
    runner.setAutoCommit(true);
    runner.setStopOnError(true);
    runner.runScript(getResourceAsReader("sample/db/database-schema.sql"));
    runner.runScript(getResourceAsReader("sample/db/database-test-data.sql"));
    runner.closeConnection();

    this.fooService = this.injector.getInstance(FooService.class);
}

From source file:net.oletalk.dbexecutor.util.MyBatisUtil.java

private static boolean runFiles(List<String> filenames, Connection conn) throws VersionException {
    boolean success = true;
    if (conn == null) {
        return false; // bail if no connection in the first place
    }//w  w  w  .  j a v a  2 s .com
    for (String sqlfile : filenames) {
        Reader reader;
        try {
            reader = new BufferedReader(new FileReader(sqlfile));
            ScriptRunner runner = new ScriptRunner(conn);
            runner.setStopOnError(true);
            runner.setAutoCommit(false);
            runner.runScript(reader);
            reader.close();
            System.out.println("No errors; committing changes.");
            conn.commit();

        } catch (FileNotFoundException ex) {
            System.err.println("Given file was not found: " + sqlfile + ", skipping!");
        } catch (Exception e) {
            success = false;
            System.out.println("Error encountered; rolling back!");
            try {
                conn.rollback();
            } catch (SQLException sqe) {
                sqe.printStackTrace();
            }
            throw new VersionException("Execution of " + sqlfile + " failed with " + e.getMessage());
        }
    }
    return success;
}

From source file:nipgm.database.DatabaseService.java

License:Open Source License

/**
 *
 * @param database/*from   ww w .  jav a2 s  .  co  m*/
 * @throws nipgm.util.DatabaseUtil.ConnectException
 * @throws FileNotFoundException
 * @throws SQLException
 * @throws IOException
 */
public static void initDB(File database)
        throws DatabaseUtil.ConnectException, FileNotFoundException, SQLException, IOException {
    try (Connection conn = DatabaseUtil.getConnection(database);
            Reader reader = new BufferedReader(
                    new InputStreamReader(DatabaseService.class.getResourceAsStream(RESOURCE_SQL_INITDB)))) {
        ScriptRunner runner = new ScriptRunner(conn);
        runner.runScript(reader);
    }
    //TODO do without DatabaseService?
    DatabaseService dbservice = new DatabaseService(database);
    dbservice.insertProgramVersion();
    //TODO need to shut down DatabaseService?
}

From source file:optional.OptionalTest.java

License:Apache License

@BeforeClass
public static void setUp() throws Exception {
    // create an SqlSessionFactory
    Reader reader = Resources.getResourceAsReader("optional/mybatis-config.xml");
    sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
    reader.close();//from w  w w  .  jav a  2 s.  c  o m

    // populate in-memory database
    SqlSession session = sqlSessionFactory.openSession();
    Connection conn = session.getConnection();
    reader = Resources.getResourceAsReader("optional/CreateDB.sql");
    ScriptRunner runner = new ScriptRunner(conn);
    runner.setLogWriter(null);
    runner.runScript(reader);
    reader.close();
    session.close();
}

From source file:org.alfresco.repo.transfer.fsr.SchemaBootstrap.java

License:Open Source License

protected void executeSript(Resource resourceScript) {
    BufferedReader reader = null;
    try {/* ww  w  .  j a  va2  s  . c  o m*/
        // run the creation script with autocommit true and stop on error.
        ScriptRunner runner = new ScriptRunner(dataSource.getConnection());
        runner.setLogWriter(null);
        runner.setAutoCommit(true);
        runner.setStopOnError(true);
        reader = new BufferedReader(new InputStreamReader(resourceScript.getInputStream(), "UTF-8"));
        runner.runScript(reader);
    } catch (SQLException sql) {
        throw new AlfrescoRuntimeException("Creation script " + creationScript + " failed!", sql);
    } catch (IOException io) {
        if (reader != null) {
            try {
                reader.close();
            } catch (Exception e) {
            }
        }
        throw new AlfrescoRuntimeException("Creation script " + creationScript + " could not optain reader!!");
    }
}

From source file:org.apache.mybatis.basetest.BaseTest.java

License:Apache License

@BeforeClass
public static void setUp() throws Exception {
    // create a SqlSessionFactory
    Reader reader = Resources.getResourceAsReader("org/apache/mybatis/basetest/mybatis-config.xml");
    sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
    reader.close();/*from  w  w w.  j  av  a 2s.  co  m*/

    // populate in-memory database
    SqlSession session = sqlSessionFactory.openSession();

    Connection conn = session.getConnection();
    reader = Resources.getResourceAsReader("org/apache/mybatis/basetest/CreateDB.sql");
    ScriptRunner runner = new ScriptRunner(conn);
    runner.setLogWriter(null);
    runner.runScript(reader);
    reader.close();

    session.close();
}

From source file:org.b3mn.poem.data.defaults.DataDefaults.java

License:Open Source License

public static void all() {
    try {/*from  w  ww.  j  av a2s.c  om*/
        //-- Check if already initialized
        Identity rootowner = Identity.instance("ownership");
        if (rootowner == null) {
            //-- Reset DB
            Reader reader = Resources.getResourceAsReader("org/b3mn/poem/tests/myibitis-config.xml");
            SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
            reader.close();

            SqlSession session = sqlSessionFactory.openSession();
            Connection conn = session.getConnection();
            reader = Resources.getResourceAsReader("org/b3mn/poem/defaults/test_reset_mysql_db_schema.sql");
            ScriptRunner runner = new ScriptRunner(conn);
            runner.setErrorLogWriter(null);
            runner.runScript(reader);
            reader.close();

            reader = Resources.getResourceAsReader("org/b3mn/poem/defaults/test_data.sql");
            runner = new ScriptRunner(conn);
            runner.setErrorLogWriter(null);
            runner.runScript(reader);
            reader.close();

            session.close();

            //-- Add test model/template
            String title = "Job #1";
            String type = "http://b3mn.org/stencilset/reporting#";
            String summary = "";
            User user = new User("public");

            URL testfile = DataDefaults.class.getResource("/data/newmodelhandler/test1_svg.xml");
            File file = new File(testfile.toURI());
            String svg = FileUtils.readFileToString(file, "UTF-8");

            testfile = DataDefaults.class.getResource("/data/newmodelhandler/test1_content_json.txt");
            file = new File(testfile.toURI());
            String data = FileUtils.readFileToString(file, "UTF-8");

            Identity.newModel(user.getIdentity(), title, type, summary, svg, data);
        }
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    /*      createIdentities();
          createInterations();
          createSettings();
          createStructures();*/
}

From source file:org.craftercms.studio.impl.v1.dal.DataSourceInitializerImpl.java

License:Open Source License

@Override
public void initDataSource() {
    if (isEnabled()) {
        String scriptPath = getScriptPath();
        SqlSession session = sqlSessionFactory.openSession();
        Connection conn = session.getConnection();

        ScriptRunner sr = new ScriptRunner(conn);

        sr.setDelimiter(delimiter);/*from www  .j  a  v a 2  s .com*/
        InputStream is = getClass().getClassLoader().getResourceAsStream(scriptPath);
        Reader reader = new InputStreamReader(is);
        sr.runScript(reader);
        try {
            conn.close();
        } catch (SQLException e) {
            logger.error("Error while closing connection with database", e);
        }
    }
}

From source file:org.fdmtech.mybatis.jdbc.TestJdbc.java

License:Apache License

private SqlSessionFactory createFactory() throws Exception {
    Reader reader = Resources.getResourceAsReader("mybatis-config.xml");
    SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader);
    reader.close();/* w ww  . ja  v  a2 s  .c  om*/
    SqlSession session = factory.openSession();
    Connection conn = session.getConnection();
    reader = Resources.getResourceAsReader("CreateDB_1.sql");
    ScriptRunner runner = new ScriptRunner(conn);
    runner.setLogWriter(null);
    runner.runScript(reader);
    reader.close();
    session.close();
    return factory;
}

From source file:org.mybatis.cdi.ManagerProducers.java

License:Apache License

private SqlSessionFactory createSessionManager(int n) throws IOException {
    Reader reader = Resources.getResourceAsReader("org/mybatis/cdi/mybatis-config_" + n + ".xml");
    SqlSessionFactory manager = new SqlSessionFactoryBuilder().build(reader);
    reader.close();//from w  w  w.  j  av  a 2s. c  o  m

    SqlSession session = manager.openSession();
    Connection conn = session.getConnection();
    reader = Resources.getResourceAsReader("org/mybatis/cdi/CreateDB_" + n + ".sql");
    ScriptRunner runner = new ScriptRunner(conn);
    runner.setLogWriter(null);
    runner.runScript(reader);
    reader.close();
    session.close();

    return manager;
}