Myeclipse WEB工程JSP使用JNDI 数据库连接池连接Mysql数据库

在网上查了很多,最后实现了。下面写一下过程:

首先,在WEBROOT/META-INF下建一个文件context.xml,内容为:

<?xml version="1.0" encoding="UTF-8"?>
 <Context>
    <Resource
        name="jdbc/ConnectionPool"
        auth="Application"
        type="javax.sql.DataSource"
        username="root"
        password="root"
        driverClassName="com.mysql.jdbc.Driver"
         url="jdbc:mysql://localhost:3306/sow"
        maxActive="8"
        maxIdle="4"/>
 </Context>

其中,name属性为数据库连接池的名称,auth属性为数据库连接池的作用范围,Application为作用于本web项目;url属性的后面sow为数据库名;

其次,在web.xml中添加配置:

 <resource-ref>
         <description>news DataSource</description>
         <res-ref-name>jdbc/ConnectionPool</res-ref-name>
         <res-type>javax.sql.DataSource</res-type>
         <res-auth>Application</res-auth>
</resource-ref>

注意里面的属性要一致。

接着,新建MyJsp.jsp用作测试

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page  import="java.sql.*" %>
<%@ page import="javax.naming.*" %>
<%@ page import="javax.sql.DataSource" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">

    <title>My JSP ‘MyJsp.jsp‘ starting page</title>

    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
    <!--
    <link rel="stylesheet" type="text/css" href="styles.css">
    -->

  </head>
  <%
    Context initCtx = new InitialContext();
    Context ctx = (Context) initCtx.lookup("java:comp/env");
    //获取连接池对象
    DataSource ds =(DataSource)ctx.lookup("jdbc/ConnectionPool");
    //创建连接
    Connection conn = ds.getConnection();
    System.out.println("conn="+conn);
    Statement stmt = conn.createStatement();
    String mysql="select * from notification_tb";
    ResultSet myrs=stmt.executeQuery(mysql); //执行查询
   %>
  <body>
    This is my JSP page. <br>
    <table>
    <%
        while(myrs.next())
        {
     %>
       <%
               String notiTheme=myrs.getString("notiTheme");
               String notiContent=myrs.getString("notiContent");
        %>
             <tr><td><%=notiTheme %></td><td><%=notiContent %></td></tr>
            <%
                System.out.println(notiTheme);
                System.out.println(notiContent);
              %>
       <%
       }
     %>
    </table>
  </body>
</html>

然后重启TOMCAT,发布网站访问http://localhost:8080/PW_Application/MyJsp.jsp即可看到结果。

时间: 2024-10-12 20:04:53

Myeclipse WEB工程JSP使用JNDI 数据库连接池连接Mysql数据库的相关文章

DBCP数据库连接池连接mysql数据库的时候 出现连接问题

在部署的项目的时候发现两个问题 ,第一个问题不是太容易发现 ,因为我部署的时候没问题 ,但是产品的同事在跑流程的时候总是出现一个connetException异常  自己看了半天没发现什么问题 去网上查了一下 说是msql的连接默认是八个小时 第二个问题就是 自己这边的数据库 隔一段时间不用的话 会自动断开  查了一下资料 是dbcp连接mysql时出现的这个问题  实际上两个问题算是一个问题吧 自己配置了一下 这几天没报这样的错误 !算是解决了吧!  <bean id="dataSour

Ubuntu jsp平台使用JDBC来连接MySQL数据库

Ubuntu 7.04 搭建Ubuntu jsp平台开发环境MySQL+tomcat+apache+j2sdk1.6在所有安装开始前先在Terminal中输入 rpm -q -a查看是否安装过rpm 和 rpm包的所需软件如果没有安装rpm在Terminal中输入 sudo apt-get install rpm. AD:2014WOT全球软件技术峰会北京站 课程视频发布 你们知道什么是Ubuntu jsp平台么这个非常高深的运用技术将由我来非常讲解,Ubuntu jsp平台NB在哪呢,下面我来

关于c3p0连接池连接mysql数据库需要注意的几点

什么是数据库连接池: 用池来管理Connection,这可以重复使用Connection.有了池,所以我们就不用自己来创建Connection,而是通过池来获取Connection对象. 当使用完Connection后,调用Connection的close()方法也不会真的关闭Connection,而是把Connection"归还"给池.池就可以再利用这个Connection对象了. 导入DBUtils的工具包:commons-dbutils-1.6.jar commons-dbuti

maven web项目中整合ssm框架(连接Mysql数据库)

前面说完怎么样创建maven web项目,这篇继续向web项目中整合进ssm(spring+springmvc+mybatis)的框架. 先发个目录图片,让萌新们知道下面提到的文件是创建在什么地方. 1.web.xml文件 修改如下: <?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" xmlns="http://java.sun.com/xml/

DAO设计模式 -- 使用数据库连接类连接MySql数据库并实现添加用户

1. DAO简介    DAO设计模式是属于J2EE数据库层的操作,使用DAO设计模式可以简化大量代码,增强程序的可移植性. 2. DAO各部分详解    DAO设计模式包括5个重要的部分,分别为数据库连接类,VO类,DAO接口,DAO实现类以及DAO工厂类.   2-1 数据库连接类:    数据库连接类的主要功能就是连接数据库并获得连接对象,以及关闭数据库.通过数据库连接类可以大大地简化开发,在需要进行数据库连接时,只需要创建该类的实例,并调用其中的方法就可以获得数据库连接对象和关闭数据库而

JNDI连接池连接Oracle数据库

今天做了一个评论的小功能,要求用JNDI连接池连接Oracle数据库,以前只是测试了是否连接的上,现在没想到一个JNDI连接池连接Oracle数据库,纠结了好久,原来都是Oracle数据库的问题,这是过失.下面介绍一下JNDI连接池连接Oracle数据库. JNDI介绍 什么是JNDI? JNDI(Java Naming and Directory Interface,Java命名和目录接口) 是一组在Java应用中访问命名和目录服务的API 通过名称将资源与服务进行关联 什么是连接池技术? 连

java web 程序---jsp连接mysql数据库的实例基础+表格显示

<%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="gb2312"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <body> <center>JSP连接mysql数据库</

JSP连接MySQL数据库问题

之前写了一大段,还说了一下具体JDBC连接数据库API的具体包的基本知识,哪知道自己手残不小心按了删除按钮.结果去看自动保存记录时,就只剩下下面这段了.好吧,其实最主要最核心的也就是下面这点了.具体如下: 例如,以下连接MySQL数据库范例: Class.forName("com.mtsql.jdbc.Driver");  //加载MySQL数据库驱动程序 String url = "jdbc:mysql://localhost:3306/DataBase'S Name&qu

【知了堂学习笔记】Eclipse,Myeclipse连接MySQL数据库和Oracle数据库

一.连接MySQL数据库 1.由于Eclipse,Myeclipse都没有连接MySQL数据的架包,我们需要自行下载MySQL连接架包 mysql-connector(官方链接:http://dev.mysql.com/downloads/connector/j/5.0.html),下载版本最好是最新版. 2.下载好后,复制到你的项目里任何位置,然后右键架包选择 Build path -> add to Build path,然后点击项目的Libraries里的Referenced Librar