使用spring 配置数据源,并用数据源得到连接,操作sql
需要的jar包:
spring-2.5.jar ojdbc14.jar commons-pool-1.3.jar commons-dbcp-1.4.jar
sys.properties文件:
jdbc.driverClassName=oracle.jdbc.driver.OracleDriver
jdbc.url=jdbc:oracle:thin:@localhost:1521:orcl
jdbc.username=scott
jdbc.password=tiger
app.xml文件:
- <?xml version="1.0" encoding="UTF-8"?>
- <beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns:aop="http://www.springframework.org/schema/aop"
- xmlns:tx="http://www.springframework.org/schema/tx"
- xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
- http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
- http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd"
- default-autowire="byName" default-lazy-init="true">
- <!-- 属性文件读入 -->
- <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
- <property name="locations">
- <list>
- <value>classpath*:conff/sys.properties</value>
- </list>
- </property>
- </bean>
- <!--
- <bean id="mydataSource" class="org.apache.commons.dbcp.BasicDataSource">
- <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property>
- <property name="url"
- value="jdbc:oracle:thin:@localhost:1521:ORCL">
- </property>
- <property name="username" value="scott"></property>
- <property name="password" value="tiger"></property>
- </bean>
- -->
- <!-- -->
- <bean id="mydataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
- <property name="driverClassName"><value>${jdbc.driverClassName}</value></property>
- <property name="url"><value>${jdbc.url}</value></property>
- <property name="username"><value>${jdbc.username}</value></property>
- <property name="password"><value>${jdbc.password}</value></property>
- </bean>
- <bean id="myJdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
- <property name="dataSource">
- <ref bean="mydataSource"/>
- </property>
- </bean>
- </beans>
Ora2.java文件:
- package oracletest;
- import java.sql.Connection;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.sql.Statement;
- import javax.sql.DataSource;
- import org.springframework.context.ApplicationContext;
- import org.springframework.context.support.ClassPathXmlApplicationContext;
- import org.springframework.jdbc.datasource.DataSourceUtils;
- public class Ora2 {
- private DataSource dataSource;
- private static ApplicationContext applicationContext;
- private String[] xmlClassPath={
- "conff/app.xml"
- };
- public Ora2(){
- applicationContext=new ClassPathXmlApplicationContext(xmlClassPath);
- }
- public static Object getBean(String beanName){
- return applicationContext.getBean(beanName);
- }
- public DataSource getDataSource() {
- return dataSource;
- }
- public void setDataSource(DataSource dataSource) {
- this.dataSource = dataSource;
- }
- @SuppressWarnings("rawtypes")
- public static void main(String[] args) {
- Ora2 dd=new Ora2();
- dd.setDataSource((DataSource)dd.getBean("mydataSource"));
- //如果用数据源获取Connection对象,则要用到DataSourceUtils
- Connection con=DataSourceUtils.getConnection(dd.getDataSource());
- try {
- Statement stmt=con.createStatement();
- String sql="select pass,dd from t1 where pass='vv'";
- ResultSet res=stmt.executeQuery(sql);
- //遍历结果集
- while(res.next()){
- System.out.println(res.getString("PASS")+"---"+res.getString("DD"));
- }
- //关闭连接
- if((con!=null)||(!con.isClosed())){
- con.close();
- con=null;
- }
- if((stmt!=null)||(!stmt.isClosed())){
- stmt.close();
- stmt=null;
- }
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- }
//输出结果:
- Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@3e86d0: display name [org.springframework.context.support.ClassPathXmlApplicationContext@3e86d0]; startup date [Tue Oct 18 11:04:30 CST 2011]; root of context hierarchy
- Loading XML bean definitions from class path resource [conff/app.xml]
- Bean factory for application context [org.springframework.context.support.ClassPathXmlApplicationContext@3e86d0]:org.springframework.beans.factory.support.DefaultListableBeanFactory@191d8c1
- Loading properties file from URL [file:/D:/work/des/bin/conff/sys.properties]
- Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@191d8c1: defining beans [propertyConfigurer,mydataSource,myJdbcTemplate]; root of factory hierarchy
vv---2011-10-10 16:48:39.0
vv---null
使用spring 配置数据源,并用数据源得到连接,操作sql相关推荐
- Spring 配置多个数据源,并实现动态切换
1.配置两个不同的数据源,如下 <!-- 数据源配置1 --> <bean id="testDataSource1" class="com.alibab ...
- 【重温SSM框架系列】2 - Spring配置数据源连接池(手动创建与配置)
Spring配置数据源) 数据源(连接池概述) 自定义数据源(手动创建) 1. 导入Druid和mysql数据库驱动依赖包 2. 创建数据源对象并配置基本连接信息 使用JDBC操作数据库,打印user ...
- Spring配置数据源(连接池)
1.数据源(连接池)的作用:为了提高程序的性能而出现的 2.数据源的原理: *事先实例化数据源,初始化部分连接资源 *使用连接资源时从数据源中获取 *使用完毕后将连接资源归还给数据源 使用c3p0的步 ...
- Spring Boot Jpa多数据源配置
2019独角兽企业重金招聘Python工程师标准>>> 前言 随着业务量发展,我们通常会进行数据库拆分或是引入其他数据库,从而我们需要配置多个数据源,如:user一个库,busine ...
- 【spring boot】 mybatis配置双数据源/多数据源
前言 spring boot 2.0.0.RELEASE maven 3.5 eclipse 4.9.0 mybatis 1.3.2 mybatis generator 1.3.2 pagehelpe ...
- spring—配置数据源
数据源(连接池)的作用 数据源(连接池)是提高程序性能如出现的 事先实例化数据源,初始化部分连接资源 使用连接资源时从数据源中获取 使用完毕后将连接资源归还给数据源 常见的数据源(连接池):DBCP. ...
- Spring MVC+Mybatis 多数据源配置
文章来自:https://www.jianshu.com/p/fddcc1a6b2d8 1. 继承AbstractRoutingDataSource AbstractRoutingDataSource ...
- spring配置数据源的4种方式--简介
在spring中配置数据源这是做项目不可避免的,今天我把了解到的配置方式在这里做个总结. 本人目前知道4种方式. 1.jdbc org.springframework.jdbc.datasource. ...
- Spring - Spring配置文件-Spring配置数据源详解
文章目录 一般方式配置数据源 数据源(连接池)的作用 数据源开发的步骤 数据源创建演示(c3p0) 创建maven-web骨架项目 导入mysql.c3p0.druid.junit坐标 创建编写测试类 ...
- Spring Boot使用spring-data-jpa配置Mysql多数据源
转载请注明出处 :Spring Boot使用spring-data-jpa配置Mysql多数据源 我们在之前的文章中已经学习了Spring Boot中使用mysql数据库 在单数据源的情况下,Spri ...
最新文章
- 差异表达基因富集结果可视化
- TCP/IP详解--学习笔记(9)-TCP协议概述
- [专栏目录]-Crypto学习笔记目录
- php krsort重置索引,PHP数组处理函数举例
- Spark _05Standalone模式两种提交任务方式
- C++中指针和引用的选择
- snmp协议_SNMP开发和使用
- STM8 ADC转换模式-------单次扫描模式
- 黑马程序员 Python学习笔记之PyCharm 的初始设置
- paddlehub 使用体验-视频抠图_乘风破浪的姐姐_人美路子野 2020-08-13
- 史上超全web渗透测试思维导图
- BScroll warn 】EventEmitter has used unknown event type: “pullingUp“解决方法:看bs文档
- PS如何做文字扫描效果(用于较清晰的扫描件)
- 原来长期佩戴耳机危害那么大!现在你知道还不算太晚
- w ndows资源管理器无响应,windows资源管理器未响应
- 使用python依次比较两个pcap文件中的每个报文
- 物联网卡无法激活使用的原因
- SSM框架自学笔记--------巨细!!!!!!!!
- 如何围绕某一轴(不是xyz)旋转——transform.RotateAround
- 网站加载图片慢 网页响应慢 网页优化
热门文章
- java删除文件中的一行_在Linux中使用java和javac命令编译运行java文件
- java 怎么匹配文章_Java 14 之模式匹配,非常赞的一个新特性!
- mysql账户最小授权_mysql 创建帐号并授权
- 计算机大学一个专业几个班,2016年兰州大学计算机类(含基地班、计算机科学与技术等4个专业)专业最低分是多少?...
- 使用Seaborn和Pandas进行数据可视化
- 2019开发者调查:Python 或成赢家,Java 最不赚钱?
- oracle linux 图形化,Linux7图形化安装Oracle11g教程,亲测实用有效!
- ajax请求整理(一) 2021.05.12
- python logging模块详解_python logging模块使用总结
- 计算机绘图图库的创建,工程制图与计算机绘图.doc