`
pengyan
  • 浏览: 36370 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Tomcat与Derby集成

阅读更多

      一直以来在写程序的时候觉得有许多数据是运行这个程序本身需要的,和用户的数据没有什么关系,都放在一个库里有点不合适。分开放要同时连接两个以上的大型数据库(客户的数据一般都放在大型的数据库里面)好象也不太合适。
       在网上一查发现Derby这个东西不错,人家说了:),查资料,做DEMO。最后发现它不能够和TOMCAT一块起来,还得单独起动它的网络服务。这怎么能行呢?
       最后在http://www-128.ibm.com/developerworks/cn/db2/library/techarticles/dm- 0508bader/index.html查到一篇文章。但它写得很麻烦,可能是我没有用到那么多功能。我整理如下步骤:
       1、修改TOMCAT_HOME\conf\catalina.properties文件,在common.loader 键最后面加入DERBY的JAR,这是TOMCAT启动时加载的类的路径,这个不改也可以,需要把DERBY的JAR放到TOMCAT_HOME/common/lib下。这样更简单一些。
       2、修改TOMCAT_HOME\conf\server.xml文件,在 <Server> 元素的开头添加下列元素:   
<Listener className="org.apache.derby.tomcat.ServerLifecycleListenerWithNetworkServer" debug="0" />
这个类的源代码如下 :

package  org.apache.derby.tomcat;

import  org.apache.derby.tomcat.ServerLifecycleListener;

public   class  ServerLifecycleListenerWithNetworkServer
    
extends  ServerLifecycleListener
... {
    
public   static   final  String START_NETWORK_SERVER  =
        
" derby.drda.startNetworkServer " ;

    
public   static   final  String HOST  =
        
" derby.drda.host " ;

    
public   static   final  String PORT_NUMBER  =
        
" derby.drda.portNumber " ;

    
protected   void  initializeCloudscape()  ... {
        System.setProperty(
            START_NETWORK_SERVER,
            
" true "
        );
        
super .initializeCloudscape();
    }



}

package  org.apache.derby.tomcat;

import   java.sql.DriverManager;
import   java.sql.SQLException;

import   org.apache.catalina.Lifecycle;
import   org.apache.catalina.LifecycleEvent;
import   org.apache.catalina.LifecycleListener;

public   class  ServerLifecycleListener  implements  LifecycleListener  ... {

    
public   static   final  String DRIVER_CLASSNAME  =
        
" org.apache.derby.jdbc.EmbeddedDriver " ;

    
public   static   final  String SHUTDOWN_URL  =
        
" jdbc:derby:;shutdown=true " ;

    
public   static   final  String SHUTDOWN_MESSAGE  =
        
" Cloudscape system shutdown. " ;

    
public   static   final  String MSG_INIT_SUCCESS  =
        
" Cloudscape JDBC driver loaded successfully " ;

    
public   static   final  String MSG_INIT_CLASS_NOT_FOUND  =
        
" The Cloudscape JDBC driver ( "   +
        DRIVER_CLASSNAME 
+
        
" ) could not be found.  Make sure the appropriate JAR "   +
        
"  files are available. " ;

    
public   static   final  String MSG_TERM_SUCCESS  =
        
" Cloudscape shutdown was successful. " ;

    
public   static   final  String MSG_TERM_FAILURE  =
        
" Unexpected Exception was caught from the Cloudscape shutdown. " ;


    
public   void  lifecycleEvent(LifecycleEvent argEvent)  ... {
        
if  (argEvent.getType().equals(Lifecycle.START_EVENT))  ... {
            
this .initializeCloudscape();
        }
  else   if  (argEvent.getType().equals(Lifecycle.STOP_EVENT))  ... {
            
this .shutdownCloudscape();
        }

    }


    
protected   void  initializeCloudscape()  ... {
        
try   ... {
            Class.forName(DRIVER_CLASSNAME);
            System.out.println(MSG_INIT_SUCCESS);
        }
  catch  (ClassNotFoundException varException)  ... {
            System.out.println(MSG_INIT_CLASS_NOT_FOUND);
            varException.printStackTrace();
        }

    }


    
protected   void  shutdownCloudscape()  ... {
        
try   ... {
            DriverManager.getConnection(SHUTDOWN_URL);
        }
  catch  (SQLException varException)  ... {
            
if  (varException.getMessage().equals(SHUTDOWN_MESSAGE))  ... {
                System.out.println(MSG_TERM_SUCCESS);
            }
  else   ... {
                System.out.println(MSG_TERM_FAILURE);
                varException.printStackTrace();
            }

        }

    }

}


怎么找不到上传附件的地方呢???
把这两个文件编译好后放到TOMCAT_HOME\server\classes目录下。

现在重启TOMCAT就可以发现DERBY会一块启来了!
至于DERBY的连接池这些和其他的没有什么区别了。以后有时间再记吧。

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    JavaSE6.0的Derby嵌入式数据库

    - **Derby嵌入式模型**:应用程序直接与Derby数据库引擎交互,不需要通过中间的服务器层。 #### 开发步骤 为了使用JavaSE6.0中的Derby嵌入式数据库,开发者需要遵循以下步骤: 1. **添加依赖**:将JavaSE6.0安装...

    MyEclipse2013禁用derby方法

    启动你的应用服务器,如果一切正常,你应该不会看到任何与Derby相关的日志输出,这表明Derby已被成功禁用。 5. **注意备份**: 在进行这些更改之前,建议备份你的MyEclipse配置,以防万一需要恢复原来的设置。 ...

    Getting Started with Derby

    Derby可以无缝集成到Java EE应用服务器中,如Tomcat、Jetty等。此外,由于其纯Java特性,Derby能在任何Java支持的平台上运行。 总之,"Getting Started with Derby"涵盖了Derby数据库的基础知识,包括安装、配置、...

    解析Tomcat下应用JMS开发技巧

    最后,需要将JMS服务器与Web服务器集成,首先需要配置应用的web.xml文件,添加context-param和listener元素,以便 aktivemq.xml文件的配置。 在web.xml文件中,需要添加以下代码: &lt;param-name&gt;brokerURI ...

    Myeclipse + sqlserver+tomcat 安装顺序和配置方法

    MyEclipse 作为 Java 开发的集成开发环境,需要与 SQL Server 和 Tomcat 进行集成以实现数据库交互和 Web 应用程序部署。本文将详细介绍 MyEclipse 8.5、SQL Server 2005 和 Tomcat 6 的安装顺序和配置方法。 安装 ...

    jsp/servlet投票管理系统myeclipse 8.6.1+tomcat7.0.11+xml(dom4j解析)

    这是一个基于JSP/SERVLET技术构建的投票管理系统,利用了MYECLIPSE 8.6.1作为集成开发环境,以及TOMCAT 7.0.11作为服务器平台,其中XML文件的解析采用了DOM4J库。该系统可能包含小型数据库用于存储投票数据,实现了...

    MyEclipse 10破解版

    多种内置的服务器连接器用于监控你的应用运行。部署的应用服务器包括WebSphere、Glassfish、WebLogic和Tomcat等等。为了应对极速测试,提供了即时可用的集成化MyEclipse Tomcat和Derby服务器。

    利用Eclipse创建数据库web应用程序[汇编].pdf

    Derby 数据库引擎可以轻松地与 Eclipse 集成,提供了一个强大的数据库解决方案 для创建数据库 Web 应用程序。 创建数据库 创建一个数据库是创建数据库 Web 应用程序的第一步骤。在 Eclipse 中,开发者可以使用 ...

    利用Eclipse创建数据库web应用程序

    - **集成与管理:** Eclipse的Derby插件可以很好地集成Derby服务控制功能,便于在开发过程中启动或停止服务。 #### 四、创建Web项目 1. **创建Derby数据库:** 在Eclipse中创建一个新的Derby数据库,这是后续Web应用...

    Jetspeed2官网guide文档翻译2

    Jetspeed是一个开源的portlet容器和企业信息门户平台,它允许集成多种应用和服务,提供个性化和协作功能。 首先,构建和部署Jetspeed 2.2需要以下前提条件: 1. **Java Development Kit 1.5**:这是编译和运行...

    一个简单的酒店管理系统

    系统的核心是通过Myeclipse集成开发环境、Apache Derby数据库以及Tomcat服务器来实现。这个系统展示了如何将前端用户界面与后端数据库交互,以完成酒店日常运营中的各项任务。 Apache Derby是一款轻量级的关系型...

    java直接能用的weboffice 带签章手写

    2. **集成Tomcat** 将WebOffice部署到Tomcat服务器非常简单,只需要将解压后的项目文件夹放入Tomcat的webapps目录下,然后启动Tomcat服务,项目就能自动加载并提供服务。这体现了Java Web应用的便捷性和可移植性。 ...

    SpringSide 3.1.4.3项目开发全过程

    此外,bin目录下还有其他实用脚本,如start-db.bat用于启动Derby数据库,start-selenium.bat启动Selenium Server,start-tomcat.bat启动Tomcat服务器。 要使用SpringSide生成项目,需要确保已安装JDK 5或更高版本,...

    在线图书管理系统(jsp)

    在线图书管理系统是一个基于Web的应用程序,它利用JavaServer Pages (JSP) 技术与Apache Derby数据库进行交互,为用户提供方便的图书查询、借阅、归还等服务。MyEclipse是一个集成开发环境,用于简化这个项目的开发...

    myeclipse2015-version-comparison.pdf

    在服务器部署方面,MyEclipse 2015支持内嵌Tomcat和Derby数据库,实现了应用的按需同步部署。同时,还提供了30多个应用服务器连接器,包括与IBM WebSphere的连接器,这些连接器使得MyEclipse能够更灵活地与不同的...

    netbeans连接数据库

    如果使用的是集成有Tomcat服务器的NetBeans版本,则还需要进一步配置Tomcat以支持数据库连接。 **步骤1:修改Context.xml文件** 1. 打开Tomcat安装目录下的`conf`文件夹。 2. 使用文本编辑器打开`Context.xml`文件...

Global site tag (gtag.js) - Google Analytics