java 连接 firebird

2023-10-30 16:49
文章标签 java 连接 firebird

本文主要是介绍java 连接 firebird,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

java中使用fb(jaybird)
到这里下载最新版的jaybird(fb的jdbc Driver)
http://www.firebirdsql.org/index.php?op=files&id=jaybird
它是4类型jdbc驱动,根本不需要odbc中转,是效率最好的类型(具体见jdbc驱动类型说明)。而且它实现大部分jdbc2.0接口。

解压后看看docs/faq.html,里面有大多你想要的答案。

为扮装高手帮助“懒人”,我就继续罗嗦下去(多时候我讨厌重复和教条,那像上年纪的老太婆,不过这次我鼓起勇气和精神继续写吧)。。。

将jaybird-X.X.XJDK_X.X.zip(注意,它是zip非jar)解压到任意目录,将其中的jaybird-full-X.X.X.jar(对,它才是完整的驱动包!)拷贝到你的CLASS_PATH目录中,然后在你的java代码里连接你的数据库吧

URL格式如下:
标准格式 jdbc:firebirdsql:[//host[:port]/]<database>
旧格式 jdbc:firebirdsql:[host[/port]:]<database>
jdbc例子:
Class.forName("org.firebirdsql.jdbc.FBDriver");
Connection conn = DriverManager.getConnection("jdbc:firebirdsql:localhost/3050:/firebird/test.gdb", "sysdba", "masterkey");

tomcat发布方式:
#1 单应用使用firebird,将驱动拷贝到应用的WEB-INF/lib/里;
#2 多应用使用firebird(全局),将驱动拷贝到{$tomcat_install_dir}/common/lib/里;
至此你可以在程序里采用jdbc方式访问你的数据库了。但,多数时候,这样有点土,你当然可以用jndi方式,如何定义jndi和使用它,请g-tomcat吧。我这里给个结果:
<Resource name="jdbc/mydb" auth="Container"
 type="javax.sql.DataSource"
 driverClassName="org.firebirdsql.jdbc.FBDriver"
 url="jdbc:firebirdsql:localhost/3050:mydb" username="sysdba"
 password="masterkey" maxActive="20" maxIdle="10" maxWait="10000" />
spring里
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
 <property name="jndiName" value="java:comp/env/jdbc/mydb" />
</bean>

如果你一时冲动想切换到嵌入方式(既然用了webServer,还用嵌入方式fb,我也只能说是一时冲动了~~),那也是简单的,
#1 把URL换成这个格式:
jdbc:firebirdsql:embedded:<database>
#2 把jaybird21.dll拷贝到windows/system32或在jvm启动时加入-Djava.library.path=<jaybird21.dll所在目录>参数
#3 确保你的PATH环境变量里有你的fb嵌入式目录,因为jaybird21.dll其实是fbembed.dll的代理


最后说说字符编码:
假设你的数据库编码被定义成UTF-8,那么你在windows下要小心中文乱码问题,在linux下也可能会出现(多时候linux用utf-8编码),这里我就不罗嗦什么大道理了。
server在windows下,你假设你启动jvm按正常方式启动(没定义file.encoding参数),那么你的数据库URL应该是
jdbc:firebirdsql:[//host[:port]/]<database>?lc_ctype=gbk
但,由于fb目前对gbk支持不好,在你企图录入偏僻字时还是会出错,为了避免这个问题,我一般连jvm的编码也定义成utf-8(这样lc_ctype可以不加,也可以lc_ctype=utf-8。当然这样做你需要注意数

据录入时中文编码转换,因为windows用户的中文是gbk编码的,需要转到utf-8,这对java来说很容易,反之亦然,不清楚的g吧,这个问题超出本次讨论,当然这里也可能牵涉一个web常规中文乱码问题

,请g),这就没这个问题了,不过来了一个不大的问题,这样的软件不符合国标~~。

这篇关于java 连接 firebird的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/309266

相关文章

Spring boot整合dubbo+zookeeper的详细过程

《Springboot整合dubbo+zookeeper的详细过程》本文讲解SpringBoot整合Dubbo与Zookeeper实现API、Provider、Consumer模式,包含依赖配置、... 目录Spring boot整合dubbo+zookeeper1.创建父工程2.父工程引入依赖3.创建ap

C#连接SQL server数据库命令的基本步骤

《C#连接SQLserver数据库命令的基本步骤》文章讲解了连接SQLServer数据库的步骤,包括引入命名空间、构建连接字符串、使用SqlConnection和SqlCommand执行SQL操作,... 目录建议配合使用:如何下载和安装SQL server数据库-CSDN博客1. 引入必要的命名空间2.

SpringBoot结合Docker进行容器化处理指南

《SpringBoot结合Docker进行容器化处理指南》在当今快速发展的软件工程领域,SpringBoot和Docker已经成为现代Java开发者的必备工具,本文将深入讲解如何将一个SpringBo... 目录前言一、为什么选择 Spring Bootjavascript + docker1. 快速部署与

Spring Boot spring-boot-maven-plugin 参数配置详解(最新推荐)

《SpringBootspring-boot-maven-plugin参数配置详解(最新推荐)》文章介绍了SpringBootMaven插件的5个核心目标(repackage、run、start... 目录一 spring-boot-maven-plugin 插件的5个Goals二 应用场景1 重新打包应用

SpringBoot+EasyExcel实现自定义复杂样式导入导出

《SpringBoot+EasyExcel实现自定义复杂样式导入导出》这篇文章主要为大家详细介绍了SpringBoot如何结果EasyExcel实现自定义复杂样式导入导出功能,文中的示例代码讲解详细,... 目录安装处理自定义导出复杂场景1、列不固定,动态列2、动态下拉3、自定义锁定行/列,添加密码4、合并

Spring Boot集成Druid实现数据源管理与监控的详细步骤

《SpringBoot集成Druid实现数据源管理与监控的详细步骤》本文介绍如何在SpringBoot项目中集成Druid数据库连接池,包括环境搭建、Maven依赖配置、SpringBoot配置文件... 目录1. 引言1.1 环境准备1.2 Druid介绍2. 配置Druid连接池3. 查看Druid监控

Java中读取YAML文件配置信息常见问题及解决方法

《Java中读取YAML文件配置信息常见问题及解决方法》:本文主要介绍Java中读取YAML文件配置信息常见问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录1 使用Spring Boot的@ConfigurationProperties2. 使用@Valu

创建Java keystore文件的完整指南及详细步骤

《创建Javakeystore文件的完整指南及详细步骤》本文详解Java中keystore的创建与配置,涵盖私钥管理、自签名与CA证书生成、SSL/TLS应用,强调安全存储及验证机制,确保通信加密和... 目录1. 秘密键(私钥)的理解与管理私钥的定义与重要性私钥的管理策略私钥的生成与存储2. 证书的创建与

浅析Spring如何控制Bean的加载顺序

《浅析Spring如何控制Bean的加载顺序》在大多数情况下,我们不需要手动控制Bean的加载顺序,因为Spring的IoC容器足够智能,但在某些特殊场景下,这种隐式的依赖关系可能不存在,下面我们就来... 目录核心原则:依赖驱动加载手动控制 Bean 加载顺序的方法方法 1:使用@DependsOn(最直

SpringBoot中如何使用Assert进行断言校验

《SpringBoot中如何使用Assert进行断言校验》Java提供了内置的assert机制,而Spring框架也提供了更强大的Assert工具类来帮助开发者进行参数校验和状态检查,下... 目录前言一、Java 原生assert简介1.1 使用方式1.2 示例代码1.3 优缺点分析二、Spring Fr