`

Tomcat6.0 JNDI数据源经典实例

    博客分类:
  • JAVA
阅读更多
mysql建表语句:

CREATE TABLE `tomcat` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(100) DEFAULT NULL,
  `password` varchar(100) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1





//DatabaseConnection.java

package com.abin.tomcat.data;

import java.sql.*;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;

public class DatabaseConnection {
private static final String DSNAME = "java:comp/env/jdbc/mysql";

private Connection conn;

public DatabaseConnection() {
  Context ctx = null;
  try {
   ctx = new InitialContext();
  } catch (NamingException e) {
   e.printStackTrace();
  }
  DataSource ds = null;
  try {
   ds = (DataSource) ctx.lookup(DSNAME);
  } catch (NamingException e) {
   e.printStackTrace();
  }
  try {
   this.conn = ds.getConnection();
  } catch (SQLException e) {
   e.printStackTrace();
  }
}

public Connection getConnection() {
  return conn;
}

public void close() throws Exception {
  if (conn != null) {
   try {
    conn.close();
    conn = null;
   } catch (Exception e) {

    throw e;
   } finally {
    if (conn != null) {
     try {
      conn.close();
     } catch (Exception e) {
      e.printStackTrace();
     }
    }
   }
  }
}

}










//TomcatServlet.java

package com.abin.tomcat.data;

import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;

import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class TomcatServlet extends HttpServlet {

public void init(ServletConfig config) throws ServletException {
  super.init();
}

public void doPost(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
  String username = request.getParameter("username");
  String password = request.getParameter("password");
  Connection conn = null;
  PreparedStatement ps = null;
  String sql = "insert into tomcat (username,password) values (?,?)";
  try {
   conn = DBClassConnection.getConnection();
   ps = conn.prepareStatement(sql);
   ps.setString(1, username);
   ps.setString(2, password);
   ps.executeUpdate();
   request.getSession().setAttribute("message", "operate success");
   String target = "message.jsp";
   request.getRequestDispatcher(target).forward(request, response);

  } catch (Exception e) {
   // TODO: handle exception
   e.printStackTrace();
  }

}

public void destroy() {
  super.destroy();
}

}







//context.xml 放置于D:\SystemFile\MyeclipseWorkspace\TomSource\WebRoot\META-INF\这个目录下面

<?xml version="1.0" encoding="UTF-8"?>
<Context path="/TomSource"
    docBase="D:\SystemFile\MyeclipseWorkspace\TomSource\WebRoot"
    debug="5"
    reloadable="true"
    crossContext="true">
<Resource
      name="jdbc/mysql"
      type="javax.sql.DataSource"
      password=""
      driverClassName="com.mysql.jdbc.Driver"
      maxIdle="2"
      maxWait="50"
      username="root"
      url="jdbc:mysql://localhost:3306/abin"
      maxActive="4"/>

</Context>





//web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

<servlet>
  <servlet-name>TomcatServlet</servlet-name>
  <servlet-class>com.abin.tomcat.data.TomcatServlet</servlet-class>
</servlet>

<servlet-mapping>
  <servlet-name>TomcatServlet</servlet-name>
  <url-pattern>/TomcatServlet</url-pattern>
</servlet-mapping>

<resource-ref>
  <description>DB Connection</description>
  <res-ref-name>jdbc/mysql</res-ref-name>
  <res-type>javax.sql.DataSource</res-type>
  <res-auth>Container</res-auth>
</resource-ref>


  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>




//index.jsp放置于WebRoot目录下面:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <title>TOMCAT DATASOURCE</title>
</head>

<body>

<form action="TomcatServlet" method="post">
用户名:<br/>
  <input name="username" type="text" /><br/>
密码:<br/>
  <input name="password" type="password" /><br/>
  <input  type="submit"  value="提交" />
  <input  type="reset"  value="重置" />
</form>

</body>
</html>






//message.jsp放置于WebRoot目录下面:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <title>TOMCAT DATASOURCE</title>
</head>

<body>
  <%=session.getAttribute("message") %>

</body>
</html>






//JAR包这里只用到mysql-connector-java-5.1.15-bin.jar放置于lib里面就好了,直接发布到tomcat6就可以访问了。

分享到:
评论

相关推荐

    Tomcat6.0 JNDI数据源经典实例

    总结来说,这个Tomcat 6.0 JNDI数据源经典实例提供了从配置到使用的全过程,包括了必要的文件和脚本,便于开发者理解和实践JNDI数据源在实际项目中的应用。正确配置和使用JNDI数据源能有效管理和优化数据库连接,...

    tomcat6.0 配置jndi

    **二、Tomcat6.0配置JNDI数据源步骤** 1. **创建数据源配置文件**:在Tomcat的`conf/server.xml`文件中,找到`&lt;GlobalNamingResources&gt;`标签,在其中添加数据源的配置。例如,创建一个名为`jdbc/myDataSource`的...

    tomcat6.0连接通过JNDI连接mysql实例

    Tomcat 6.0 通过 JNDI 连接 MySQL 实例 Tomcat 6.0 中通过 JNDI 连接 MySQL 实例需要进行详细的配置和设置。本文将对 Tomcat 6.0 中的 JNDI 连接 MySQL 实例进行详细的介绍和解释。 配置 JNDI 资源 在 Tomcat 6.0...

    tomcat6.0官方文档文档

    七、JNDI数据源示例(jndi-datasource-examples-howto.html) 这里提供了使用JNDI配置数据源的实例,涵盖了不同数据库(如MySQL、Oracle等)的连接池配置,帮助开发者快速集成数据库。 八、SSL配置(ssl-howto.html...

    Tomcat6.0x

    - **JNDI(Java Naming and Directory Interface)**:提供命名和目录服务,用于查找和绑定资源,如数据源。 - **安全管理**:包括用户认证、角色授权以及访问控制,可以通过`context.xml`配置。 - **会话管理**:...

    tomcat6.0程序包

    11. **JNDI(Java Naming and Directory Interface)**:Tomcat支持JNDI服务,允许Web应用查找和绑定资源,如数据源、邮件会话等。 12. **错误页面和过滤器**:在`web.xml`中配置错误页面和过滤器,可以定制错误...

    tomcat6.0文件 有連接池配置的

    这里,`name`是数据源的JNDI名称,`auth`指明认证方式,`type`指定数据源类型,`driverClassName`是数据库驱动类名,`url`是数据库URL,`username`和`password`是数据库登录凭证,`maxActive`、`maxIdle`和`maxWait`...

    tomcat 6.0

    5. **JNDI服务**:Tomcat支持Java Naming and Directory Interface (JNDI),允许应用程序查找和使用服务器提供的资源,如数据源、邮件会话等。 6. **集群与负载均衡**:通过配置server.xml,Tomcat可以实现多个实例...

    tomcat 6.0 服务器

    6. **JNDI服务**:Tomcat支持Java Naming and Directory Interface (JNDI),允许应用程序查找和绑定资源,如数据源或邮件会话,这在多层架构的应用中非常有用。 7. **连接器与协议**:Tomcat支持多种连接器,如...

    tomcat6.0服务器

    Tomcat提供JNDI(Java Naming and Directory Interface)服务,允许应用程序查找和绑定各种资源,如数据源、邮件会话等。这些资源可以在`conf/server.xml`的`GlobalNamingResources`部分定义。 **9. 管理工具** ...

    TOMCAT6.0配置数据库连接池

    ### TOMCAT6.0配置数据库连接池的知识点详解 #### 一、连接池的基本概念与配置 **背景介绍** 在Web应用开发中,数据库连接管理是至关重要的环节之一。为了提高应用程序性能并优化资源利用,通常会使用数据库连接池...

    tomcat JDNI配置

    一个简单的tomcat6.0+mysql5.5整合spring3.0和hibernate3.3的一个简单的实例,其中的datasource是tomcat JNDI配置的 type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://...

    Tomcat5.5连接池配置

    应用程序可以通过JNDI查找并获取数据源对象,进而获取数据库连接: ```java InitialContext ctx = new InitialContext(); DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/sqlserver"); ...

    apache-tomcat-6.0.39.tar

    8. **JNDI(Java Naming and Directory Interface)**:Tomcat支持JNDI服务,允许应用通过名字查找资源,如数据源、邮件会话等。这些资源可以在`conf/server.xml`的GlobalNamingResources部分定义。 9. **错误处理...

    tomcat6-zip

    9. **JNDI资源**:Tomcat 6支持Java Naming and Directory Interface (JNDI),可以在`context.xml`中配置数据源、邮件会话等资源。 10. **错误页面和过滤器**:可以通过`web.xml`配置自定义错误页面,以及使用过滤...

    apache-tomcat-6.0.30

    5. **JNDI资源**:Tomcat支持Java Naming and Directory Interface (JNDI),可以在`context.xml`中定义数据源、邮件会话等资源,供Web应用使用。 6. **安全管理**:Tomcat提供了用户认证和授权机制,如使用`tomcat-...

    tomcat-6.0.45.zip

    4. **GlobalNamingResources**:这部分提供全局的JNDI(Java Naming and Directory Interface)资源,允许在多个应用之间共享资源,如数据源、邮件会话等。 5. **Web Applications**:在`apache-tomcat-6.0.45`目录...

    完整版的数据库连接池的的应用

    数据源的实例在业务逻辑层被获取,然后传递给需要执行SQL操作的代码。这种方式有助于保持代码的整洁和模块化,同时也易于维护和测试。 在应用中,`dataSourceTest`可能是一个测试类,用于验证数据库连接池配置是否...

Global site tag (gtag.js) - Google Analytics