Java命名和目录服务(JNDI)

JNDI(Java Naming and Directory Interface)既java命名和服务接口。JNDI是JAVA平台的一个标准扩展,提供了一组关于接口、类和命名空间的概念。

1.概述

在分布式系统在JNDI通常被用来获取共享的组件和资源,它使用命名和目录服务讲名称与位置、服务、信息、资源关联起来。其中的命名服务提供名称-对象的映射,目录服务提供有关对象的信息,并提供定位这些对象所需的搜索工具。

2.原理

JNDI是一种命名和目录服务,它提供一套实用命名和目录service的接口,用户可以通过它是用命名和目录服务。就像JDBC一样,JNDI提供命名服务和目录服务两部分,其最主要的功能就是讲命名和对象绑定,并对对象提供操作。

在使用JNDI之前首先需要发布服务,然后取得该服务。因此他主要包含两个操作既bind和lookup。

bind:既发布服务,他用一张哈希表来存储对象,存储对象要对规定好键值的字符串,但这通常都是由服务器开完成的。开发人员只需要往服务器中发布组件或服务即可。

lookup:既负责查找服务,开发人员可以用键值开获取服务对象。

3.ex

本例讲的是JavaWeb项目Tomact下的JNDI服务使用。

Spring数据源采用JNDI连接数据库

1.spring-config.xml

<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
	<property name="jndiName">
		<value>java:comp/env/jdbc/bbs</value>
	</property>
</bean>

2.Tomcat为我们提供的绑定服务

配置context.xml

<!-- The contents of this file will be loaded for each web application -->
<Context>

    <!-- Default set of monitored resources -->

    <WatchedResource>WEB-INF/web.xml</WatchedResource>

   		<Resource name="jdbc/bbs" auth="Container" type="javax.sql.DataSource"
        <span style="white-space:pre">	</span>factory="org.logicalcobwebs.proxool.ProxoolDataSource" proxool.alias="bbs"
                proxool.maximum-connection-count="4" proxool.minimum-connection-count="1"
                proxool.maxinum-connection-lifetime="18000000" proxool.maximum-active-time="60000"
                proxool.house-keeping-sleep-time="30000"    proxool.simultaneous-build-throttle="40"
            	proxool.trace="true"  user="ccy" password="ccy" delegateProperties="foo=bar"
            	proxool.prototype-count="9"
                proxool.driver-url="jdbc:oracle:thin:@127.0.0.1:1521:orcl"
        	proxool.driver-class="oracle.jdbc.driver.OracleDriver" />

</Context>

欢迎大家一起讨论学习!

有用的自己收!

记录与分享,让你我共成长!欢迎查看我的其他博客;我的博客地址:http://blog.csdn.net/caicongyang

Java命名和目录服务(JNDI)

时间: 2024-10-08 19:27:41

Java命名和目录服务(JNDI)的相关文章

Java命名和目录接口——JNDI

JNDI即Java命名和目录接口(JavaNaming and Directory Interface),它属于J2EE规范范畴,是J2EE的核心技术之一,提供了一组接口.类和关于命名空间的概念.JDNI是provider-based技术,它暴露一个API和一个服务供应接口(SPI).它将名称和对象联系起来,使我们可以用名称访问对象.我们可以把JNDI简单地看成是里面封装了一个name到实体对象的映射,通过字符串可以方便得到想要的对象资源,例如JDBC.JMail.JMS.EJB等.这意味着任何

JNDI(Java Naming and Directory Interface,Java命名和目录接口)

JNDI(Java Naming and Directory Interface,Java命名和目录接口)是SUN公司提供的一种标准的Java命名系统接口,JNDI提供统一的客户端API,通过不同的访问提供者接口JNDI服务供应接口(SPI)的实现,由管理者将JNDI API映射为特定的命名服务和目录系统,使得Java应用程序可以和这些命名服务和目录服务之间进行交互.目录服务是命名服务的一种自然扩展.两者之间的关键差别是目录服务中对象不但可以有名称还可以有属性(例如,用户有email地址),而命

命名或目录服务使用户可以集中存储共有信息

命名或目录服务使用户可以集中存储共有信息,这一点在网络应用中是重要的,因为这使得这样的应用更协调.更容易管理.例如,可以将打印机设置存储在目录服务中,以便被与打印机有关的应用使用. 我们大家每天都不知不觉地使用了命名服务.命名系统中的对象可以是DNS记录中的名称.应用服务器中的EJB组件(Enterprise JavaBeans Component).LDAP(Lightweight Directory Access Protocol)中的用户Profile. 目录服务是命名服务的自然扩展.两者

javaSE之java命名规范

java命名规范 1.Java中的名称规范: (1)包名全是小写:xxyyzz: (2)类名接口名:首字母大写:XxxYyy: (3)变量名和函数名:变量名不能是关键字:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写xxxYyyZzz.(驼峰表示法) (4)常量名:所有字母都大写.多单词时每个单词用下划线链接,XXX_YYY_ZZZ. 2.Java中书写程序的规范: (1)类包含方法,方法包含语句: (2)类名通常由英文单词组成(有意义的名称,可增加阅读性),首字母要大写:

再温习JAVA命名规范

Java编程规范整理 基本命名规范 包命名 包名按照域名的范围从大到小逐步列出,恰好和Internet上的域名命名规则相反. 由一组以"."连接的标识符构成,通常第一个标识符为符合网络域名的两个或者三个英文小写字母. PeopleTestPageXMLExample 类,接口命名 类的名字必须由大写字母开头而单词中的其他字母均为小写:如果类名称由多个单词组成,则每个单词的首字母均应为大写例如TestPage:如果类名称中包含单词缩写,则这个所写词的每个字母均应大写,如:XMLExamp

Java命名默认规范

学习java的时候,命名的大小写经常弄混,所以在此总结一下java命名规范 1.project(项目名) 说法不一,暂定小写,eg:arraytest 2.包名 小写,eg:package arrayapp; 还可以分部分起名,域名起头,eg:com.frontfree.javagroup; 3.类名/接口名 首字母大写,eg:public class ArrayApp{} 4.方法名 首字母小写,其他单词首字母大写,eg:public void getName(){} 一般情况下,获取方法用g

java命名规范:一些细节

java命名规范:一些细节 任何一门语言都是用来交流的,都有自己的一套书写规范,Java 也不例外. 注重这些细节有几个好处: 好的命名规范可以使得写出来的程序更容易被别人理解,更好维护.当然也易于自己理解,以便日后扩展. 同时,也使程序更规范和专业.  在这个人性化横行的今天,我们的Java命名规范也应该注重体验. 了解命名规范,可以更好的学习和记忆 Java 类库中的类和函数等. 在命名规范里有很多都涉及到英文的,可以促进英文学习. 比如: numberMax, MaxNumber和maxN

java命名习惯

在编程中养成一个良好的编程习惯是很重要的事情,java中包名小写,类名采用驼峰命名法,字段方法采用第一个字母小写,其余单词首字母大写,final变量应当大写多个用_隔开,实例字段应当隐藏起来.按照访问权限的大小规则从上到下写,按照实例字段方法到静态字段 和方法的顺序写下来.一个类不要太过于复杂,复杂的应当分解成另外的类,方便管理.命名应当取有意义的名字,让别人一眼就明白. java命名习惯

Java命名:可怕的DefaultAbstractHelperImpl

文章来自importNew 原文链接: jaxenter 翻译: ImportNew.com- 孟冰川译文链接: http://www.importnew.com/14241.html JOOQ的卢卡斯·艾德 研究了在Spring和Java命名策略中富有创造性的类名所带来的价值. 这篇文章最早是发表在jooq.org上,作为聚焦于jOOQ上所有关于Java.SQL以及软件开发的系列的一部分. 前段时间,我们发布了这款被我们称作Spring API Bingo的趣味游戏.这是对Spring构造类名