博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
配置Tomcat数据源
阅读量:6613 次
发布时间:2019-06-24

本文共 1879 字,大约阅读时间需要 6 分钟。

hot3.png

Tomcat的两种数据源的配置方式:

1. 全局数据源:所有的Web应用都可以访问

2. 局部数据源:单个Web应用使用(在对应的Web应用部署文件中配置)

 

如果你是用eclipse开发,同时不想在server.xml中配置数据源的话,就可以进行如下操作:
jdbc 是:mysql-connector-java-5.1.6-bin.jar
数据库是:mysql 5.1
1.
建一个数据库(如果你有,并确定你可以看明白下面的配置,可以自己做一些修改的话就可以不用做这一步)

drop database javaee;

create database javaee;
use javaee;

create table news_inf

(
 news_id int primary key auto_increment,
 news_title varchar(255)
);

insert into news_inf

values
(null , '疯狂Java联盟'),
(null , 'crazyit.org');

2.
把你对应的jdbc放到tomcat的lib目录下,如笔者要把mysql-connector-java-5.1.7-bin.jar放到tomcat的lib下面。
3.
你的项目的WebRoot中的META-INF 下建一个文件context.xml(这是一定要的,而且不能取别的名字)
4.
在上面所说的新建的context.xml中写下这个些代码:
<?xml version="1.0" encoding="UTF-8"?>
<Context>
    <Resource name="jdbc/dstest" auth="Container" type="javax.sql.DataSource"
               maxActive="5" maxIdle="2" maxWait="10000"
               username="root" password="li"
               driverClassName="com.mysql.jdbc.Driver"
               url="jdbc:mysql://localhost:3306/javaee"/>
    <!-- 同时要在tomcat的lib下面加上对应的jdbc -->
</Context>
说明:li是你的数据库的密码,javaee是想要连接上的数据库
到现在你的配置已经完成,下面写一个测试代码:
<%@ page contentType="text/html; charset=GBK" language="java"
    errorPage=""%>
<%@ page import="javax.naming.*,java.sql.*,javax.sql.*"%>
<html>
    <head>
        <title></title>
    </head>
    <body>
        <%
            //初始化Context,使用InitialContext初始化Context
            Context ctx = new InitialContext();
            /*
            通过JNDI查找数据源,该JNDI为java:comp/env/jdbc/dstest,分成两个部分
            java:comp/env是Tomcat固定的,Tomcat提供的JNDI绑定都必须加该前缀
            jdbc/dstest是定义数据源时的数据源名
            */
            DataSource ds = (DataSource) ctx
                    .lookup("java:comp/env/jdbc/dstest");
            //获取数据库连接
            Connection conn = ds.getConnection();
            //获取Statement
            Statement stmt = conn.createStatement();
            //执行查询,返回ResulteSet对象
            ResultSet rs = stmt.executeQuery("select * from newsinf");
            while (rs.next()) {
                out.println(rs.getString(2) + "<br/>");
            }
        %>
    </body>
</html>
你只要把这段代码保存为比如a.jsp放到你项目的WebRoot目录下就可以。
然后就运行项目,访问这个页面,如果出现
1 疯狂Java联盟
2 crazyit.org
就说明成功了

转载于:https://my.oschina.net/xiahuawuyu/blog/70869

你可能感兴趣的文章
【Lucene】Lucene通过CustomScoreQuery实现自定义评分
查看>>
我的友情链接
查看>>
Android应用程序组件Content Provider的共享数据更新通知机制分析(3)
查看>>
敏友的【敏捷个人】有感(11): 敏捷个人线下活动有感
查看>>
刺激用户危机意识,实现快速盈利的营销思维
查看>>
英特尔嵌入式突围
查看>>
WIN FORM 多线程更新UI(界面控件)
查看>>
JDBC公共动作类
查看>>
JUnit单元测试
查看>>
[logstash-input-file]插件使用详解
查看>>
HDU 3103 Shoring Up the Levees(计算几何 搜寻区域)
查看>>
spring mvc模拟用户增删改查以及登录和上传文件的相关流程
查看>>
植物大战僵尸
查看>>
原创文章
查看>>
python之文件操作-复制、剪切、删除等
查看>>
理解JavaScript私有作用域
查看>>
BZOJ 1012: [JSOI2008]最大数maxnumber【线段树单点更新求最值,单调队列,多解】
查看>>
Drupal 7模板(主题钩子)的建议
查看>>
nginx配置文件中location说明
查看>>
连载-第1章绪论 1.1嵌入式系统概述
查看>>