BasicDataSource连接池

来源:互联网 发布:淘宝产品后期视频 编辑:程序博客网 时间:2024/05/22 11:44
package org.apache.nutch.fetcher;


import org.apache.commons.dbcp.BasicDataSource;
import org.springframework.jdbc.core.JdbcTemplate;
import org.mozilla.universalchardet.UniversalDetector;






/**
 *
 * @author hu
 */
public class DBHelper {


    public static JdbcTemplate template;


    public static String guessEncoding(byte[] bytes) {
        String DEFAULT_ENCODING = "UTF-8";
        UniversalDetector detector = new UniversalDetector(null);
        detector.handleData(bytes, 0, bytes.length);
        detector.dataEnd();
        String encoding = detector.getDetectedCharset();
        detector.reset();
        if (encoding == null) {
            encoding = DEFAULT_ENCODING;
        }
        return encoding;
    }


    static {
        /*
        Logger logger = Logger.getLogger("org.springframework.jdbc.core.JdbcTemplate");
        ConsoleAppender ca = new ConsoleAppender();
        ca.setName("default");
        ca.setWriter(new PrintWriter(System.out));
        ca.setLayout(new PatternLayout("%d{yyyy-MM-dd HH:mm:ss} %p %c %x - %m%n "));
        logger.addAppender(ca);
        Logger.getLogger("org.springframework.jdbc.datasource.DataSourceUtils").addAppender(ca);
                */
        BasicDataSource dataSource = new BasicDataSource();
        dataSource.setDriverClassName("com.mysql.jdbc.Driver");


        dataSource.setUrl("jdbc:mysql://127.0.0.1:3306/nutch?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=utf8");
        dataSource.setUsername("root");


        dataSource.setPassword("");
        dataSource.setInitialSize(10);
        dataSource.setMaxActive(25);


        template = new JdbcTemplate(dataSource);
    }






    public  static int addArticle(String url,byte[] content) throws Exception{
       String charset=guessEncoding(content);
String html=new String(content,charset);
       return template.update("insert into tb_content (url,html) value (?,?)",url,html); 
    }
}
0 0
原创粉丝点击