Package net.traviangui.dbInterface

Source Code of net.traviangui.dbInterface.DBInterface

package net.traviangui.dbInterface;

import java.io.Reader;
import java.sql.Connection;
import java.util.Properties;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.jdbc.ScriptRunner;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.apache.log4j.Logger;

public class DBInterface
{
    private static final Logger logger = Logger.getLogger( DBInterface.class);

    private static DBInterface instance;
    private SqlSessionFactory sqlMapper;

    private DBInterface( )
    {
        try {
            Properties properties = new Properties( );
            properties.load( ClassLoader.getSystemResourceAsStream( "config/database.properties"));

//         String url = "jdbc:derby:" + tempDir + "sharedPhotoDB;create=true";
            String url = properties.getProperty( "url").replace( "$tmpDir$", "." );
            properties.setProperty( "url", url);
            logger.debug( "DB url=" + url);
           

            String resource = "config/database.sql.xml";
            Reader reader = Resources.getResourceAsReader( resource);
            sqlMapper = new SqlSessionFactoryBuilder().build( reader, properties);
            reader.close();
           
//            SqlSession session = sqlMapper.openSession();
//            try {
//            Blog blog = (Blog) session.select(
//            "org.apache.ibatis.example.BlogMapper.selectBlog", 101);
//            } finally {
//            session.close();
//            }
           
           
           
           
//            Reader reader = Resources.getResourceAsReader( "SqlMapConfig.xml");
//            sqlMapper = SqlMapClientBuilder.buildSqlMapClient( reader, properties);
//            reader.close();
            SqlSession session = sqlMapper.openSession();
            Connection connection = session.getConnection();
            ScriptRunner runner = new ScriptRunner( connection);
            runner.runScript( Resources.getResourceAsReader( "initialize-db.sql"));
            connection.close();
            session.close();
           
//            executeDDLFile(
//                    Thread.currentThread().getContextClassLoader().getResource( "ddl.txt"),
//                    sqlMapper.getCurrentConnection( ));
//           
//            psInsert = conn.prepareStatement( "insert into WISH_LIST(WISH_ITEM) values (?)");
        } catch( Exception e) {
            // Fail fast.
            throw new RuntimeException( "Something bad happened while building the SqlMapClient instance." + e, e);
        }
    }

    /**
     * @return the instance
     */
    public static DBInterface getInstance( )
    {
        if( instance == null) {
            instance = new DBInterface();
        }
        return instance;
    }

    /**
     * @return the sqlMapper
     */
    public SqlSession getSession( )
    {
        return sqlMapper.openSession();
    }
   
   
}
TOP

Related Classes of net.traviangui.dbInterface.DBInterface

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.