DataSourceSingle X

DataSourceSingle 

package com.testdemo.pcis.lucene;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;

import com.testdemo.fwk.common.DeploymentConfig;

public class DataSourceSingle {
    
    private  javax.sql.DataSource datasource;
    
    
    private DataSourceSingle(){};
    
    private static class Singleton {
        private static final DataSourceSingle instance=new DataSourceSingle();
        
        static{
             javax.naming.Context ctx;
             try {
                ctx = new InitialContext();
                String jndi = DeploymentConfig.getProperty("MY_DATA_SOURCE_JNDI");
                int index = jndi.indexOf("jdbc");
                jndi = jndi.substring(index, jndi.length());
                instance.datasource = (DataSource)ctx.lookup(jndi);
                
            } catch (NamingException e) {
                e.printStackTrace();
            }
        }
        
    }
    
    public static DataSourceSingle getInstance(){
        return Singleton.instance;
    }
    public javax.sql.DataSource getDataSource(){
        return datasource;
    }

    
    public static void main(String[] args) {
//        java:comp/env/jdbc/pcis
        String s = "java:comp/jdbc/pcis";
        int index = s.indexOf("jdbc");
        s = s.substring(index, s.length());
        System.out.println(s);
    }
}

 

posted @ 2016-08-30 16:46  苦涩泪滴  阅读(106)  评论(0)    收藏  举报