- 浏览: 773876 次
- 性别:
- 来自: 杭州
-
文章分类
最新评论
-
webcover:
最新的中文网络记事本: 破笔记
网络记事本:http://w ...
五个最佳的免费网络记事本 -
fred_nxh:
很好,长见识了
java中堆(heap)和堆栈(stack)有什么区别 -
efeige:
兄弟,请问一下,为什么我的2003系统 网站属性 里面没有“服 ...
启用IIS Gzip 页面压缩技术 加速网页的浏览速度 -
252401762:
同样的问题啊,不知道楼主是否已经转做售前了
售前和 开发的选择 -
yuan:
膜拜玩静电的现在呢?
来回顾一下,当年的“发烧史”吧:
一直都JNDI这个名字,可是一直都没有去研究过,因为工作中一直都没用到。。。
这次面试的时候用到了。。。
于是乎,找来例子练练手。。






Tomcat标准数据源资源工厂配置项如下:
* driverClassName - 所使用的JDBC驱动类全称。
* maxActive - 同一时刻可以自数据库连接池中被分配的最大活动实例数。
* maxIdle - 同一时刻数据库连接池中处于非活动状态的最大连接数。
* maxWait - 当连接池中没有可用连接时,连接池在抛出异常前将等待的最大时间,单位毫秒。
*password - 传给JDBC驱动的数据库密码。
* url - 传给JDBC驱动的连接URL。
* user - 传给JDBC驱动的数据库用户名。
* validationQuery - 一个SQL查询语句,用于在连接被返回给应用前的连接池验证。
* 如果指定了该属性,则必为至少返回一行记录的SQL SELECT语句。
在web.xml中添加:







写一个简单的jsp测试了一下:
1
<%
@ page
import
=
"
java.sql.*,javax.sql.*,javax.naming.*
"
%>
2
3
<%
4
Connection conn
=
null
;
5
try
6
{
7
Context ctx
=
new
InitialContext();
8
DataSource ds
=
(DataSource)ctx.lookup(
"
java:comp/env/jdbc/SampleData
"
);
9
conn
=
ds.getConnection();
10
System.out.println(
"
connection pool connected !!
"
);
11
}
catch
(NamingException e)
{
12
System.out.println(e.getMessage());
13
}
catch
(SQLException e)
{
14
System.out.println(e.getMessage());
15
e.printStackTrace();
16
}
finally
17
{
18
conn.close();
19
}
20
%>

2

3

4

5

6



7

8

9

10

11



12

13



14

15

16

17



18

19

20

我就是这样连接成功了。
写的时候还是看了下々上善若水々 的博客,总感觉他的写得比较全,而我总感觉写不出比他好的,又不能写出和他不同的地方。。就这样子啦。。
PS:在查资料的时候,看到在CSDN中有位朋友谈到了JNDI的用处:
JNDI不止用于数据源,其可以用于存储和获得任何类型的已命名的java对象等等.
如果使用JDBC有thin和oci两种连接方式:
[先说thin]
打开数据库连接方式:DriverManager.getConnection
1
DriverManager.registerDriver(
new
oracle.jdbc.OracleDriver());
2
3
Connection myConnection
=
DriverManager.getConnection(
4
"
jdbc:oracle:thin:@test2000:1521:orac
"
,
//
orac为oracle的SID
5
"
user
"
,
6
"
password
"
7
);

2

3

4

5

6

7

或者用前面给出的那个
OracleDataSource myODS = new OracleDataSource(); //其属性简单明了,不难掌握
Connection myConnection = myODSgetConnection("user","password");
[再说OCI](可以使连接池中有多个缓冲的连接)
1
OracleOCIConnectionPool myOOCP
=
new
OracleOCIConnectionPool();
2
3
//
set the attributes for the physical database connections
4
myOOCP.setServerName(
"
test2000
"
);
5
myOOCP.setDatabaseName(
"
ORCL
"
);
6
myOOCP.setDriverType(
"
oci
"
);
7
myOOCP.setPortNumber(
1521
);
8
myOOCP.setUser(
"
store_user
"
);
9
myOOCP.setPassword(
"
store_password
"
);
10
11
//
set the values for the dynamic attributes of myOOCP
12
Properties myProperties
=
new
Properties();
13
myProperties.put(OracleOCIConnectionPool.CONNPOOL_MIN_LIMIT,
"
5
"
);
14
myProperties.put(OracleOCIConnectionPool.CONNPOOL_MAX_LIMIT,
"
10
"
);
15
myProperties.put(OracleOCIConnectionPool.CONNPOOL_INCREMENT,
"
2
"
);
16
myProperties.put(OracleOCIConnectionPool.CONNPOOL_TIMEOUT,
"
30
"
);
17
myProperties.put(OracleOCIConnectionPool.CONNPOOL_NOWAIT,
"
true
"
);
18
myOOCP.setPoolConfig(myProperties);
19
20
//
request a connection instance from myOOCP and store
21
//
the connection instance in myConnection
22
OracleOCIConnection myConnection
=
(OracleOCIConnection) myOOCP.getConnection();
23

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

这个就当是个引子,之后对JNDI有个深入的了解和认识。。。。
发表评论
-
ocx插件插入网页实现自动更新与安装注册
2010-07-27 16:17 6670ocx插件插入网页实现 ... -
JIRA
2010-04-02 16:28 1221JIRA 百科名片 JIRA是集项目计划、任务分配、需求管 ... -
ArrayList和LinkedList的用法区别
2010-03-17 10:58 1954ArrayList和LinkedList的用法区别 (2 ... -
Java 中Vector、ArrayList和LinkedList 的区别时间
2010-03-17 10:25 1791Java 中Vector、ArrayList和LinkedLi ... -
多层架构的Web开发框架模型
2010-03-14 00:31 1968摘要:在经典的J2EE四层体系结构的基础上增加数据持久层,提出 ... -
Java语言编码规范(Java Code Conventions
2010-03-08 01:17 8561 介绍(Introduction)1.1 为什么要有编码规范 ... -
IT 的规划
2010-02-21 21:07 775本文说的这位网友,在I ... -
记忆学
2010-02-10 00:50 696http://bbs.jiyifa.cn/read.php?t ... -
java析构函数替代者finalize()解说
2010-01-21 22:18 2608java析构函数替代者finali ... -
Java的GC机制总结(0) ---finalize()方法
2010-01-21 22:00 1234其实了解JAVA的人,都知道JAVA的GC机制是其的一大优点, ... -
Java认证考试
2010-01-14 12:30 863Java认证考试 关于Java方面,Sun推出四项认证:Su ... -
集合框架
2010-01-13 23:24 673java 集合框架 对象的集合 如果程序的 ... -
Java集合框架使用总结
2010-01-13 21:31 674Java集合框架使用总结 ... -
关于JAVA中的线程安全
2010-01-13 10:34 1567关于JAVA中的线程安全 ... -
Java 理论与实践: 并发集合类
2010-01-13 01:27 868DougLea的 util.concurrent 包除了包含许 ... -
java main 主函数
2010-01-10 14:28 2350java主函数一般定义如下:public static ... -
java新式for循环
2009-12-29 15:51 811java新式for循环 2008-08-04 13:48:2 ... -
2009年的Java技术发展趋势展望
2009-11-08 21:28 773已经有14岁的Java在日新月异的IT技术领域内不算年轻,但它 ... -
MyEclipse要注册
2009-11-07 18:37 1702yEclipse怎么注册都不知道。我说他没有注册,他硬要说已经 ... -
浅谈设计模式在JAVA中的具体运用
2009-10-27 23:32 960浅谈设计模式在JAVA ...
相关推荐
Java JNDI(Java Naming and Directory Interface)是Java平台中用于访问命名和目录服务的一组API。它允许Java开发者在应用程序中查找和绑定资源,如数据源、EJB(Enterprise JavaBeans)、邮件服务器等。JNDI的核心...
### Java JNDI总结 #### 一、JNDI简介 **JNDI**(Java Naming and Directory Interface)是Java平台中的一个API,用于访问命名和目录服务,这些服务可以存储对象引用及其名称。JNDI的主要作用在于提供了一种在...
JavaJNDI(Java Naming and Directory Interface)是Java平台中用于访问命名和目录服务的一组API,它允许Java应用程序查找和管理分布在不同网络环境中的资源。数据连接池(Connection Pool)是Java应用中用于管理...
### Java JNDI 连接数据库详解 #### JNDI简介 Java Naming and Directory Interface (JNDI) 是一种在Java环境中访问命名和目录服务的API。它为开发人员提供了查找和引用远程对象的标准方法,这包括数据库资源、消息...
基于Java JNDI 操纵LDAP的基础实现,包括LDAP连接相关生命周期,认证的两种策略demo,条目的操作,schema的基础操作包括(attributeDefinition\objectDefinition\)但未包含相关syntaxDefinition的操纵. 没有资源分的朋友...
在IT领域,特别是Java开发中,`JAVA JNDI免证书修改AD域密码`是一个重要的主题,涉及到企业级应用与Active Directory(AD)域服务的交互。Active Directory是微软提供的目录服务,用于集中管理网络资源,如用户账户...
DataSource source = (DataSource) ic.lookup("java:comp/env/jdbc/jndidemo"); dbcon = source.getConnection(); 需要导的包 import javax.naming.Context; import javax.naming.InitialContext; import ...
Java 通过JNDI(Java Naming and Directory Interface)访问数据库是一种常见的做法,它提供了一种标准的方法来查找和管理资源,如数据源、EJB、邮件服务器等。JNDI在企业级应用中广泛使用,因为它允许应用程序与...
### JNDI Java操作示例解析 #### 一、引言 JNDI(Java Naming and Directory Interface)是Java平台中用于访问命名和目录服务的API。它提供了一种查找和定位应用程序所需的资源(如数据库连接、消息队列、EJBs等)...
JNDI(Java Naming and Directory Interface,Java命名和目录接口)是Java平台提供的一套API,用于在Java应用程序中访问命名和目录服务。它允许开发者以统一的方式查找、绑定和命名对象。本文将详细介绍JNDI在Tomcat...
在本文中,我们将深入探讨三种不同的RMI实现方法:原始方式、Spring框架集成以及JNDI(Java Naming and Directory Interface)。 ### 方式一:原始方式 原始的Java RMI方式是基于Java的标准API实现的,主要包括...
JNDI (Java Naming and Directory Interface) 是 Java 命名和目录接口的简称,自 Java 2 平台企业版问世以来一直是核心技术之一。它为开发者提供了一个统一的接口,用于查找、获取和管理各种分布式环境中的命名资源...
JNDI(Java Naming and Directory Interface)是Java平台的一部分,它允许开发人员访问命名服务,从而可以存储和检索应用程序组件名称和服务之间的映射关系。本文将详细介绍JNDI配置原理,并通过具体的示例帮助读者...
JNDI是Java Naming and Directory Interface(JAVA命名和目录接口)的英文简写,它是为JAVA应用程序提供命名和目录访问服务的API(Application Programing Interface,应用程序编程接口)。
在IT行业中,Java Naming and Directory Interface (JNDI) 是一个关键的技术,它提供了一种标准的方法来查找和访问各种命名和目录服务。EJB(Enterprise JavaBeans)是Java EE平台的一部分,用于构建可部署在服务器...
Java Naming and Directory Interface (JNDI) 是Java平台中用于访问命名和目录服务的API,它为各种服务提供了一个统一的接口,如数据库连接、邮件服务等。在Java应用程序中,JNDI常用于查找和绑定资源,如数据源、...
在这个文件中,你需要配置JNDI(Java Naming and Directory Interface)名称、数据库URL、用户名、密码、连接池大小等信息。 3. **DBConn.java**:这可能是你的应用中负责获取和释放数据库连接的类。在该类中,通过...
JNDI是Java平台提供的一种标准服务接口,用于访问命名和目录服务,它允许应用程序查找、存储和管理各种类型的数据,如对象、配置信息等。本文将深入探讨`com.sun.jndi.providerutil.jar`在JNDI框架中的作用,以及...
Java开发人员经常使用Java Naming and Directory Interface (JNDI)来与AD进行交互。在本文中,我们将深入探讨如何使用Java JNDI来修改AD域密码,并重点讲解如何实现免SSL验证的方式。 首先,让我们了解JNDI。JNDI是...