我有一个Struts2 Web应用程序,它在子域上运行,如http://www.abc.example.com。
当重新启动tomcat时,所有域和子域都会被启动并轻松连接到数据库,但我在http://www.abc.example.com上运行的一个Struts2应用程序未连接到数据库,直到应用程序不再从tomcat管理器重新加载。 我使用 phpMyadmin 作为数据库并使用JDBC连接进行连接。
我的数据库连接类是 -
import java.util.HashMap;
import java.sql.Connection;
import java.util.Map;
import javax.sql.DataSource; import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;
public class ConnectionResource {
public static Map<String, DataSource> sessionMap=new HashMap<String, DataSource>();
private static String driver = "com.mysql.jdbc.Driver";
private static String port = "3306";
private static Connection connection = null;
private static String ip = "localhost";
private static String user = "root";
private static String password = "123456";
private static MysqlDataSource dataSource=null;
/**
* @return the ip
*/
public static String getIp() {
return ip;
}
/**
* @param ip the ip to set
*/
public static void setIp(String ip) {
ConnectionResource.ip = ip;
}
/**
* @return the user
*/
public static String getUser() {
return user;
}
/**
* @param user the user to set
*/
public static void setUser(String user) {
ConnectionResource.user = user;
}
/**
* @return the password
*/
public static String getPassword() {
return password;
}
/**
* @param password the password to set
*/
public static void setPassword(String password) {
ConnectionResource.password = password;
}
private static DataSource createDataSource(String db) throws Exception{
String url="jdbc:mysql://"+ip+":"+port+"/"+db+"";
dataSource = new MysqlDataSource();
dataSource.setURL(url);
dataSource.setUser(user);
dataSource.setPassword(password);
return dataSource;
}
public static Connection getConnection(String db){
try{
if(sessionMap.get(db)!=null){
return sessionMap.get(db).getConnection();
}else{
DataSource ds=createDataSource(db);
sessionMap.put(db, ds);
return ds.getConnection();
}
}catch(Exception e){
e.printStackTrace();
}
return null;
}
}
什么问题?
答案 0 :(得分:0)
根据你提到的,我觉得它没有正确部署。 请详细说明以获得正确的问题。
答案 1 :(得分:0)
感谢您的宝贵意见.. 我喜欢这个问题.. 存在记录器问题..记录器类未初始化.. 所以我的Quartz创建了连接数据库的问题......