在Tomcat中配置数据源

使用工具:TOMCAT 7.0.52、IntelliJ IDEA 13.0.2、JSF 2.0+、SqlServer、jtds-1.2.5.jar

搞了好久都没成功,开始使用注解引入DataSource,可是一直不成功,后来使用lookup方式,写了一个本地主类(包含main方法)测试,也是不成功,艹,都快崩溃了,后来经过各种测试,终于搞定了,本地主类测试是无效的,必须通过web访问才能成功,真尼玛蛋疼。注解估计跟版本有关,没精力去弄了。

以下是配置步骤(相应的路径换成自己的):

1、把jtds-1.2.5.jar放到Tomcat目录里的lib目录下。如:D:\IntelliJ\tomcat7\lib

2、在D:\IntelliJ\tomcat7\conf目录里的context.xml文件里加上如下代码:

1 <Context>
2     <WatchedResource>WEB-INF/web.xml</WatchedResource>
3     <Resource name="jdbc/sqlserver" auth="Container" type="javax.sql.DataSource"
4               driverClassName="net.sourceforge.jtds.jdbc.Driver"
5               url="jdbc:jtds:sqlserver://localhost:1433/yourDatabaseName"
6               username="username" password="password" maxActive="100"  maxIdle="30"/>
7 </Context>

3、在你项目里的web.xml文件里加入如下内容:

1     <!--配置数据源-->
2     <resource-ref>
3         <description>Sqlserver Datasource</description>
4         <res-ref-name>jdbc/sqlserver</res-ref-name>
5         <res-type>javax.sql.DataSource</res-type>
6         <res-auth>Container</res-auth>
7     </resource-ref>

4、在你的代码里引用数据源:

 1     private DataSource ds;
 2
 3     public LoginBean() {
 4
 5         try {
 6             // 初始化查找命名空间
 7             Context ctx = new InitialContext();
 8             ds = (DataSource)ctx.lookup("java:comp/env/jdbc/sqlserver") ;
 9         } catch (NamingException e) {
10             System.out.println("使用lookup找不到数据源.");
11             e.printStackTrace();
12         }
13
14     }

5、测试test.jsp:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8" %>
<%@ page import="java.sql.*"%>
<%@ page import="javax.sql.*"%>
<%@ page import="javax.naming.*"%>
<%!
    final String JNDINAME = "java:comp/env/jdbc/sqlserver" ;
%>
<%
    Connection conn = null ;
    try
    {
        // 初始化查找命名空间
        Context ctx = new InitialContext() ;
        // 找到DataSource
        DataSource ds = (DataSource)ctx.lookup(JNDINAME) ;
        conn = ds.getConnection() ;
        String sql="select passwd,logincount from credential where username=?";
        PreparedStatement pwdQuery=conn.prepareStatement(sql);
        pwdQuery.setString(1,"admin");
        ResultSet result=  pwdQuery.executeQuery();
        if(!result.next()){
             return;
         }
        System.out.println(result.getString("passwd")) ;
    }
    catch(Exception e)
    {
        System.out.println(e) ;
    }
%>
<%=conn%>
<%
    // 将连接重新放回到池中
    conn.close() ;
%>

只要能输出数据库的连接信息就没问题了。

如果注解不能使用,就不要纠结了,换种方式。

时间: 2024-08-09 13:41:40

在Tomcat中配置数据源的相关文章

Spring MVC 使用tomcat中配置的数据源

Spring MVC 使用tomcat中配置的数据源 配置tomcat数据源 打开tomcat目录下的conf目录,编辑sever.xml目录.在<GlobalNamingResources>标签中添加数据源配置: <Resource name="jdbc/dbsourse" scope="Shareable" type="javax.sql.DataSource" factory="org.apache.tomcat

在Tomcat中配置连接池和数据源

1.DataSource接口介绍 (1)DataSource 概述 JDBC1.0原来是用DriverManager类来产生一个对数据源的连接.JDBC2.0用一种替代的方法,使用DataSource的实现,代码变的更小巧精致,也更容易控制. 一个DataSource对象代表了一个真正的数据源.根据DataSource的实现方法,数据源既可以是从关系数据库,也电子表格,还可以是一个表格形式的文件.当一个DataSource对象注册到名字服务中(JNDI),应用程序就可以通过名字服务获得DataS

spring中配置数据源

spring中配置数据源的几种常见方式: #mysql 数据库配置(jdbc.properties) jdbc.driverClassName=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/databaseName?useUnicode=true&characterEncoding=UTF-8 jdbc.username=root jdbc.password=root 1.使用spring自带的数据源org.springfr

在 Tomcat 中配置 SSL/TLS 以支持 HTTPS

本件详细介绍了如何通过几个简单步骤在 Tomcat 中配置 SSL/TLS .使用 JDK 生成自签名的证书,最终实现在应用中支持 HTTPS 协议. 生产密钥和证书 Tomcat 目前只能操作 JKS.PKCS11.PKCS12 格式的密钥存储库.JKS 是 Java 标准的"Java 密钥存储库"格式,是通过 keytool 命令行工具创建的.该工具包含在 JDK 中.PKCS12 格式一种互联网标准,可以通过 OpenSSL 和 Microsoft 的 Key-Manager 来

[转载]JavaEE学习篇之——网络传输数据中的密码学知识以及Tomcat中配置数字证书EE

原文链接:http://blog.csdn.net/jiangwei0910410003/article/details/21716557 今天是学习JavaWeb的第二天,我们来了解什么呢?就了解一下Tomcat中配置数字证书的相关内容,但是在说这部分内容的时候,我们貌似得先说一下数字证书的相关概念,那说到数字证书的时候我们还得了解一些密码学的相关知识,这就是连锁反应吗?好吧不多说了,先来看一下密码学中关于网络中数据传输的知识. 首先来了解一下网络上传输数据的加密方式: 第一种是对称加密:就是

在tomcat中配置JNDI

1.关于tomcat的server.xml配置文件 在tomcat的配置文件conf/server.xml文件的<Host>标签中加入<Context>标签可以标记当前Web应用,应用随系统启动而加载,如: <Context path="" docBase="E:\TestPro\WebRoot" reloadable="true" > </Context> 这里讲path属性标记为空,访问系统时就

tomcat在ROOT中配置数据源

在tomcat5.0之前在conf目录下面有一个Catalina==>localhost 的文件夹,其下面有ROOT.xml文件,但是在5.0之后就被删除了(表示这么好用的东东怎么要删除呢,既然删除了我们就手动创建这个目录),这个ROOT.xml用来设置tomcat启动时默认的项目,也可以在里面配置数据源.5.0之后在conf==>servert.xml 中配置tomcat启动时默认的项目和数据源,但是本人还是认为在ROOTxml中比较方便.以下是ROOT.xml中的配置. <?xml 

Springmvc +JNDI 在Tomcat下 配置数据源(转)

一.             简介 jndi(Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API.命名服务将名称和对象联系起来,使得我们可以用名称访问对象.目录服务是一种命名服务,在这种服务里,对象不但有名称,还有属性. 二.             tomcat配置jndi有三种方式. 第一种:单个应用独享数据源 在Tomcat的server.xml找到工程的Context节点,添加一个私有数据源 <

web课程作业中配置数据源的说明

(以下内容是我个人对配置数据源的一点理解,如有错误请指正,不胜感激) web课程的第一次作业的第二个,关于手动配置数据源,不少同学比较困惑,而且我解决之后也未必理解深刻,这份文档只是写一下个人的一些想法,希望能够帮助到大家. PS:老师给的ppt大部分代码是直接可以用的,但可能老师为了让大家解决问题,会故意设置一些错误代码,让大家更深入的理解. 用eclipse,myeclipse等开发工具进行过连接数据库的代码,可能有不少同学写过.我们通过在开发工具引入jar包,然后注册驱动,建立连接等等(比