DB的连接方式练习
admin
2023-05-26 18:41:08
0

Today,测试java DB的连接方式。

目前就我所知了解的有两种:

    1. jdbc代码链接    

    2. dataSource 链接

下面来详细了解一下这两种连接方式

    第一种 JDBC连接,对此我们需要了解一下JAVA的相关类 javax.sql类

软件包 javax.sql

为通过java 编程语言进行的服务器端数据源访问和处理提供API

接口摘要

CommonDataSource 此接口定义在DataSource 、XADataSource 和 ConnectionPollDataSource 之间共用方法

    1.所有子接口 ConnectionPoolDataSource DataSource XADataSource

    2.方法摘要 

        a. int getLoginTimeout() 获取此数据源试图连接到某以数据库时可以等待的最长时间,一秒位单位

        b.PrintWriter getLogWriter() 获取此DataSource 对象日志 write.

        c.void setLoginTimeout(int seconds)   设置此数据源试图连接到某以数据库时将等待的最长时间,一秒为单位

        d. setLogWriter(PrintWriter out) 将此DataSource 对象的日志writer设置为给定的java.io.PrintWriter

以上是超级接口CommonDataSource的方法,以及已知的子接口

下面说说三个子接口

  1. ConnectionPoolDataSource 

    1. PooledConnection对象工厂

    2. 方法是继承了父类CommonDataSource的方法 getLoginTimeOut setLoginTimeOut setLogWriter getLogWriter,自己的方法有:

      1. PooledConnection getPooledConnection()尝试建立可用作入池连接的物理数据库连接

      2. PooledConnection getPooledConnection(String usr,String password)尝试建立可用作入池连接的物理数据库连接

  2. 接口DataSource

    1. DataSource 这个接口不仅继承了CommonDataSource 还 继承了Wrapper

    2. 该工厂用于提供到此DataSource 对象所表示的物理数据源的连接。作为DriverManager 工具的替代项,DataSource 对象是获取连接的首选方法。实现DataSource接口的对象通常在基于Java Naming and Directory Interface (JNDI) API的命名服务中注册。

    3. DataSource 接口由驱动程序供应商实现。共有三种类型实现:

      1. 基本实现 - 生成标准的 Connection对象

      2. 连接池实现 - 生成自动参玉连接池的Connection对象,此实现与中间层连接池管理器一起使用

      3. 分布式事务实现 - 生成一个Connection 对象,该对象可用于分布式事务,大多数情况下总是参与连接池。此实现与中间层事务管理器一起使用,大多数情况下总是与连接池管理器一起使用。

      4. DataSource 对象的属性在必要的时候可以修改。列如,如果将数据源移动到另一个服务器,则可以更改与服务器相关的属性。其优点在于,由于可以更改数据源的属性,所以任何访问该数据源的代码都无需更改

      5. 通过DataSource对象访问的驱动程序本身不会向DriverManager注册 通过查找操作获取DataSource对象,然后使用该对象创建Connection对象 使用基本的实现,通过DataSource对象获取的连接与通过DriverManager设施获取的连接相同。

    4. DataSource自身的方法

      1. Connection getConnection() 尝试建立与此DataSource对象所表示的数据源的连接

      2. Connection getConnection(String username,String passward) 尝试建立与此DataSource对象所表示的数据源连接

      3. 继承的方法 CommonDataSource Wrapper,CommonDataSource上面有讲解就不再重复,说下Wrapper的方法

          1. boolean isWrappseFor(Class iface)

    

    

相关内容

热门资讯

折腾10年后终止合同,美国海岸... 【文/观察者网 山猫】据美国海军学会新闻网(USNI News)当地时间19日报道,美国海岸警卫队本...
布林肯又提“实力”但承认:一对... 【文/观察者网 熊超然】据央视新闻报道,5月15日下午,美国总统特朗普结束对中国的国事访问,乘专机离...
三星电子劳资谈判结束,工会决定... △三星电子(资料图)当地时间20日深夜,当天下午再度重启的三星电子劳资谈判结束。三星电子工会一方表示...
敦促乌克兰给白俄“松绑”,美国... 【文/观察者网 张菁娟】钾肥作为提升农作物产量的关键土壤养分,不仅关乎全球粮食安全,更成为当前大国地...
“AI+金融”的下一站:新场景... 记者 胡艳明 “人工智能落到金融领域,在经历过一段时间的探索之后,未来有哪些重点的方向?”2026年...
阿里发布新一代千问旗舰模型Qw... 撰稿 | 150 克 大模型进入高速迭代的第三年,行业关注的重点正在发生变化。 过去,外界衡量一家...
消息称DeepSeek组建Ha... IT之家 5 月 20 日消息,今天下午,“甲子光年”援引 DeepSeek 相关知情人士消息称,D...
机智局 | 京东将举行首场仿真... 深圳商报·读创客户端首席记者 袁静娴 近日,京东宣布,京东零售今年将助推机器人品牌累计销售破100亿...
2026年618大促,摄影性能... 618大促即将到来,不少朋友都想趁着优惠换一台新。如果你预算在一万左右,又特别看重拍照效果,那么兼具...
原创 罗... 导读:罗峰随混沌城主踏入宇宙海倾峰界外域人族基地时,有五位宇宙之主设宴相迎,他们是彭工之主、幽侯之主...