数据源连接数据库配置相关xml文件
学完数据源连接数据后,做个笔记,当我们的程序对数据库访问频繁时,为了提高程序运行效率,我们可以通过
数据源连接数据库,从数据库连接池中直接取得出于空闲状态的数据库连接对象,以下是相关xml文件的配置:
1、 定义数据源。
数据源是JNDI(Java Naming and Directory Interface)资源的一种,下面开始定义数据源
在对应的JavaWeb项目下的META-INF目录下创建一个context.xml文件,
以下为context.xml文件内容及各属性说明。
1 <?xml version="1.0" encoding="UTF-8"?>
2 <Context>
3
4 <!-- 定义数据源-->
5
6 <!--
7 name:指定Resource的JNDI名字
8 auth:指定管理Resource的Manager,有两个可选值,Container表示由容器来创建和管理Resource
9 Application表示由Web应用来创建和管理Resource
10 type:指定Resource所属的Java类名
11
12 username:数据库用户名 password:连接数据库的口令
13 driverClassName:指定连接数据库的JDBC驱动器中的Driver实现类的名字
14 url:指定数据库的URL
15
16 注意:如果url中用到useSSL=true/false,则需要在所有的'&'后面加上"amp;"如下
17 -->
18 <Resource name="jdbc/BookDB" auth="Container" type="javax.sql.DataSource"
19 username="root"
20 password="Cz123"
21 driverClassName="com.mysql.jdbc.Driver"
22 url="jdbc:mysql://localhost:3306/Books?characterEncoding=utf8&useSSL=true"/>
23
24 </Context>
1、 声明JNDI资源的引用
如果Web应用访问了由Servlet容器管理的某个JNDI资源,那么必须在web.xml文件中注册中声明对这个JNDI资源的引用。在项目下的WEB-INF目录下创建web.xml文件
内容及各属性说明如下:
1 <?xml version="1.0" encoding="UTF-8"?>
2
3 <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
4 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
5 xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
6 http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
7 version="3.1"
8 metadata-complete="true">
9
10 <display-name>Tomcat Manager Application</display-name>
11 <description>
12 A scriptable management web application for the Tomcat Web Server;
13 Manager lets you view, load/unload/etc particular web applications.
14 </description>
15
16 <!-- 声明引用数据源 -->
17 <!--
18 <res-ref-name>:指定所引用资源的JNDI名字,与定义的数据源的<Resource>元素中的name属性对应
19 <res-type>:指定所引用资源的类名字,与定义的数据源的<Resource>元素中的name属性对应
20 <res-auth>:指定管理所引用资源的Manager,与定义的数据源的<Resource>元素中的auth属性对应
21 -->
22 <resource-ref>
23 <description>DB Connection</description>
24 <res-ref-name>jdbc/BookDB</res-ref-name>
25 <res-type>javax.sql.DataSource</res-type>
26 <res-auth>Container</res-auth>
27 </resource-ref>
28
29 </web-app>
取得数据库连接:javax.naming.Context ctx = InitialContext(); //取得Context对象
//调用context对象的lookup方法,通过引用资源的name获得数据源对象
//因为笔者用的是Tomcat服务器,所有要在name前面加上java:comp/env(固定格式)
javax.sql.DataSource ds = ctx.lookup(“java:comp/env/jdbc/BookDB”);
//通过数据源,获得数据库连接对象
Connection con = ds.getConnection();
数据源连接数据库配置相关xml文件的更多相关文章
- 使用java代码动态配置与xml文件结合的方式使用mybatis-generator生成代码配置
1.使用java代码动态配置与xml文件结合的方式使用mybatis-generator生成代码配置 2.上代码:在resources目录下新建:generatorConfiguration.xml文 ...
- struts2——配置struts.xml文件
在struts2框架中struts.xml是应当放到src的根目录,程序编译后会将struts.xml放到WEB-INF/classes目录下. Struts2在web.xml中的一般配置如下: &l ...
- eclipse配置mybatis xml文件自动提示(转)
原文链接 原文如下: 如果使用eclipse中,再写mybatis的xml文件的时候,没有提示,用“Alt+/”,不能把代码用快捷键敲出来,可以试试下面要说的这种方法,反正我试了,我这个可以. 1.下 ...
- PHP配置数据库XML文件
<?php $doc=new DOMDocument('1.0','utf-8'); //new一个dom对象 $doc->load("config.xml"); 加载 ...
- 配置tomcat-users.xml文件
今天在学习登录日志保存时出现一系列错误,想查看浏览器后台的session,结果忘记怎么看用户名和密码了,下面是转载自民工也Coding的一篇文章, 文章链接为:http://www.cnblogs.c ...
- eclipse配置mybatis xml文件自动提示
如果使用eclipse中,再写mybatis的xml文件的时候,没有提示,用“Alt+/”,不能把代码用快捷键敲出来,通过下面这个方法,可以解决. 1.下载一个文件,找一个专门的地方保存,配置自动提示 ...
- 2.6 XML配置:XML文件节点说明
来源:http://blog.csdn.net/five3/article/details/25907693 TestNG的DTD检查文件:http://testng.org/testng-1.0.d ...
- 按照TomCat版本重新配置web.xml文件
在TomCat的目录:C:\Program Files\Apache Software Foundation\Tomcat 9.0_Tomcat9.2\webapps\ROOT\WEB-INF下的we ...
- java配置context.xml文件
2018-02-08 23:32:23 修改context.xml文件 自从学习了servlet后,每次修改里面的内容后,想要访问都要重启服务器,这样感觉很麻烦的,所以今天就教大家一个方法,只需要 ...
随机推荐
- java并发编程工具类JUC第一篇:BlockingQueue阻塞队列
Java BlockingQueue接口java.util.concurrent.BlockingQueue表示一个可以存取元素,并且线程安全的队列.换句话说,当多线程同时从 JavaBlocking ...
- oepncv实现——图像去水印
功能简介:通过拖动鼠标实现指定区域水印或是斑点的去除. 实现原理:利用opencv鼠标操作setMouseCallback函数框选(左上到右下)需要处理的区域,按下鼠标开始选中,松开鼠标结束,对选中区 ...
- 2. Servlet3.0注解方式 @WebServlet
web.xml配置还是比较麻烦,这次使用注解方式 编写servlet import javax.servlet.ServletException; import javax.servlet.annot ...
- go语言json技巧
go语言json技巧 本文总结了在项目中遇到的那些关于go语言JSON数据与结构体之间相互转换的问题及解决办法. 基本的序列化 首先我们来看一下Go语言中json.Marshal()(系列化)与jso ...
- Docker学习(5) 在docker中部署静态网站
在容器中部署静态网站 设置容器的端口映射 在容器中部署静态网站 - Nginx部署流程 1 创建映射80端口的交互式容器 2 安装Nginx 3 安装文本编辑器vim 4 创建静态页面 5 修改N ...
- Python+Selenium - js操作
js操作:日期框 本部分涉及两个知识点:DOM树和js DOM树教程链接: https://www.w3school.com.cn/htmldom/index.asp js教程链接 https://w ...
- Unity 2018.3.0f 版本用C#编程启动VS时出现"Visual Studio 2010 Shell 无效的许可证数据"的解决办法
C#编程时,启动VS出现的问题如图: 网上有提到用更改注册表的方式,亲测效果未发生改变,在不确定修改后效果如何时,尽量先将原有的数据备份下来: 本文介绍楼主用另外一种方式解决的: 由于脚本系统默认启动 ...
- 通过Mellanox ConnectX NIC使用XDP加速
通过Mellanox ConnectX NIC使用XDP加速 Accelerating with XDP over Mellanox ConnectX NICs XDP(eXpress Data Pa ...
- Gbps接口面向汽车应用
Gbps接口面向汽车应用 Gbps interfaces target automotive appications 巴黎--不久前,移动通信行业是一个领着芯片商的领头羊,命令坐着,脚跟着,然后翻身. ...
- VB Aspose.Pdf 字体变小方格问题处理
宋体是这样写的:SimSun原先以为是:宋体 先定义字体,在PDF中无法设置,这个找了很久,原来是使用:FontRepository.FindFont方式,这个坑了很久,很多都说是setFont,压根 ...