Package com.taobao.datasource.resource.adapter.jdbc.local

Source Code of com.taobao.datasource.resource.adapter.jdbc.local.LocalTxDataSourceOracleTest

package com.taobao.datasource.resource.adapter.jdbc.local;

import static org.apache.commons.lang.RandomStringUtils.randomAlphanumeric;
import static org.junit.Assert.assertEquals;

import javax.sql.DataSource;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.springframework.jdbc.core.JdbcTemplate;

import com.taobao.datasource.resource.connectionmanager.CachedConnectionManager;
import com.taobao.datasource.resource.security.SecureIdentityLoginModule;
import com.taobao.datasource.tm.TxManager;

public class LocalTxDataSourceOracleTest {

    private LocalTxDataSource ltds;

    private DataSource dataSource;

    private JdbcTemplate template;

    @Before
    public void setUp() throws Exception {
        SecureIdentityLoginModule securityDomain = new SecureIdentityLoginModule();
        securityDomain.setUserName("water");
        securityDomain.setPassword(SecureIdentityLoginModule.encode("water"));

        CachedConnectionManager ccm = new CachedConnectionManager();
        ccm.setTransactionManager(TxManager.getInstance());
        ccm.init();

        ltds = new LocalTxDataSource();
        ltds.setBeanName(randomAlphanumeric(32));

        ltds.setTransactionManager(TxManager.getInstance());
        ltds.setCachedConnectionManager(ccm);

        ltds.setConnectionURL("jdbc:oracle:thin:@db.dev.crm.taobao.net:1521:newcrm");
        ltds.setDriverClass("oracle.jdbc.driver.OracleDriver");
        ltds.setSecurityDomain(securityDomain);
        // ltds.setUserName("water");
        // ltds.setPassword("water");

        ltds.setExceptionSorterClassName("org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter");
        ltds.setPreparedStatementCacheSize(75);
        ltds.setValidateOnMatch(true);
        ltds.setConnectionPropertiesString("SetBigStringTryClob=true\ndefaultRowPrefetch=50");

        ltds.setMinSize(2);
        ltds.setMaxSize(10);
        ltds.setBlockingTimeoutMillis(30000);
        ltds.setIdleTimeoutMinutes(15);
        ltds.setBackgroundValidation(false);
        ltds.setPrefill(false);
        ltds.setUseFastFail(false);
        ltds.setCriteria("ByNothing");

        ltds.init();
        dataSource = ltds.getDatasource();
        template = new JdbcTemplate(dataSource);
    }

    @After
    public void tearDown() throws Exception {
        ltds.destroy();
    }

    @Test
    public void simpleQuery() throws Exception {
        String actual = (String) template.queryForObject("SELECT sql_id FROM sql_info WHERE id = 1", String.class);
        String expected = "simple";
        assertEquals(expected, actual);
    }

}
TOP

Related Classes of com.taobao.datasource.resource.adapter.jdbc.local.LocalTxDataSourceOracleTest

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.