1 Tomcat配置JNDI资源
JNDI(Java Naming and Directory Interface),Java命名和目录接口。JNDI的作用就是:在服务器上配置资源,然后通过统一的方式来获取配置的资源。
我们这里要配置的资源当然是连接池了,这样项目中就可以通过统一的方式来获取连接池对象了。
下图是Tomcat文档提供的:
配置JNDI资源需要到<Context>元素中配置<Resource>子元素:
<Context> <Resource name="mydbcp" type="org.apache.tomcat.dbcp.dbcp.BasicDataSource" factory="org.apache.naming.factory.BeanFactory" username="root" password="123" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://127.0.0.1/mydb1" maxIdle="3" maxWait="5000" maxActive="5" initialSize="3"/> </Context> |
<Context> <Resource name="myc3p0" type="com.mchange.v2.c3p0.ComboPooledDataSource" factory="org.apache.naming.factory.BeanFactory" user="root" password="123" classDriver="com.mysql.jdbc.Driver" jdbcUrl="jdbc:mysql://127.0.0.1/mydb1" maxPoolSize="20" minPoolSize ="5" initialPoolSize="10" acquireIncrement="2"/> </Context> |
2 获取资源
配置资源的目的当然是为了获取资源了。只要你启动了Tomcat,那么就可以在项目中任何类中通过JNDI获取资源的方式来获取资源了。
下图是Tomcat文档提供的,与上面Tomcat文档提供的配置资源是对应的。
获取资源:
Context cxt = new InitialContext(); DataSource ds = (DataSource)cxt.lookup("java:/comp/env/mydbcp"); Connection con = ds.getConnection(); System.out.println(con); con.close(); //较第二种方便,推荐使用这种 |
Context cxt = new InitialContext(); Context envCxt = (Context)cxt.lookup("java:/comp/env"); DataSource ds = (DataSource)env.lookup("mydbcp"); Connection con = ds.getConnection(); System.out.println(con); con.close(); |
上面两种方式是相同的效果。
文章浏览阅读569次。带多选的下拉框QCombox_qt combobox设置多选下拉框
文章浏览阅读1.6w次。1,执行#hive命令进入Hive CLI时报如下错误:Exception in thread "main" java.lang.RuntimeException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient at org.apache.hadoop.hive.ql.session.SessionState...._hivesql常见报错
文章浏览阅读1.7k次。Oracle_oracle管理工具
文章浏览阅读456次。大多了外贸企业为了能保证公司的正常运作,是允许员工远程办公甚至居家办公的。那么作为外贸人员如何用远程软件跟单?怎么用远程软件进行跟单操作?_线上跟单操作
文章浏览阅读9次。1网页简介:此作品为学生个人主页网页设计题材,学生个人单页面网页作业 学生网页设计成品 静态HTML网页单页制作 dreamweaver网页设计与制作代码 web前端期末大作业2.网页编辑等任意html编辑软件进行运行及修改编辑等操作)。3.知识应用:技术方面主要应用了网页知识中的: Div+CSS、鼠标滑过特效、Table、导航栏效果、Banner、表单、二级三级页面等,视频、 音频元素 、Flash,同时设计了Logo(源文件)所需的知识点。一套合格的网页应该包含(具体可根据个人要求而定)...
文章浏览阅读4.2k次,点赞4次,收藏34次。纵横CW大鹏无人机地面站航线规划方法_纵横地面站
文章浏览阅读446次。前言JVM有两种算法来判断对象是否存活,分别是引用计数法和可达性分析算法,针对引用计数法STW不足、内存消耗等问题下可依赖三色标记法解决。引用计数法概念对象中添加一个计数器,每当有一个地方引用它,计数器就加 1;如果引用失效,计数器就减 1;任何时候计数器为 0 的对象就是不可能再被使用的。优点这个方法实现简单,效率高。缺点很难解决对象之间相互循环引用,循环引引用会导致对象无法被回收,最终会导致内存泄漏及内存溢出。可达性分析概念通过一_可达性分析和引用计数
文章浏览阅读140次。选自Global App Testing作者:Nick Roberts机器之心编译参与:杜伟、戴一鸣自 2008 年创办以来,Stack Overflow 致力于为所有类型的开发者提供帮助,开发者们也提出了涵盖所有开发领域的大量问题。但是,哪些问题是开发者不得不向 Stack Overflow 寻求解决的呢?本文作者通过对十一年来人们在 Stack Overflow 上提问进行了词云统计,通过错误..._c++可视化编程还流行吗
文章浏览阅读9.1k次,点赞4次,收藏11次。错误样式:'utf8' codec can't decode byte 0xc0 in position 0: invalid start byte错误原因:报这个错误提示的意思我理解的是存在中文无法解读,因为我没有输入中文,所有推测可能是当前用户的user文件夹为中文用户所拥有,在访问一些文件时存在中文的路径无法访问,很多的应用都是这样,不支持访问中文路径,这个算是一个比较常见的一个报错..._utf-8' codec can't decode byte 0xc0 in position 0: invalid start byte
文章浏览阅读3.3k次,点赞3次,收藏23次。大家好,今天给大家分享一下明哥整理的一篇 Python 参数的内容,内容非常的干,全文通过案例的形式来理解知识点,自认为比网上 80% 的文章讲的都要明白,如果你是入门不久的 python 新手,相信本篇文章应该对你会有不小的帮助。接下来是正文。_**表示可变参数,通常使用**kw
文章浏览阅读4.3k次,点赞6次,收藏6次。 他妈的,真是服了,这个破问题竟然困了我好几个小时。一直在网上找没有相关的教程,又不想花太多时间翻墙,只好自己摸索这样子。 一个一个问题的排除,查看日志,都没有找到问题所在。 我都怀疑是不是软件问题,或者其他什么的了。 哎,也怪自己上课不认真吧,自己给自己挖了一个坑。 在此记录一下。 (但是说实话这里还是比较容易出错的,尤其对于那些自己为很聪明的人来说,哈哈哈)。 我..._idea中点击apply没有反应
文章浏览阅读60次。1、前端如何选择图片的格式?2、解释一下 浏览器的标准模式和怪异模式 (混杂模式)3、简述从输入网址到页面显示的整个过程