1 package com.bizvane.spider.tools; 2 3 import org.apache.commons.dbcp.BasicDataSource; 4 import org.springframework.jdbc.core.JdbcTemplate; 5 6 import java.util.HashMap; 7 import java.util.Map; 8 9 /** 10 * Created by Administrator on 2018/1/10. 11 */ 12 public class JDBCHelper { 13 private static Map<String,JdbcTemplate> templateMap = new HashMap<String,JdbcTemplate>(); 14 15 /** 16 * 创建连接 17 */ 18 public static JdbcTemplate createTemplate(String templateName, 19 String url, String username, String password, 20 int initialSize, int maxActive) { 21 22 BasicDataSource dataSource = new BasicDataSource(); 23 dataSource.setDriverClassName("com.mysql.jdbc.Driver"); 24 dataSource.setUrl(url); 25 dataSource.setUsername(username); 26 dataSource.setPassword(password); 27 dataSource.setInitialSize(initialSize); 28 dataSource.setMaxActive(maxActive); 29 JdbcTemplate template = new JdbcTemplate(dataSource); 30 templateMap.put(templateName, template); 31 return template; 32 } 33 34 /** 35 * 获取 JdbcTemplate 36 */ 37 public static JdbcTemplate getJdbcTemplate(){ 38 String templateName = JdbcConfig.getTemplateName(); 39 String url = JdbcConfig.getUrl(); 40 String username = JdbcConfig.getUsername(); 41 String password = JdbcConfig.getPassword(); 42 int initialSize = (JdbcConfig.getInitialSize()==null)?5:Integer.parseInt(JdbcConfig.getInitialSize()); 43 int maxActive = (JdbcConfig.getMaxActive()==null)?30:Integer.parseInt(JdbcConfig.getMaxActive()); 44 return createTemplate(templateName,url,username,password,initialSize,maxActive); 45 } 46 47 /** 48 * 获取 JdbcTemplate 49 */ 50 public static JdbcTemplate getJdbcTemplate(String templateName){ 51 if (templateMap.get(templateName) != null) return templateMap.get(templateName); 52 JdbcTemplate template = getJdbcTemplate(); 53 templateMap.put(templateName, template); 54 return template; 55 } 56 57 }