...
Propertier=new Properties();
props.put("characterEncodeing","utf8");
ObjectPool connectionPool=new GenericObjectPool(null);
connectionFactory connectionFactory=new DriverManagerConnectionFactory("jdbc:mysql://"+Host+":"+Port+"?user="+login+"&password="+password),props);
PoolableConnectionFactory poolableConnectionFactory= new PoolableConnectionFactory(connectionFactory,connectionPool,null,null,false,true);
PoolingDataSource dataSource=new PoolingDataSource(connectionPool);
JdbcTemplate jdbcTemplate=new JdbcTemplate(dataSource);
Команды общие для пула соединений с БД
Код:
Далее, с целью установки переменных, выбора бд я делаю следующее:
Код:
jdbcTemplate.execute("USE mydb");
jdbcTemplate.execute("SET charset utf8");
...
jdbcTemplate.execute("SET charset utf8");
...
Но тут возник вопрос, ведь используется пул соединений, а описанный команды действуют лишь в одном соединении.Значит такой код не будет работать в определенных ситуациях, а именно тогда, когда пул будет выделять новые соединения. Каким образом можно вводить команды, которые будут выполняться автоматически при создании нового соединения в пуле? Заранее благодарен.