/******************************************************************************* * Copyright (c) 2016 hangum. * All rights reserved. This program and the accompanying materials * are made available under the terms of the GNU Lesser Public License v2.1 * which accompanies this distribution, and is available at * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html * * Contributors: * hangum - initial API and implementation ******************************************************************************/ package com.hangum.tadpole.engine.manager; import java.sql.Connection; import java.sql.Statement; import org.apache.log4j.Logger; import com.hangum.tadpole.engine.define.DBGroupDefine; import com.hangum.tadpole.engine.query.dao.system.UserDBDAO; public class AbstractTadpoleManager { private static final Logger logger = Logger.getLogger(AbstractTadpoleManager.class); /** * change schema * * @param conn * @param strSchema */ public static void changeSchema(UserDBDAO userDB, Connection conn) { setConnectionInitialize(userDB, conn); } /** * * @param userDB * @param conn */ public static void setConnectionInitialize(final UserDBDAO userDB, final Connection conn) { if(userDB.getDBGroup() == DBGroupDefine.MYSQL_GROUP) { // show variables like 'character_set_database' 에서 값을 가져와서 // set names 의 값을 설정해준다. String strCharacterSetDatabase = InitializeDB.dbCharacterSetDatabase(userDB); Statement statement = null; try { statement = conn.createStatement(); statement.execute(String.format("set names `%s`", strCharacterSetDatabase)); } catch (Exception e) { logger.error("mysql connection initialize: " + e.getMessage()); } finally { try { if(statement != null) statement.close(); } catch(Exception e) {} } } } }