/**
* Created by Syam.
*/
import java.sql.*;
import java.util.ArrayList;
import org.apache.log4j.Logger;
public class DataBaseManager {
public static Logger APP_LOGS = Logger.getLogger(DataBaseManager.class.getName());
private static Connection connection;
/**
* Database connection for MySQL Server
*
* @param dbConnectionUrl
* @param dbUserName
* @param dbPassword
* @param dbDriver
*/
public static void dataBaseConnection(String dbConnectionUrl, String dbUserName, String dbPassword,
String dbDriver) {
connection = null;
if (connection == null) {
try {
// Load the mysql driver dynamically
Class.forName(dbDriver).newInstance();
// Establish connection
connection = DriverManager.getConnection(dbConnectionUrl, dbUserName, dbPassword);
if (!connection.isClosed() && connection != null) {
System.out.println("Successfully connected to mySQL DataBase");
APP_LOGS.info("Successfully connected to mySQL DataBase");
} else {
System.out.println("Failed to connect to mySQL DataBase");
APP_LOGS.info("Failed to connect to mySQL DataBase");
}
} catch (Exception e) {
APP_LOGS.error("Not able Connect to mySQL DataBase: " + e.getStackTrace());
System.err.println("Not able Connect to mySQL DataBase: " + e.getStackTrace());
}
}
}
/**
* Returns only a string value
*
* @param sqlQuery
* - EX:select EmpName from employee WHERE EmpId="1"
* @return
*/
public static String executeSQLQuery(String sqlQuery) {
Statement st;
ResultSet rs;
String resultValue = "";
try {
if (connection != null) {
// Create statement Object
st = connection.createStatement();
// Execute the query and store the results in the ResultSet
// object
rs = st.executeQuery(sqlQuery);
// Printing the column values of ResultSet
if (rs.next()) {
while (rs.next()) {
resultValue = rs.getString(1).toString();
}
rs.close();
}
}
} catch (
Exception e) {
APP_LOGS.error("No Records found for this specific query : " + sqlQuery + " :: " + e.getStackTrace());
System.out.println("No Records found for this specific query : " + sqlQuery + " :: " + e.getStackTrace());
}
return resultValue;
}
/**
* Which returns list of values based on the query
*
* @param sqlQuery
* - EX:select EmpName from employee
*
* @return
*/
public static ArrayList
ArrayList
Statement st;
ResultSet rs;
try {
if (connection != null) {
// Create statement Object
st = connection.createStatement();
// Execute the query and store the results in the ResultSet
// object
rs = st.executeQuery(sqlQuery);
if (rs.next()) {
// Printing the column values of ResultSet
while (rs.next()) {
int columnCount = rs.getMetaData().getColumnCount();
StringBuilder sb = new StringBuilder();
for (int i = 1; i <= columnCount; i++) {
sb.append(rs.getString(i).trim() + " ");
}
String reqValue = sb.substring(0, sb.length() - 1);
resultValues.add(reqValue);
}
rs.close();
}
}
} catch (Exception e) {
APP_LOGS.error("No Records found for this specific query : " + sqlQuery + " :: " + e.getStackTrace());
System.out.println("No Records found for this specific query : " + sqlQuery + " :: " + e.getStackTrace());
}
return resultValues;
}
public static void closeDataBaseConnector() {
try {
if (!connection.isClosed() && connection != null) {
connection.close();
}
} catch (Exception e) {
APP_LOGS.error("Not able to close the DataBase connection" + e.getStackTrace());
System.out.println("Not able to close the DataBase connection" + e.getStackTrace());
}
}
}
No comments:
Post a Comment