使用hsqldb数据库,开发环境eclipse,jdk8.0

Dsqldb数据库

1、下载包:hsqldb.jar

2、新建项目,复制到项目WebContent -> WEB -> INF -> lib下面,右键选择 Build Path  ->  Add to Build Path

3、在项目中找到Referenced Libraries点击,选择hsqldb.jar -> org.hsqldb.server -> Server.class -> Server 右键 选择 Run as -> 1 JAVA Application 启动项目

4、选择hsqldb.jar -> org.hsqldb.util -> DatabaseManagerSwing.class -> DatabaseManagerSwing 右键 选择 Run as -> JAVA Application 启动数据库

5、之后会弹出窗口,在第二个下拉框中 hsqldb database server ,点击OK登录(其他不需做改变),这里是指以hsqldb的客户端登录

Proxool

1、下载:官方网址:http://proxool.sourceforge.net/servlets.html (包:proxool-0.9.1.jar下载解压缩,之后会在lib有两个包,在jarjar有两个包,导入到项目lib中(包为:jarjar-0.6.jar、proxool-0.9.1.jar、proxool-cglib.jar、cglib-nodep-2.1_3.jar));

在之后的测试代码中,还需下载commons-dbcp-1.2.2.jar、commons-io-1.3.2.jar、commons-lang-2.4.jar、commons-logging-1.0.4.jar、commons-logging-api-1.1.jar、commons-pool-1.4.jar(commons包)

测试代码:

eclipse连接dsqldb数据库

  1. package com.hsqldb;
  2.  
  3. import java.sql.Connection;
  4. import java.sql.DriverManager;
  5. import java.sql.ResultSet;
  6. import java.sql.SQLException;
  7. import java.sql.Statement;
  8.  
  9. //使用hsqldb数据库连接
  10. public class hsqlconfig {
  11.  
  12. public static void main(String[] args) {
  13. Connection conn = null;
  14. ResultSet rs = null;
  15. try {
  16. //选择dsqldb.jar -> org.hsqldb.jdbc -> JDBCDriver.class -> JDBCDriver右键选择Copy Qualified Name
  17. //粘贴到这里。这里的意思就是告诉eclipse说你去给我加载dsqldb的数据库驱动
  18. Class.forName("org.hsqldb.jdbc.JDBCDriver");
  19. //选择dsqldb.jar -> org.hsqldb.util -> DatabaseManagerSwing.class -> DatabaseManagerSwing右键选择Copy Qualified Name
  20. //之后会弹出dsqldb客户端登录窗体,选择 URL 复制 jdbc:hsqldb:hsql://localhost/
  21. //默认dsqldb账号为sa,密码为空;
  22. conn = DriverManager.getConnection("jdbc:hsqldb:hsql://localhost/","SA","");
  23. Statement stmt = conn.createStatement();
  24. rs = stmt.executeQuery("select count(*) as ant from userinfo");
  25. if(rs!=null){
  26. while(rs.next()){
  27. System.out.println(rs.getInt("ant"));
  28. }
  29. }
  30. } catch (ClassNotFoundException e) {
  31. e.printStackTrace();
  32. } catch (SQLException e) {
  33. e.printStackTrace();
  34. }
  35. }
  36. }

dsqldb

eclipse连接hsqldb数据库,使用JAVA配置

  1. package com.proxool;
  2.  
  3. import java.sql.Connection;
  4. import java.sql.DriverManager;
  5. import java.sql.ResultSet;
  6. import java.sql.SQLException;
  7. import java.sql.Statement;
  8. import java.util.Properties;
  9.  
  10. //直接java编写配置
  11. public class JavaProxool {
  12.  
  13. public static void main(String[] args) {
  14. //Properties 配置文件,用户存放系统配置信息等
  15. Properties info = new Properties();
  16. info.setProperty("proxool.maximum-connection-count", "20");
  17. info.setProperty("proxool.house-keeping-test-sql", "select CURRENT_DATE");
  18. info.setProperty("user", "sa");
  19. info.setProperty("password", "");
  20. String alias = "test";
  21. String driverClass = "org.hsqldb.jdbc.JDBCDriver";
  22. String driverUrl = "jdbc:hsqldb:hsql://localhost/";
  23. String url = "proxool." + alias + ":" + driverClass + ":" + driverUrl;
  24.  
  25. try {
  26. //加载驱动包(proxool的驱动包)
  27. Class.forName("org.logicalcobwebs.proxool.ProxoolDriver");
  28. } catch (ClassNotFoundException e1) {
  29. // TODO Auto-generated catch block
  30. e1.printStackTrace();
  31. }
  32. Connection conn = null;
  33. ResultSet rs = null;
  34. try {
  35. //执行连接过程,其中url是完整的路径,info是配置信息
  36. conn = DriverManager.getConnection(url, info);
  37. //声明一个可执行sql语句的对象
  38. Statement stmt = conn.createStatement();
  39. rs = stmt.executeQuery("select count(*) as ant from userinfo");
  40. if(rs!=null){
  41. while(rs.next()){
  42. System.out.println(rs.getInt("ant"));
  43. }
  44. }
  45. } catch (SQLException e) {
  46. e.printStackTrace();
  47. }
  48. }
  49.  
  50. }

Java配置

eclipse使用properties连接hsqldb数据库

  1. package com.proxool;
  2.  
  3. import java.sql.Connection;
  4. import java.sql.DriverManager;
  5. import java.sql.ResultSet;
  6. import java.sql.SQLException;
  7. import java.sql.Statement;
  8.  
  9. //使用proxool透明模式连接数据库
  10. public class proxoolconfig {
  11.  
  12. public static void main(String[] args) {
  13. Connection conn = null;
  14. ResultSet rs = null;
  15. try {
  16. Class.forName("org.logicalcobwebs.proxool.ProxoolDriver");
  17. //proxool.example 是别名
  18. //org.hsqldb.jdbc.JDBCDriver 是数据库的名称
  19. //jdbc:hsqldb:hsql://localhost/ 是url地址
  20. conn = DriverManager.getConnection("proxool.example:org.hsqldb.jdbc.JDBCDriver:jdbc:hsqldb:hsql://localhost/");
  21. Statement stmt = conn.createStatement();
  22. rs = stmt.executeQuery("select count(*) as ant from userinfo");
  23. if(rs!=null){
  24. while(rs.next()){
  25. System.out.println(rs.getInt("ant"));
  26. }
  27. }
  28. } catch (ClassNotFoundException e) {
  29. e.printStackTrace();
  30. } catch (SQLException e) {
  31. e.printStackTrace();
  32. }finally{
  33. try {
  34. conn.close();
  35. } catch (SQLException e) {
  36. e.printStackTrace();
  37. }
  38. }
  39. }
  40. }

使用Properties连接hsqldb

eclipse连接hsqldb数据库,使用properties文件配置

  1. package com.proxool;
  2.  
  3. import java.io.IOException;
  4. import java.sql.Connection;
  5. import java.sql.DriverManager;
  6. import java.sql.ResultSet;
  7. import java.sql.SQLException;
  8. import java.sql.Statement;
  9. import java.util.Properties;
  10.  
  11. import org.logicalcobwebs.proxool.ProxoolException;
  12. import org.logicalcobwebs.proxool.configuration.PropertyConfigurator;
  13.  
  14. //使用Properties配置文件信息
  15. public class Properties_Proxool {
  16.  
  17. public static void main(String[] args) {
  18. Connection conn = null;
  19. ResultSet rs = null;
  20. Properties info = new Properties();
  21. try {
  22. //Properties_Proxool.class.getResourceAsStream是读取Src下的文件信息
  23. info.load(Properties_Proxool.class.getResourceAsStream("/proxool.properties"));
  24. //读取使用Java的特性文件编写的配置文件。
  25. PropertyConfigurator.configure(info);
  26. } catch (IOException e) {
  27. e.printStackTrace();
  28. }catch (ProxoolException e) {
  29. e.printStackTrace();
  30. }
  31. try {
  32. //加载驱动包
  33. Class.forName("org.logicalcobwebs.proxool.ProxoolDriver");
  34. conn = DriverManager.getConnection("proxool.property-test");
  35. Statement stmt = conn.createStatement();
  36. rs = stmt.executeQuery("select count(*) as ant from userinfo");
  37. if(rs!=null){
  38. while(rs.next()){
  39. System.out.println(rs.getInt("ant"));
  40. }
  41. }
  42. } catch (ClassNotFoundException e) {
  43. e.printStackTrace();
  44. } catch (SQLException e) {
  45. e.printStackTrace();
  46. }
  47. }
  48. }

Properties文件配置系统信息

记住使用properties配置,必须新建properties文件,同时放在准确的地方,这里是放在Src下,同时代码也是通过Src去找这个文件

  1. jdbc-0.proxool.alias=property-test
  2. jdbc-0.proxool.driver-url=jdbc:hsqldb:hsql://localhost/
  3. jdbc-0.proxool.driver-class=org.hsqldb.jdbc.JDBCDriver
  4. jdbc-0.user=sa
  5. jdbc-0.password=
  6. jdbc-0.proxool.maximum-connection-count=10
  7. jdbc-0.proxool.house-keeping-test-sql=select CURRENT_DATE

Properties配置

eclipse连接hsqldb数据库,使用XML文件配置

  1. package com.proxool;
  2.  
  3. import java.io.FileInputStream;
  4. import java.io.FileNotFoundException;
  5. import java.io.IOException;
  6. import java.io.FileInputStream;
  7. import java.io.InputStreamReader;
  8. import java.sql.Connection;
  9. import java.sql.DriverManager;
  10. import java.sql.ResultSet;
  11. import java.sql.SQLException;
  12. import java.sql.Statement;
  13. import java.util.Properties;
  14.  
  15. import org.logicalcobwebs.proxool.ProxoolException;
  16. import org.logicalcobwebs.proxool.configuration.JAXPConfigurator;
  17. import org.logicalcobwebs.proxool.configuration.PropertyConfigurator;
  18.  
  19. //使用新建xml编写配置
  20. public class XmlProxool {
  21.  
  22. public static void main(String[] args) {
  23. Connection conn = null;
  24. ResultSet rs = null;
  25. Statement stmt;
  26. try {
  27. Class.forName("org.logicalcobwebs.proxool.ProxoolDriver");
  28. try {
  29. //InputStreamReader 实例一个读取流
  30. //XmlProxool.class.getResourceAsStream 读取的是src下的文件
  31. //使用XML配置,解析的时候就是用 JAXPConfigurator.configure()解析
  32. //使用Properties配置,解析的时候用 PropertyConfigurator.configure()
  33. JAXPConfigurator.configure(new InputStreamReader(XmlProxool.class.getResourceAsStream("/proxool.xml")),false);
  34. try {
  35. conn = DriverManager.getConnection("proxool.xml-test");
  36. } catch (SQLException e) {
  37. // TODO Auto-generated catch block
  38. e.printStackTrace();
  39. }
  40.  
  41. } catch (ProxoolException e) {
  42.  
  43. e.printStackTrace();
  44. }
  45. try {
  46. stmt = conn.createStatement();
  47. System.out.println(stmt);
  48. rs = stmt.executeQuery("select count(*) as ant from userinfo");
  49. if(rs!=null){
  50. while(rs.next()){
  51. System.out.println(rs.getInt("ant"));
  52. }
  53. }
  54. } catch (SQLException e) {
  55. // TODO Auto-generated catch block
  56. e.printStackTrace();
  57. }
  58. } catch (ClassNotFoundException e1) {
  59. e1.printStackTrace();
  60. }
  61. }
  62. }

XML文件配置系统信息

同上,这里也是放在Src文件下,代码也是通过Src去找XML文件

  1. <proxool-config>
  2. <proxool>
  3. <alias>xml-test</alias>
  4. <driver-url>jdbc:hsqldb:hsql://localhost/</driver-url>
  5. <driver-class>org.hsqldb.jdbc.JDBCDriver</driver-class>
  6. <!-- <statistics>1m,15m,1d</statistics> -->
  7. <driver-properties>
  8. <property name="user" value="SA"/>
  9. <property name="password" value=""/>
  10. </driver-properties>
  11. <maximum-connection-count>10</maximum-connection-count>
  12. <house-keeping-test-sql>select CURRENT_DATE</house-keeping-test-sql>
  13. </proxool>
  14. </proxool-config>

XML配置

使用Tomcat访问网页,将该数据库的信息加载出来(Tomcat 8.0)

1、新建Servlet,编写代码

  1. package com.proxool.servlet;
  2.  
  3. import java.io.IOException;
  4. import java.io.InputStreamReader;
  5. import java.sql.Connection;
  6. import java.sql.DriverManager;
  7. import java.sql.ResultSet;
  8. import java.sql.SQLException;
  9. import java.sql.Statement;
  10. import java.util.Properties;
  11.  
  12. import javax.servlet.ServletException;
  13. import javax.servlet.annotation.WebServlet;
  14. import javax.servlet.http.HttpServlet;
  15. import javax.servlet.http.HttpServletRequest;
  16. import javax.servlet.http.HttpServletResponse;
  17.  
  18. import org.logicalcobwebs.proxool.ProxoolException;
  19. import org.logicalcobwebs.proxool.configuration.JAXPConfigurator;
  20. import org.logicalcobwebs.proxool.configuration.PropertyConfigurator;
  21.  
  22. import com.proxool.Properties_Proxool;
  23. import com.proxool.XmlProxool;
  24.  
  25. @WebServlet("/helloproxool")
  26. public class helloproxool extends HttpServlet {
  27. private static final long serialVersionUID = 1L;
  28.  
  29. public helloproxool() {
  30. super();
  31. }
  32.  
  33. protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  34. Connection conn = null;
  35. ResultSet rs = null;
  36. Statement stmt;
  37. try {
  38. Class.forName("org.logicalcobwebs.proxool.ProxoolDriver");
  39. try {
  40. try {
  41. conn = DriverManager.getConnection("proxool.xml-test");
  42. } catch (SQLException e) {
  43.  
  44. e.printStackTrace();
  45. }
  46. } catch (Exception e) {
  47. e.printStackTrace();
  48. }
  49. try {
  50. stmt = conn.createStatement();
  51. System.out.println(stmt);
  52. rs = stmt.executeQuery("select count(*) as ant from userinfo");
  53. if(rs!=null){
  54. while(rs.next()){
  55. System.out.println(rs.getInt("ant"));
  56. }
  57. }
  58. } catch (SQLException e) {
  59.  
  60. e.printStackTrace();
  61. }
  62. } catch (ClassNotFoundException e1) {
  63. e1.printStackTrace();
  64. }
  65. }
  66.  
  67. protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  68. // TODO Auto-generated method stub
  69. doGet(request, response);
  70. }
  71.  
  72. }

Servlet代码

2、通过配置Web.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
  3. <display-name>test_hsqldb</display-name>
  4. <welcome-file-list>
  5. <welcome-file>index.html</welcome-file>
  6. <welcome-file>index.htm</welcome-file>
  7. <welcome-file>index.jsp</welcome-file>
  8. <welcome-file>default.html</welcome-file>
  9. <welcome-file>default.htm</welcome-file>
  10. <welcome-file>default.jsp</welcome-file>
  11. </welcome-file-list>
  12.  
  13. <servlet>
  14. <servlet-name>proxool</servlet-name>
  15. <!--这是proxool自带的Servlet类 -->
  16. <servlet-class>org.logicalcobwebs.proxool.admin.servlet.AdminServlet</servlet-class>
  17. </servlet>
  18.  
  19. <servlet-mapping>
  20. <servlet-name>proxool</servlet-name>
  21. <!--通过访问admin,访问AdminServlet -->
  22. <url-pattern>/admin</url-pattern>
  23. </servlet-mapping>
  24.  
  25. <servlet>
  26. <servlet-name>ServletConfigurator</servlet-name>
  27. <!--解析xml信息 -->
  28. <servlet-class>org.logicalcobwebs.proxool.configuration.ServletConfigurator</servlet-class>
  29. <init-param>
  30. <param-name>xmlFile</param-name>
  31. <param-value>WEB-INF/proxool.xml</param-value>
  32. </init-param>
  33. <load-on-startup>1</load-on-startup>
  34. </servlet>
  35.  
  36. <servlet>
  37. <servlet-name>A</servlet-name>
  38. <servlet-class>com.proxool.servlet.helloproxool</servlet-class>
  39. </servlet>
  40. <servlet-mapping>
  41. <servlet-name>A</servlet-name>
  42. <url-pattern>*.j12</url-pattern>
  43. </servlet-mapping>
  44. </web-app>

Web.xml配置

3、访问:http://localhost:8080/test_hsqldb/admin.j12,他会先去启动hsqldb数据库

访问http://localhost:8080/test_hsqldb/admin,会出现以下这个,就是可以的!

proxool+hsqldb数据库的更多相关文章

  1. Eclipse 连接hsqldb数据库

    初学Java,在接触数据库根本无从下手,不知如何将程序和数据库连接起来,今天做一个记录. 数据库是:hsqldb_1_8_0_5 附链接百度云盘 链接:https://pan.baidu.com/s/ ...

  2. 关于HSQLDB访问已有数据库文件的操作说明

    关于HSQLDB数据库的创建,本文不做过多描述,可以在百度上搜索一下,有许多. 对于访问已存在的库文件,网上找了半天,没有整理的很清楚的参考资料,现将自己的操作过程整理如下,以供参考. 1.先下载一个 ...

  3. hsql数据库使用详解(入门)及快速使用

    一.简介: hsql数据库是一款纯Java编写的免费数据库,许可是BSD-style的协议,如果你是使用Java编程的话,不凡考虑一下使用它,相对其 他数据库来说,其体积小,才563kb.仅一个hsq ...

  4. 关于lemon oa的数据库

    lemonOA的数据库默认用的是hsqldb,这个数据库还是第一次听说,暂且不论. 也就说Lemon OA默认使用HSQLDB数据库,是嵌入式的数据库不需要单独安装. lemon-1.4.0\weba ...

  5. Hsqldb安装与使用

    HSQLDB是一个轻量级的纯Java开发的开放源代码的关系数据库系统,其体积小,占用空间小,使用简单,支持内存运行方式等特点.可以在http://sourceforge.net/projects/hs ...

  6. Eclipse 和 HSQLDB: 将关系数据库服务器嵌入到 Eclipse 中,第 2 部分

    HSQLDB 开发者角色 对 HSQLDB 与 Eclipse 工作台的集成感兴趣的开发者可以很容易地被分为两类: 客户机开发者,他们只是用 HSQLDB 来存储数据. 引擎开发者,他们通过添加新的标 ...

  7. HSQLDB相关信息及用法汇总

    运行模式 说明 启动命令 JDBC例 内存(Memory-Only)模式 所有数据都在内存里操作.应用程序退出后则数据被销毁.无需另外启动HSQLDB Server 启动方式1:通过程序中首次调用Co ...

  8. WEKA从sqlite数据库文件导入数据

    1.编写代码的方式 只需要在java工程中导入weka.jar和sqlite-jdbc-3.8.7.jar两个jar包, weka.jar可以在weka的安装路径下找到, sqlite-jdbc-3. ...

  9. hsqldb简单使用总结

      hsqldb数据库是一款纯Java实现的开源免费数据库,相对其他数据库来说,体积非常小,使用方便,非常利于在测试环境中使用,无需复杂的数据库配置.   hsqldb数据库引擎有几种服务器模式:Se ...

随机推荐

  1. Struts2.X——搭建

    今天是我第一次用博客,虽然还有好多的不懂,但是我还是会努力的把自己学到的写下来,分享给大家: 一,SSH框架中的struts2的搭建流程 1.在搭建struts2之前,我们首先要有struts2的ja ...

  2. Java中Eclipse的使用

    Eclipse是跨平台的自由集成开发环境(IDE),初衷主要为Java语言的定制.第一次使用就喜欢上了它.它可以帮我们导入包,而不需要我们导入,有很多快捷键提供我们使用,方便节省时间:最值得我喜欢的是 ...

  3. 【Win10应用开发】通过拖放来打开文件

    除了可以使用XXXFilePicker来浏览文件外,其实在UWP APP中,也可以向传统Windows窗口一样,通过拖放的方式来打开文件. 处理过程和WPF的原理差不多,毕竟都是一脉相承,于是,在学习 ...

  4. 为 Neutron 准备物理基础设施(II) - 每天5分钟玩转 OpenStack(76)

    本节将按照上一节的规划安装配置控制节点和计算节点. 控制节点 devstack-controller 步骤如下 安装 Ubuntu 14.04 此处省略 256 个字 配置网卡 编辑 /etc/net ...

  5. Ubuntu杂记——Apache+PHP+MySQL的安装

    昨天晚上,参考博客园的另一篇文章,在自己的Ubuntu上搭建了一个Apache+PHP+MySQL的服务器,在此谨记,以备不时之需. 一.安装Apache sudo apt-get install a ...

  6. 如何利用Oracle外部表导入文本文件的数据

    同事最近在忙数据一致性比对工作,需要对不同文本文件中的数据进行比对,有的文件较大,记录较多,如果用普通的文本编辑器打开的话,很显然,会很卡,甚至打不开. 基于此,可将该文本文件的数据导入到数据库中,在 ...

  7. C# 在excel表格中检索并导出数据

    由于工作需要,我经常使用excel文档来存储和处理各种数据,在生活中偶尔也会使用excel表格来记录各种开销,相信很多朋友也和我一样.Excel的功能很强大,其中一个很实用的数据处理功能就是查找和替换 ...

  8. 如何使用免费控件将Word表格中的数据导入到Excel中

    我通常使用MS Excel来存储和处理大量数据,但有时候经常会碰到一个问题—我需要的数据存储在word表格中,而不是在Excel中,这样处理起来非常麻烦,尤其是在数据比较庞大的时候, 这时我迫切地需要 ...

  9. 【JavaWeb】MVC案例之新闻列表

    MVC案例之新闻列表 作者:白宁超 2016年6月6日15:26:30 摘要:本文主要针对javaweb基本开发之MVC案例的简单操作,里面涉及mysql数据库及表的创建,以及jsp页面和servle ...

  10. 软件工程 Coding.net代码托管平台 Git初学者的使用总结 五步完成 程序,文件,文件夹的Git

    一.前言 第一次用git相关的命令行,我使用的是Coding.net代码托管平台.Coding.net 自主打造的基于 Git 的代码托管平台,提供高性能的远端仓库,还有保护分支,历史版本分屏对比. ...