用Test.java类成功测试了hibernate的使有。但在tomcat下却失败了。看来这个入门还挺复杂的。
引用
JNDI的原理我原来也比较糊涂,后来是把Sun网站的JNDI的指南下载下来,一点点啃完以后就搞清楚了。JNDI通俗来说就是一个命名和查找资源的机制,把App Server中的所有资源对象进行统一的编号,并且把这些编号放在一个树装结构中,这样你要找什么资源,就按照编号去找这颗树就行了,就可以在相应的位置找到这个编号对应的“对象”(其实就是映射)。就好像我们每个人作为一个实体,都有一个姓名来映射。而每个App Server中的资源(这些资源包括数据库连接池对象,EJB对象等等)都有一个JNDI名字来映射。而所有的这些JNDI名字和他们对应的这些对象就统称Context。而这种映射和查找机制就叫做JNDI(Java Naming and Directory Interface)。
tomcat的运行原理;
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服务器接口
分享到:
相关推荐
标题中的“启动tomcat报错org.hibernate.cache.CacheProvider”指的是在尝试启动Apache Tomcat服务器时遇到了与Hibernate缓存提供者相关的错误。这通常涉及到Hibernate框架的配置或运行时环境问题。Hibernate是一个...
在 Tomcat 的 conf 目录下,我们需要建立 workers.properties 文件,并在文件中添加相应的配置参数。 三、APACHE 错误日志分析 在 APACHE 的错误日志文件中,我们可以看到一些错误信息,例如: * [warn] (OS 64) ...
在实际应用中,Tomcat经常与Spring Boot、Hibernate等框架结合使用,构建高效的企业级Web应用。同时,由于其轻量级和易于管理的特性,Tomcat也常作为开发和测试环境的选择。不过,对于大型高并发的生产环境,可能...
4. **测试连接**:在Tomcat完全启动后,尝试使用管理工具或编程方式连接数据库,验证连接是否成功。 通过以上步骤,可以有效地解决Tomcat启动时出现的与MySQL JDBC驱动相关的错误。此外,在进行SSH框架整合时,还...
对于使用Hibernate框架的应用,需要在项目的hibernate配置文件中进行相应的配置调整,确保能够正确地从JNDI环境中查找数据源。具体配置方法依赖于所使用的Hibernate版本及应用的具体需求。 #### 六、修改`web.xml`...
在开发Java Web应用程序时,`Struts2`和`Hibernate3`经常被组合使用,以构建数据驱动的交互式Web应用。`Struts2`是一个强大的MVC框架,负责处理用户请求并展示结果,而`Hibernate3`则作为对象关系映射(ORM)工具,...
在Java编程中,异常处理是不可或缺的一部分,尤其是在开发复杂的企业级应用时,如使用Hibernate进行对象关系映射和Tomcat作为应用服务器。本篇将详细解释一些常见的Java、Hibernate以及与Tomcat相关的异常,帮助...
此外,对于Hibernate的使用,推荐安装Hibernate Synchronizer Eclipse Plugin,它可以帮助开发者更便捷地同步Hibernate实体类和数据库表。 在Eclipse中创建一个新的Dynamic Web Project,命名为TestSSH,并指定为...
开发环境配置包括使用JDK 1.6作为Java运行环境,Tomcat作为应用服务器,Mysql作为数据库。项目使用Maven进行自动构建,通过Subversion进行版本控制,使用Trac进行项目管理。所有这些工具的下载地址和配置信息都在...
在这个"seam+hibernate注册例子"中,我们将探讨如何在Eclipse 3.4环境下,结合Tomcat 6.0服务器,搭建一个使用Seam和Hibernate的注册系统。 首先,确保你已经安装了Eclipse IDE和Tomcat 6.0服务器。Eclipse 3.4版本...
在开发和调试基于Hibernate的Java应用时,有时我们需要获取到SQL语句的完整形式,而不仅仅是Hibernate默认输出的参数化形式。在这种情况下,P6Spy是一个非常有用的工具。P6Spy是一个开源的JDBC代理库,它允许我们...
在Java编程中,`java.lang.NoClassDefFoundError` 是一个常见的运行时异常,它发生在类加载器尝试加载一个在编译时存在但在运行时找不到的类定义时。这个错误通常意味着类路径设置不正确或者依赖项没有正确地被包含...
教程中,作者尝试使用Hibernate 4.0.0版本遇到了问题,最终选择了Hibernate 3.6.10.Final版本。这一部分会让开发者学会如何配置Hibernate,包括Session管理、配置Hibernate的SessionFactory以及如何通过...
本标题主要涉及的是在 Windows 操作系统环境下如何整合 WebLogic 10、JSF 1.2 和 Hibernate 3 这三个技术组件。这种整合常见于企业级 Java 应用服务器的开发环境中,特别是那些基于 Java EE 标准的应用。 - **...
在IT领域,尤其是在Java开发与Hibernate框架的使用中,遇到各种各样的错误是家常便饭。本文将根据提供的文件信息,深入解析几个常见的Hibernate错误及其解决方案,旨在为开发者提供一份排错宝典,帮助他们迅速定位并...
在配置过程中,需要注意的是,Eclipse中的Tomcat服务器配置可能不会立即反映对`server.xml`的更改,因此如果遇到连接问题,尝试删除并重新创建服务器实例。此外,配置参数如`maxActive`、`maxIdle`等应根据实际应用...
"nested"可能指的是在Struts中处理嵌套表单或对象的情况,这种情况下,一个表单可能会包含多个子表单或者对象,需要在ActionForm中进行处理。在Hibernate中,这可能涉及到一对多或多对多的关系映射,比如一个用户...
关于“登录完成日志文件在web下本人用的是tomcat”,这意味着日志信息被记录在服务器的Tomcat日志目录下。Tomcat是流行的Java应用服务器,它默认会记录应用的请求和错误信息。开发者可以通过配置`logging.properties...
- **解决数据库映射问题**:在使用Hibernate进行数据库映射时,确保正确设置了数据库连接参数,并检查数据库驱动是否正确安装。 **3. Spring配置** - **添加Spring库**:手动添加Spring的相关JAR包至项目的lib目录...