Tomcat启动时加载
通过这个可以实现:程序在启动过程中加载缓存。
因为hibernate会自动缓存查询的内容,所以第一次查询会比较慢,但之后就会很快,通过在tomcat启动时候用hibernate进行一次查询,之后用户就能直接从缓存拿到数据。
Web.xml配置
<listener>
<listener-class>
hibernate.init.StartUpServletContextListener
</listener-class>
</listener>
相应的java代码:
public class StartUpServletContextListener implements ServletContextListener{
public void contextDestroyed(ServletContextEvent arg0) {
System.out.println("================distory================");
}
public void contextInitialized(ServletContextEvent arg0) {
System.out.println("=======正在初始化服务中。。。============");
DoSearch.dataSearch("##");//随便做一个查询
System.out.println("============初始化完成=================");
}
}
详细的说明:(此段来自网络)
有时候在开发web应用的时候,需要tomcat启动后自动加载一个用户的类,执行一些初始化方法,如从数据库中加载业务字典到内存中,因此需要在tomcat启动时就自动加载一个类,或运行一个类的方法。
可以采用在WEB-INF/web.xml中添加一个监听程序(ServletContextListener配置项),步骤如下:
1) 增加一个监听程序 MyServletContextListener.java, 实现javax.servlet.ServletContextListener接口
package test.startup;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class MyServletContextListener implements ServletContextListener {
public void contextDestroyed(ServletContextEvent arg0) {
}
public void contextInitialized(ServletContextEvent arg0) {
System.out.println("加载业务字典");
try {
com.eos.common.dict.DictMap.loadData();
}catch(Exception e) {
System.out.println("加载业务字典失败!");
e.printStackTrace();
}
}
}
2) 配置监听器web.xml:
<listener>
<listener-class>test.startup.MyServletContextListener</listener-class>
</listener>
注意:应用事件监听器程序是建立或修改servlet环境或会话对象时通知的类。它们是servlet规范的版本2.3中的新内容。注册一个监听程序涉及在web.xml的web-app元素内放置一个listener元素。虽然listener元素的结构很简单,但请不要忘记,必须正确地给出web-app元素内的子元素的次序。listener元素位于所有的servlet 元素之前以及所有filter-mapping元素之后。此外,因为应用生存期监听程序是serlvet规范的2.3版本中的新内容,所以必须使用 web.xml DTD的2.3或以后版本,而不是2.2版本,如下:
<web-app id="WebApp_ID" 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">
...
</web-app>
分享到:
相关推荐
### Eclipse Tomcat Server 加载项目的详细步骤与配置 在开发Java Web应用时,Eclipse集成开发环境(IDE)因其强大的功能、丰富的插件支持以及友好的用户界面而被广泛使用。其中,Eclipse内置的Tomcat服务器是进行...
Eclipse启动Tomcat后无法访问项目解决办法 前言: Eclipse中的Tomcat可以正常启动,不过发布项目之后,无法访问,包括http://localhost:8080/的小猫页面也无法访问到,报404错误。这是因为Eclipse所指定的Server ...
通常,开发者希望在不重启服务器的情况下更新代码,这时DevLoader可能会有热部署功能,即在代码更改后,能自动或手动重新加载修改过的类,而无需停止和重新启动Tomcat服务。这大大提高了开发效率。 类加载器在...
总结来说,"tomcat部署java项目jar"涉及到Java Web开发的基本流程,包括创建项目、打包JAR、配置Tomcat服务器以及通过脚本启动和管理服务器。了解这些知识对于任何从事Java Web开发的人员都至关重要。
这段描述涉及到了Tomcat启动过程中由于MySQL JDBC驱动加载问题导致的常见错误。下面我们将对该问题进行详细分析。 ### 1. MySQL JDBC驱动加载失败 #### 原因分析: - **路径配置错误**:根据错误提示,“Could not...
标题“Tomcat启动服务运行Servlet”涉及到的是Java Web开发中的核心概念,主要涵盖Tomcat服务器的启动过程以及Servlet的执行机制。Tomcat是一款开源、免费的Web应用服务器,广泛用于部署Java Servlet和JavaServer ...
6. **等待Jenkins初始化**:当Tomcat启动并加载WAR包后,Jenkins会开始初始化过程。这个过程可能需要几分钟,取决于服务器性能和网络速度。 7. **访问Jenkins**:打开浏览器,输入`...
- **System类加载器**:加载Tomcat启动所需的类,如bootstrap.jar。 - **Common类加载器**:加载Tomcat共用的类库,这些类库位于`CATALINA_HOME/lib`目录下。 - **Webapp类加载器**:每个Web应用程序都有自己独立...
### IDEA导入相互依赖多项目及Tomcat启动与打包详解 #### 一、导入SVN项目 在本节中,我们将详细介绍如何使用IntelliJ IDEA (IDEA) 导入具有相互依赖关系的多个项目,并确保它们能正确地存放在同一工作空间内。...
动态加载是指在程序运行过程中,根据需要加载相应的类或模块,而不是在程序启动时一次性加载所有内容。在Web开发中,动态加载通常指的是服务器能够自动检测到应用的改动,并实时更新,而无需停止服务。 1. **...
Tomcat是Apache软件基金会的一个开源项目,是一个广泛使用的Java Servlet容器,特别适合于小型到中型的应用服务。下面将详细阐述Tomcat的管理和相关知识点。 1. **Tomcat概述**: Tomcat是一个轻量级的Web服务器,...
将 PetWeb 目录拷贝到 $CATALINA_HOME/webapps 下,然后启动服务器就可以了,Tomcat 启动时将自动加载应用。访问地址如下:http://localhost:8080/PetWeb/ 方式二:修改 Server.xml 文件部署 这种方式可以不必将 ...
2010-8-11 18:24:13 org.apache.catalina.core.AprLifecycleListener lifecycleEvent 信息: The Apache Tomcat Native library which allows optimal performance in production environments ...再启动tomcat,一切okay
3. **启动Tomcat,访问项目**:重启Tomcat后,在浏览器中输入新端口号(例如`localhost:8090/your-project-name`)来访问部署的应用。 #### 六、确定Linux的防火墙规则 如果在访问项目时遇到问题,可能是由于防火墙...
当Tomcat启动或检测到这个目录下的变化时,它会自动部署这些应用。然而,如果项目没有在这个目录下,可能是因为开发者选择了一种不同的部署方法,如通过修改`conf/server.xml`文件来指定自定义的上下文路径。 **...
接着,为Tomcat服务器添加Jrebel的启动参数,使其在启动时加载Jrebel代理。最后,启动Tomcat,Jrebel就会自动监测代码变动并实现热加载。 4. **Jrebel优势**:除了提高开发效率,Jrebel还能减少由于频繁重启导致的...
【标题】:Tomcat启动详解 【描述】:Tomcat是Apache软件基金会的Jakarta项目下的一个开源项目,是一款广泛使用的Java应用服务器,主要用于运行Servlet和JSP。本资料主要探讨Tomcat的启动过程,包括启动配置、环境...
在Spring Boot应用部署到Tomcat服务器的过程中,遇到“启动子级时出错”的问题,这通常是由于多种原因导致的。以下是一些可能的原因和解决策略: 1. **配置错误**: - 检查`web.xml`配置,确保没有错误的配置项,...
为了更具体地解决问题,需要查看`struts2中,在tomcat启动时候总是出现严重.txt`这个文本文件,它应该包含了详细的错误堆栈信息。根据这些信息,我们可以进一步定位问题所在,并采取相应的解决措施。如果文件中包含...