You need to enable JavaScript to run this app.
最新活动
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Tomcat9中,org.apache.tomcat.jdbc.pool.ConnectionPool.init忽略自定义DataSource的问题。

在Tomcat的context.xml文件中,可以配置DataSource来供应用程序使用。但在Tomcat9中,当使用自定义DataSource时,ConnectionPool.init方法会忽略自定义的DataSource,而使用默认的DataSource。此时可以通过在context.xml中配置Resource来自定义DataSource,并在代码中使用JNDI来获取此DataSource。

以下是代码示例:

  1. 在Tomcat的context.xml文件中,添加如下配置:

<Context> <Resource name="jdbc/myDB" auth="Container" type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/myDB" username="username" password="password" maxActive="100" maxIdle="20" minIdle="5" maxWait="10000"/> </Context>

  1. 在代码中,使用JNDI获取DataSource:

import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; import javax.sql.DataSource;

public class MyConnectionProvider {

public static Connection getConnection() throws NamingException, SQLException { Context initCtx = new InitialContext(); Context envCtx = (Context) initCtx.lookup("java:comp/env"); DataSource ds = (DataSource) envCtx.lookup("jdbc/myDB"); Connection conn = ds.getConnection(); return conn; } }

这样就可以获得自定义的DataSource,并使用它来获取Connection了。

本文内容通过AI工具匹配关键字智能整合而成,仅供参考,火山引擎不对内容的真实、准确或完整作任何形式的承诺。如有任何问题或意见,您可以通过联系service@volcengine.com进行反馈,火山引擎收到您的反馈后将及时答复和处理。
展开更多
面向开发者的云福利中心,ECS 60元/年,域名1元起,助力开发者快速在云上构建可靠应用

社区干货

干货 | 在字节跳动,一个更好的企业级SparkSQL Server这么做

即基于java.sql包下定义的接口,实现了如何去连接MySQL的流程,在代码中只需要通过如下的代码方式:``` Class.forName("com.mysql.cj.jdbc.Driver"); Connection connection= DriverMan... throws org.apache.thrift.TException; public TCloseSessionResp CloseSession(TCloseSessionReq req) throws org.apache.thrift.TException; public TGetInfoRe...

干货 | 在字节跳动,一个更好的企业级SparkSQL Server这么做

即基于java.sql包下定义的接口,实现了如何去连接MySQL的流程,在代码中只需要通过如下的代码方式:```Class.forName("com.mysql.cj.jdbc.Driver");Connection connection= DriverManager.getConnection(DB_URL,... throws org.apache.thrift.TException;public TCloseSessionResp CloseSession(TCloseSessionReq req) throws org.apache.thrift.TException;public TGetInfoResp GetInfo(TGetInfoReq req) throws org.apach...

精选文章|设计一个“高效”的字节码插桩框架

比如Kotlin在Java平台的编译器最终生成class文件时就是使用的ASM来实现的。Android项目编译过程中生成的一些R类也是通过ASM来生成的。 AspectJ主要针对的是面向函数切面的编程需求,类似ASM框架的编程,需要处理的是对编译后的class文件的修改行为(通过ClassReader、ClassWriter实现),而AspectJ以注解的方式,可以让开发者在**源代码项目** 中就定义所要执行的字节码操作行为,这种方式从“简易性”上来说比ASM 要强很多,但...

在字节跳动,一个更好的企业级 SparkSQL Server 这么做

即基于java.sql包下定义的接口,实现了如何去连接MySQL的流程,在代码中只需要通过如下的代码方式:```Class.forName("com.mysql.cj.jdbc.Driver");Connection connection= DriverManager.getConnection(DB_URL,U... throws org.apache.thrift.TException;public TCloseSessionResp CloseSession(TCloseSessionReq req) throws org.apache.thrift.TException;public TGetInfoResp GetInfo(TGetInfoReq req) throws org.apache....

特惠活动

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

Tomcat9中,org.apache.tomcat.jdbc.pool.ConnectionPool.init忽略自定义DataSource的问题。 -优选内容

干货 | 在字节跳动,一个更好的企业级SparkSQL Server这么做
即基于java.sql包下定义的接口,实现了如何去连接MySQL的流程,在代码中只需要通过如下的代码方式:``` Class.forName("com.mysql.cj.jdbc.Driver"); Connection connection= DriverMan... throws org.apache.thrift.TException; public TCloseSessionResp CloseSession(TCloseSessionReq req) throws org.apache.thrift.TException; public TGetInfoRe...
干货 | 在字节跳动,一个更好的企业级SparkSQL Server这么做
即基于java.sql包下定义的接口,实现了如何去连接MySQL的流程,在代码中只需要通过如下的代码方式:```Class.forName("com.mysql.cj.jdbc.Driver");Connection connection= DriverManager.getConnection(DB_URL,... throws org.apache.thrift.TException;public TCloseSessionResp CloseSession(TCloseSessionReq req) throws org.apache.thrift.TException;public TGetInfoResp GetInfo(TGetInfoReq req) throws org.apach...
精选文章|设计一个“高效”的字节码插桩框架
比如Kotlin在Java平台的编译器最终生成class文件时就是使用的ASM来实现的。Android项目编译过程中生成的一些R类也是通过ASM来生成的。 AspectJ主要针对的是面向函数切面的编程需求,类似ASM框架的编程,需要处理的是对编译后的class文件的修改行为(通过ClassReader、ClassWriter实现),而AspectJ以注解的方式,可以让开发者在**源代码项目** 中就定义所要执行的字节码操作行为,这种方式从“简易性”上来说比ASM 要强很多,但...
在字节跳动,一个更好的企业级 SparkSQL Server 这么做
即基于java.sql包下定义的接口,实现了如何去连接MySQL的流程,在代码中只需要通过如下的代码方式:```Class.forName("com.mysql.cj.jdbc.Driver");Connection connection= DriverManager.getConnection(DB_URL,U... throws org.apache.thrift.TException;public TCloseSessionResp CloseSession(TCloseSessionReq req) throws org.apache.thrift.TException;public TGetInfoResp GetInfo(TGetInfoReq req) throws org.apache....

Tomcat9中,org.apache.tomcat.jdbc.pool.ConnectionPool.init忽略自定义DataSource的问题。 -相关内容

达梦@记一次国产数据库适配思考过程|社区征文

String url = "jdbc:dm://localhost:5236/";String username = "yxd179";String password = "yxd179";// 加载驱动Class.forName(driverClassName);// 获取数据库连接对象Connection con = (Connection) Driv... 我们是否能够扩展并自定义 databaseId?框架这层的应用真能够提供的这么 perfect 吗?在上一个Q-A中,我们已经get到了数据库产品的名称,可以从数据源连接对象中去获取,不妨从这里出发。这里先提出一点 little 猜想,...

干货 |揭秘字节跳动基于 Doris 的实时数仓探索

Flink 等引擎,并做到100%开源兼容。Doris 作为 OLAP 领域中一款极具代表性的开源组件,也被集成到了火山引擎 EMR 产品生态中。> 本文来源于山引擎 EMR 团队大数据工程师昭伟在 Doris Summit 2022 中的同名主题分享... 当时的目标是想让 Doris 能像 Presto 一样有 plugin 的能力,能做联邦查询,能够查询ES、JDBC等数据源,当然最典型的还是 Hive 、数据湖的这些表。于是通过 Catalog 直接查询 Hive、Iceberg、Hudi 表。经过了两个月...

干货 | 提速 10 倍!源自字节跳动的新型云原生 Spark History Server正式发布

Data + AI Summit峰会上的分享回顾> ,> **关注字节跳动数据平台微信公众号,回复【0831】获得PPT材料。**> > > > > > > > > ![picture.image](https://p6-volc-community-sign.byteimg.com... org.apache.spark.status.ExecutorStageSummaryWrapper org.apache.spark.status.ApplicationInfoWrapper org.apache.spark.status.PoolData org.apache.spark.status.ExecutorS...

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

弹性容器实例:基于 Argo Workflows 和 Serverless Kubernetes 搭建精细化用云工作流

install.yamlcustomresourcedefinition.apiextensions.k8s.io/clusterworkflowtemplates.argoproj.io createdcustomresourcedefinition.apiextensions.k8s.io/cronworkflows.argoproj.io createdcustomresource... resources: requests: cpu: 0.1 memory: 64Mi limits: cpu: 0.5 memory: 512Mikind: ConfigMapmetadata: name: workflow-controller-configmap namespace:...

数据库顶会 VLDB 2023 论文解读:Krypton: 字节跳动实时服务分析 SQL 引擎设计

为了解决这个问题,我们开启了 Krypton 项目,这是字节跳动基础架构 计算-实时引擎, 创新应用中心, 存储-HDFS & NoSQL 团队共同合作研发的新一代面向复杂业务的实时服务分析系统(HSAP: Hybrid Serving and Analytica... 需要定义 PK,但是相同 PK 多行的合并算法不同列可以自定义。 **架构**![picture.image](https://p3-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/78d44ed388d24ffdbdd4f043d43d5bbd~tpl...

计算引擎在K8S上的实践|社区征文

/opt/spark/bin/spark-submit - --class - org.apache.spark.sql.hive.thriftserver.HiveThriftServer2 - --name - Thrift JDBC/ODBC Server ... spark.executor.heartbeatInterval=30s - --hiveconf - javax.jdo.option.ConnectionURL=jdbc:mysql://ip:4306/metastore?createDatabaseIfNotExist=true&useSSL=false ...

干货 |揭秘字节跳动基于 Doris 的实时数仓探索

Flink 等引擎,并做到100%开源兼容。Doris 作为 OLAP 领域中一款极具代表性的开源组件,也被集成到了火山引擎 EMR 产品生态中。> > > > > 本文来源于山引擎 EMR 团队大数据工程师在 Doris Summit 2022 中的同名... 当时的目标是想让 Doris 能像 Presto 一样有 plugin 的能力,能做联邦查询,能够查询ES、JDBC等数据源,当然最典型的还是 Hive 、数据湖的这些表。于是通过 Catalog 直接查询 Hive、Iceberg、Hudi 表。经过了两个...

揭秘字节跳动基于 Doris 的实时数仓探索

Flink 等引擎,并做到100%开源兼容。Doris 作为 OLAP 领域中一款极具代表性的开源组件,也被集成到了火山引擎 EMR 产品生态中。本文来源于山引擎 EMR 团队大数据工程师在 Doris Summit 2022 中的同名主题分享,将为... 当时的目标是想让 Doris 能像 Presto 一样有 plugin 的能力,能做联邦查询,能够查询ES、JDBC等数据源,当然最典型的还是 Hive 、数据湖的这些表。于是通过 Catalog 直接查询 Hive、Iceberg、Hudi 表。经过了两个月...

数据库顶会 VLDB 2023 论文解读 - Krypton: 字节跳动实时服务分析 SQL 引擎设

为了解决这个问题,我们开启了 Krypton 项目,这是字节跳动基础架构 计算-实时引擎, 创新应用中心, 存储-HDFS & NoSQL 团队共同合作研发的新一代面向复杂业务的实时服务分析系统(HSAP: Hybrid Serving and Analytica... 需要定义 PK,但是相同 PK 多行的合并算法不同列可以自定义。## 架构![picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/a3191e9aa030462eaabb20ec6ef54904~tplv-tlddhu82om-i...

特惠活动

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

产品体验

体验中心

云服务器特惠

云服务器
云服务器ECS新人特惠
立即抢购

白皮书

一图详解大模型
浓缩大模型架构,厘清生产和应用链路关系
立即获取

最新活动

爆款1核2G共享型服务器

首年60元,每月仅需5元,限量秒杀
立即抢购

火山引擎增长体验专区

丰富能力激励企业快速增长
查看详情

数据智能VeDI

易用的高性能大数据产品家族
了解详情

一键开启云上增长新空间

立即咨询