用Test.java类成功测试了hibernate的使有。但在tomcat下却失败了。看来这个入门还挺复杂的。
[quote]
JNDI的原理我原来也比较糊涂,后来是把Sun网站的JNDI的指南下载下来,一点点啃完以后就搞清楚了。JNDI通俗来说就是一个命名和查找资源的机制,把App Server中的所有资源对象进行统一的编号,并且把这些编号放在一个树装结构中,这样你要找什么资源,就按照编号去找这颗树就行了,就可以在相应的位置找到这个编号对应的“对象”(其实就是映射)。就好像我们每个人作为一个实体,都有一个姓名来映射。而每个App Server中的资源(这些资源包括数据库连接池对象,EJB对象等等)都有一个JNDI名字来映射。而所有的这些JNDI名字和他们对应的这些对象就统称Context。而这种映射和查找机制就叫做JNDI(Java Naming and Directory Interface)。 [/quote]
tomcat的运行原理;
[code]Tomcat是一个带有jsp环境的servlet容器.servlet容器是一个根据用户的行为可以管理和激活servlet的运行时的shell.
粗略地可以将servlet容器分为如下几类:
独立的servlet容器
内置有web服务器的一部分.指当使用基于Java的web服务器的情形,例如servlet容器是JavaWebServer的一个部分. 独立的servlet容器是Tomcat的默认模式.
大多数的web服务器并非基于Java,因此,我们可以得出如下两种容器的模式.
进程内的servlet容器
servlet容器作为web服务器的插件和Java容器的实现.Web服务器插件在内部地址空间打开一个JVM(java virtual machine)使Java容器得以在内部运行.如有某个需要调用servlet的请求,,插件将取得对此请求的控制并将他传递(使用JNI)给Java容器.进程内容器对于多线程,单进程的服务器非常合适并且提供很好的运行速度,但伸缩性有所不足.
进程外的servlet容器
servlet容器运行于web服务器之外的地址空间且作为web服务器的插件和Java容器的实现的结合.web服务器插件和Java容器 JVM使用IPC机制(通常是TCP/IP)进行通讯.当一个调用servlet的请求到达时,插件将取得对此请求的控制并将其传递(使用IPC等)给Java容器,进程外容器的反应时间或进程外容器引擎不如进程内容器,但进程外容器引擎在许多其他可比的范围内更好(伸缩性,稳定性等).
Tomcat既可作为独立的容器(主要是用于开发与调试)又可作为对现有服务器的附加(当前支持Apache,IIS和Netscape服务器).即任何时候配置Tomcat你都必须决定如何应用他,如选择第二或第三种模式,你还需要安装一个web服务器接口[/code]
[quote]
JNDI的原理我原来也比较糊涂,后来是把Sun网站的JNDI的指南下载下来,一点点啃完以后就搞清楚了。JNDI通俗来说就是一个命名和查找资源的机制,把App Server中的所有资源对象进行统一的编号,并且把这些编号放在一个树装结构中,这样你要找什么资源,就按照编号去找这颗树就行了,就可以在相应的位置找到这个编号对应的“对象”(其实就是映射)。就好像我们每个人作为一个实体,都有一个姓名来映射。而每个App Server中的资源(这些资源包括数据库连接池对象,EJB对象等等)都有一个JNDI名字来映射。而所有的这些JNDI名字和他们对应的这些对象就统称Context。而这种映射和查找机制就叫做JNDI(Java Naming and Directory Interface)。 [/quote]
tomcat的运行原理;
[code]Tomcat是一个带有jsp环境的servlet容器.servlet容器是一个根据用户的行为可以管理和激活servlet的运行时的shell.
粗略地可以将servlet容器分为如下几类:
独立的servlet容器
内置有web服务器的一部分.指当使用基于Java的web服务器的情形,例如servlet容器是JavaWebServer的一个部分. 独立的servlet容器是Tomcat的默认模式.
大多数的web服务器并非基于Java,因此,我们可以得出如下两种容器的模式.
进程内的servlet容器
servlet容器作为web服务器的插件和Java容器的实现.Web服务器插件在内部地址空间打开一个JVM(java virtual machine)使Java容器得以在内部运行.如有某个需要调用servlet的请求,,插件将取得对此请求的控制并将他传递(使用JNI)给Java容器.进程内容器对于多线程,单进程的服务器非常合适并且提供很好的运行速度,但伸缩性有所不足.
进程外的servlet容器
servlet容器运行于web服务器之外的地址空间且作为web服务器的插件和Java容器的实现的结合.web服务器插件和Java容器 JVM使用IPC机制(通常是TCP/IP)进行通讯.当一个调用servlet的请求到达时,插件将取得对此请求的控制并将其传递(使用IPC等)给Java容器,进程外容器的反应时间或进程外容器引擎不如进程内容器,但进程外容器引擎在许多其他可比的范围内更好(伸缩性,稳定性等).
Tomcat既可作为独立的容器(主要是用于开发与调试)又可作为对现有服务器的附加(当前支持Apache,IIS和Netscape服务器).即任何时候配置Tomcat你都必须决定如何应用他,如选择第二或第三种模式,你还需要安装一个web服务器接口[/code]