`
行者买刀
  • 浏览: 194185 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

javaDB笔记

    博客分类:
  • db
阅读更多

想写个测试小东西,能够保存数据,但数据库又想太重量级,只在程序启动的时候用一下,退出时数据库也跟着一样关闭,但,当很多数据库都可以做到这样,不过目前首选择的应该就是mysql跟javadb了

    在用javadb之前,还是得先了解一下它的背景

1.是在jdk1.6才开始出现

2.它是一个纯java实现,开源的数据库管理系统,程序程序于JVM之上

3.起源于apache名下的derby

4.只有2MB大小

 

如果你只是想用于一些基本的开发测试的话,可以在初次使用时创建它,它会根据你的dbname在当前目录下建立一个以dbname为文件夹名的数据库,第二次使用的话,通过getDBConnection()获得Connection,也可以在此基础上建立多个连接做连接池。

/**
     * it maybe the first time for you to create a new db
     * the connection spcifies create=true to cause the database to be created.
     * to remove the database,remove the direcotry derbyDB and its contents.the directory
     * derbyDB will be created under the directory that the system property derby.system.home
     * point to ,or the current diryctory if derby.sytem.home is not set.
     * @throws InstantiationException
     */
    public Connection createDB() throws InstantiationException, SQLException, ClassNotFoundException, IllegalAccessException {
        Class.forName(driver).newInstance();
        System.out.println("Load the instance driver.");
        con = DriverManager.getConnection(protocol + message.getDbName() + ";create=true", message.getUsername(), message.getPassword());
        return con;
    }

    /**
     * get db connection
     * @return
     */
    public Connection getDBConection() throws Exception {
        Class.forName(driver).newInstance();
        System.out.println("Load the instance driver.");
        con = DriverManager.getConnection(protocol + message.getDbName(), message.getUsername(), message.getPassword());
        return con;
    }

    /**
     * shutdown  db 
     */
    public void shutdownDB() {
        if (framework.equals("embedded")) {
            boolean shutdown = false;
            try {
                DriverManager.getConnection("jdbc:derby:"+message.getDbName()+";shutdown=true");
            } catch (SQLException se) {
                shutdown = true;
            }

            if (!shutdown) {
                System.out.println("Database did not shut down normally.");
            } else {
                System.out.println("Database shut down normally.");
            }
        }
    }

 另注意程序退出时记得shutdown退出数据库

如果是在网络模式下可以通过下以下方法调用

  if (args[index].equalsIgnoreCase("jccjdbcclient")) {
                framework = "jccjdbc";
                driver = "com.ibm.db2.jcc.DB2Driver";
                protocol = "jdbc:derby:net://localhost:1527/";
            }
            if (args[index].equalsIgnoreCase("derbyclient")) {
                framework = "derbyclient";
                driver = "org.apache.derby.jdbc.ClientDriver";
                protocol = "jdbc:derby://localhost:1527/";
            }

 

derby附带小工具(位于%db_home%/lib/derbytools.jar):

  ij:可以选择SQL脚本

  dblook:为derby数据库作模式提取,并生成dll

  sysinfo:显示系统以及derby信息

分享到:
评论

相关推荐

    java JDBC综合笔记

    Java JDBC综合笔记详细介绍了使用Java语言通过JDBC操作数据库的基本方法和技巧,包括数据库的创建、表的操作、数据的增删改查、SQL语句的使用等。 在数据库的创建方面,笔记中提到了如何创建数据库以及如何设置...

    java基础整理笔记超详细

    【Java基础整理笔记超详细】 Java是一门广泛使用的高级编程语言,由Sun Microsystems(后被Oracle收购)在1995年推出。它的设计目标是跨平台、面向对象,并且具有健壮性和安全性。Java这个名字源于印度尼西亚的咖啡...

    JAVA学习笔记最新ppt版20

    JAVA学习笔记最新ppt版20 - JDBC 入门 在本章节中,我们将学习 JDBC 的基本概念和使用方法,以及如何使用 JDBC 连接数据库和进行数据操作。 一、 JDBC 简介 JDBC(Java Database Connectivity)是一种 Java API,...

    java笔记(基础)

    - **db**:包含Derby数据库,一个轻量级的关系型数据库,适合开发和测试用途。 6. 在Windows系统下,`path`和`classpath`环境变量对Java开发者至关重要: - **path**:定义了系统在命令行中寻找可执行文件的路径...

    db2应用基础学习笔记

    10. **开发与集成**:DB2可以与各种编程语言(如Java、Python、C#等)进行集成,提供API和驱动程序。了解如何在应用程序中连接和操作DB2数据库,是开发人员必须掌握的知识。 综上所述,"db2应用基础学习笔记"将带你...

    java与xml 学习笔记整理

    Java操作XML是编程中常见的任务,特别是在处理配置文件、数据交换和存储时。XML文档对象模型(DOM)是一种广泛使用的解析XML的方式。DOM允许开发者通过Java代码与XML文档的结构进行交互,就像一棵树,每个元素、属性...

    2017达内JAVA云笔记项目的源码资源.zip

    这是一个关于2017年达内教育JAVA云笔记项目的源码资源的压缩包,其中包含了构建Web应用程序所需的各种组件和资源。这个项目主要是基于Java技术栈,利用了Spring、SpringMVC和MyBatis(SSM)框架进行开发,同时结合了...

    java学习笔记JDK6课件之二

    4. "db"目录:内含Apache Derby,这是一个完全用Java编写的数据库管理系统。 5. "lib"目录:存储工具程序所依赖的Java类库,如`tools.jar`,其中包含了大多数工具程序的实现。 6. "src.zip":Java标准库的源代码...

    Java学习笔记

    - **db**:JavaDB安装路径。 - **include**:平台头文件。 - **jre**:Java运行环境。 - **javafx-src.zip**:JavaFX核心类库源代码。 - **src.zip**:核心类库源代码。 - 其他文件为文档说明。 - **IDE工具...

    java 课程笔记

    Java 课程笔记主要涵盖了几大核心知识点,包括Java语言的基础概念、历史背景、跨平台特性、Java开发环境以及Java平台的三个版本。以下是对这些知识点的详细解释: 1. **Java语言基础**: - Java是一种面向对象的...

    java学习笔记

    Java学习笔记涵盖了大量的编程知识,主要集中在Java语言本身、数据库技术以及常见的企业级框架上。以下是对这些知识点的详细说明: 1. **Java基础**:Java是一种广泛使用的面向对象的编程语言,以其“一次编写,...

    java学习笔记JDK6课件之二十

    在Java编程中,JDBC(Java Database Connectivity)是Java语言与各种数据库交互的标准接口,使得开发者能够通过编写Java代码来访问和操作数据库。本章节主要讲解了JDBC入门,包括JDBC的基本概念、数据库驱动程序的...

    java-Mybatis笔记.docx

    "java-Mybatis笔记.docx" 从标题和描述中,我们可以看出这篇笔记是关于java和Mybatis的相关知识点,下面我们将对这些知识点进行详细的解释和分析。 首先,笔记中提到使用jdbc操作数据库的痛苦经历,包括加载驱动、...

    db2 连接数据库笔记

    这篇名为“db2 连接数据库笔记”的博文主要探讨了如何连接到DB2数据库,这对于开发者来说是一项基础但至关重要的技能。下面将详细介绍DB2数据库连接的相关知识点。 1. **JDBC驱动**:在Java环境中连接DB2,我们通常...

    JAVA笔记.docx

    JDK包含了一些关键的目录,如`bin`下的编译器和解释器,`db`目录的Derby数据库,`include`中的本地方法文件,`jre`下的Java运行时环境,`lib`中的类库文件,以及`src.zip`中的Java类源代码。配置JDK环境变量,特别是...

    DB2学习笔记与总结

    12. **应用程序开发**:DB2支持多种编程语言(如Java、C++、Python)的接口,包括JDBC、ODBC、.NET,方便开发者进行应用程序的开发和集成。 以上是DB2学习笔记中可能涵盖的主要知识点,这些内容对于理解和操作DB2...

Global site tag (gtag.js) - Google Analytics