Spring连接数据库:
我的xml是这样的:(请指教!!!!) <bean id="dataSource1" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName">
<value>oracle.jdbc.driver.OracleDriver</value>
</property>
<property name="url"> 我的javabean是:
public class DbCon {
// private static Log log = LogFactory.getLog(initFactory.class);
private static final String file = "spring_datasource.xml";
private static DataSource dataSource1;
public DbCon() {
} /**
* 工厂模式:根据参数不同,获取不同的数据源
* @param flag String
* @return Connection
*/
public static Connection getConn(String flag) {
Connection conn = null;
ApplicationContext ctx = null;
DbCon db = null;
try {
ctx = new ClassPathXmlApplicationContext(file);
if (flag.equals("db1")) {
db = (DbCon) ctx.getBean("databean1");
} conn = db.CreateConn(flag);
}
catch (Exception e) {
//log.error("get DBConnection error!");
e.printStackTrace();
}
return conn;
} public void setDataSource1(DataSource dataSource1) {
this.dataSource1 = dataSource1;
} public DataSource getDataSource1() {
return dataSource1;
}
/**
* 从DataSource中获取数据库连接
* @param flag String
* @return Connection
*/
private static Connection CreateConn(String flag) {
Connection conn = null;
try {
if (flag.equals("db1")) {
conn = dataSource1.getConnection();
}
}
catch (SQLException e) {
//log.error(e);
e.printStackTrace();
}
return conn;
} /**
* 测试连接
* @param args String[]
*/
public static void main(String[] args) {
DbCon t = new DbCon();
Connection con = t.getConn("db1");
System.out.println(con);
} }
<value>jdbc:oracle:thin:@172.18.11.13:1521:UTMES</value>
</property>
<property name="username">
<value>ims</value>
</property>
<property name="password">
<value>pw123098</value>
</property>
</bean> <bean id="databean1" class="com.DbCon">
<property name="dataSource1">
<ref bean="dataSource1"/>
</property>
</bean> </beans>
我的xml是这样的:(请指教!!!!) <bean id="dataSource1" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName">
<value>oracle.jdbc.driver.OracleDriver</value>
</property>
<property name="url"> 我的javabean是:
public class DbCon {
// private static Log log = LogFactory.getLog(initFactory.class);
private static final String file = "spring_datasource.xml";
private static DataSource dataSource1;
public DbCon() {
} /**
* 工厂模式:根据参数不同,获取不同的数据源
* @param flag String
* @return Connection
*/
public static Connection getConn(String flag) {
Connection conn = null;
ApplicationContext ctx = null;
DbCon db = null;
try {
ctx = new ClassPathXmlApplicationContext(file);
if (flag.equals("db1")) {
db = (DbCon) ctx.getBean("databean1");
} conn = db.CreateConn(flag);
}
catch (Exception e) {
//log.error("get DBConnection error!");
e.printStackTrace();
}
return conn;
} public void setDataSource1(DataSource dataSource1) {
this.dataSource1 = dataSource1;
} public DataSource getDataSource1() {
return dataSource1;
}
/**
* 从DataSource中获取数据库连接
* @param flag String
* @return Connection
*/
private static Connection CreateConn(String flag) {
Connection conn = null;
try {
if (flag.equals("db1")) {
conn = dataSource1.getConnection();
}
}
catch (SQLException e) {
//log.error(e);
e.printStackTrace();
}
return conn;
} /**
* 测试连接
* @param args String[]
*/
public static void main(String[] args) {
DbCon t = new DbCon();
Connection con = t.getConn("db1");
System.out.println(con);
} }
<value>jdbc:oracle:thin:@172.18.11.13:1521:UTMES</value>
</property>
<property name="username">
<value>ims</value>
</property>
<property name="password">
<value>pw123098</value>
</property>
</bean> <bean id="databean1" class="com.DbCon">
<property name="dataSource1">
<ref bean="dataSource1"/>
</property>
</bean> </beans>
<beans><bean id="dataSource1" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName">
<value>oracle.jdbc.driver.OracleDriver</value>
</property>
<property name="url">
<value>jdbc:oracle:thin:@172.18.11.13:1521:UTMES</value>
</property>
<property name="username">
<value>ims</value>
</property>
<property name="password">
<value>pw123098</value>
</property>
</bean> <bean id="databean1" class="com.DbCon">
<property name="dataSource1">
<ref bean="dataSource1"/>
</property>
</bean></beans>
package com;import java.sql.*;
import javax.sql.DataSource;public class DbCon {
public DbCon() {
} public static Connection getcon() {
/* Connection dbconn = null;
javax.naming.Context initCtx = null;
javax.naming.Context envCtx = null;
try {
initCtx = new javax.naming.InitialContext();
envCtx = (javax.naming.Context) initCtx.lookup("java:comp/env");
DataSource ds = (DataSource) envCtx.lookup("jdbc/upn");
dbconn = ds.getConnection();
}
catch (Exception ex) {
return null;
}
return dbconn;
}*/ String jndi = "myjndi";
Connection dbconn = null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver"); try {
dbconn = DriverManager.getConnection(
"jdbc:oracle:thin:@172.18.11.13:1521:MESTEST", "ims",
"pw123098");
}
catch (SQLException e1) {
System.out.println("Error");
try {
throw e1;
}
catch (SQLException ex) {
}
}
}
catch (ClassNotFoundException e) {
try {
throw new SQLException();
}
catch (SQLException ex1) {
}
}
return dbconn;
}}
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134) at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289) at oracle.jdbc.ttc7.O3log.receive1st(O3log.java:407) at oracle.jdbc.ttc7.TTC7Protocol.logon(TTC7Protocol.java:259) at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:346) at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:468) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:314) at java.sql.DriverManager.getConnection(DriverManager.java:512) at java.sql.DriverManager.getConnection(DriverManager.java:171) at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:234) at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:220) at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:202) at com.DbCon.CreateConn(DbCon.java:69) at com.DbCon.getConn(DbCon.java:42) at com.DbCon.main(DbCon.java:85)null /*这是/**
* 测试连接
* @param args String[]
*/
public static void main(String[] args) {
DbCon t = new DbCon();
Connection con = t.getConn("db1");
System.out.println(con);
=======================================
如此明显的,用户名和密码不对啊
at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:844)
at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:682)
at org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:317)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:370)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:473)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:190)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
atorg.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
atorg.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2416)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
atorg.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
atorg.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:601)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)
at java.lang.Thread.run(Thread.java:534)