
1让tomcat容器启动创建数据库连接池2在某个项目中关联数据库连接池,3取得数据库连接池并使用。使用包括,当拿到数据库连接后,可以通过2种方式来使用,1使用jstl的标签,2封装成返回connection的方法。
经过access测试,ok
String url = "jdbc:odbc:test";//最后一个为数据库名
Statement sm = null;
String command = null;
ResultSet rs = null;
String tableName = null;
String cName = null;
String result = null;
String []pram = new String[1];
List <String> tables = new ArrayList<String>();
pram[0] = "table";
BufferedReader input = new BufferedReader(new InputStreamReader(
Systemin));
try {
try {
ClassforName("sunjdbcodbcJdbcOdbcDriver"); // 加载驱动
} catch (ClassNotFoundException e) {
Systemoutprintln("Can not load Jdbc-Odbc Bridge Driver");
Systemerrprint("ClassNotFoundException:");
Systemerrprintln(egetMessage());
}
Connection con = DriverManagergetConnection(url, "admin", "admin"); // 连接到数据库
DatabaseMetaData dm = congetMetaData();
rs = dmgetTables(null, null, null, pram);//查找所有的表
while(rsnext()){
tablesadd(rsgetString(3));
}
rsclose();
for(String tb : tables){
rs = dmgetColumns(null, null, tb, null);//查找当前表的字段
Systemoutprintln("\nthe table is: " + tb);
ResultSetMetaData rsmd = rsgetMetaData();
int len, type;
len = rsmdgetColumnCount();
// Systemoutprintln(len);
for(int i = 1; i <= len; i ++){
type = rsmdgetColumnType(i);
//这里是获取了一个字段类型的int型,需要转化成string的话要做一个swtich,就不转了,你自己看javasqlTypes这个类去
Systemoutprint("\t" + rsmdgetColumnName(i) + ": " + rsmdgetColumnType(i));
}
}
rsclose();
conclose();
// }
} catch (SQLException ex) {
Systemoutprintln("SQLException:");
while (ex != null) {
Systemoutprintln("Message:" + exgetMessage());
ex = exgetNextException();
}
} catch (Exception e) {
Systemoutprintln("IOException");
}
不知道你说的动态配置是怎样的
---------------------------------spring配置文件--------------------------------------------
<!--从根路径下的dbproperties加载数据源信息--><context:property-placeholder
ignore-unresolvable="true" location="classpath:dbproperties" />
<!-- 数据源配置, 使用DBCP数据库连接池 -->
<bean id="dataSource" class="orgapachecommonsdbcpBasicDataSource"
destroy-method="close">
<!-- Connection Info -->
<property name="driverClassName" value="${jdbcdriver}" />
<property name="url" value="${jdbcurl}" />
<property name="username" value="${jdbcuser}" />
<property name="password" value="${jdbcpassword}" />
<property name="maxActive" value="${dbcpmaxActive}" />
<property name="maxIdle" value="${dbcpmaxIdle}" />
<property name="timeBetweenEvictionRunsMillis" value="3600000" />
<property name="minEvictableIdleTimeMillis" value="3600000" />
</bean>
-------------------------------------dbproperties--------------------------------------
//把driver改成oracle的,下面也相应改成oracle的信息就能把数据源设置为oraclejdbcdriver=commysqljdbcDriver
jdbcurl=jdbc:mysql://172190127:8066/addl
jdbcuser=root
jdbcpassword=
dbcpmaxActive=10
dbcpmaxIdle=10
spring事务内查询别的数据源方法:
增加repository隔离层,增加Dbswitch注解,通过AOP拦截实现对repository的mysql数据库 *** 作方法进行方法前数据源切换。
不使用spring声明式事务,改为手动式事务,切换数据源的时候都获取request_new新事务,保证数据源能切换成功,提供事务改为从队尾开始链式提交,
需要在项目中进行数据源的配置来为数据 库的 *** 作取得数据库连接。
配置不同数据库的数据源的方法大体上都是相同的,不同的只是不同数据库的JDBC驱动类和连接URL以及相应的数据库用户名和密 码不同。
页面跳转的话,可以用jstl标签库:
<c:forEach items="${map}" var="entry"><c:out value="${entrykey}" />
<c:out value="${entryvalue}" />
</c:forEach>
以上就是关于在Spring框架中获取连接池可以有哪些方式全部的内容,包括:在Spring框架中获取连接池可以有哪些方式、java中如何得到数据库中表的字段类型、spring 怎么动态配置 连接不同的数据库.oracle 或是mysql等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)