
使用Java动态创建ODBC数据源
发布时间:2007-10-05 15:40:51 来源: 网友评论 0 条
通过Java动态创建ODBC数据源来访问DBF文件,需要用到registry,来修改注册表。
其实,主要是动态创建ODBC数据源,开始很简单,可以手工设置一次数据源,当然也可以通过程序直接生成,问题都不大。下面只说怎样修改。
然后就是通过,sun.jdbc.odbc.JdbcOdbcDriver来获取数据,
其实真的很简单。
其实,文件名,是可以动态获取的,一般可以通过java中的File类来获取:
第一种就是这样,需要注意的是registry的使用,其实很简单的,只要把DLL文件放到classpath下就可以了。
第二种其实更简单,就是通过另一个开元的类包jdbf.jar,使用方法也很简单,网上有很多资料,可以查询。也就不多说了。
其实,主要是动态创建ODBC数据源,开始很简单,可以手工设置一次数据源,当然也可以通过程序直接生成,问题都不大。下面只说怎样修改。
| import com.ice.jni.registry.RegStringValue; import com.ice.jni.registry.Registry; import com.ice.jni.registry.RegistryKey; public class TestC { public static void main(String[] str) { try { RegistryKey child = Registry.HKEY_CURRENT_USER .openSubKey("Software").openSubKey("ODBC").openSubKey("ODBC.INI"). openSubKey("data_0930",RegistryKey.ACCESS_ALL);//操作权限是通过RegistryKey来获取的。 String de = "F:\\commony\\test\\data\\070901"; //我的DBF数据的目录 //其中,data_0930是我第一次设置的数据源的一个注册表的名称 System.out.println(child.getStringValue("SourceDB")); child.setValue(new RegStringValue(child,"SourceDB",de)); System.out.println(child.getFullName()); } catch (Exception e) { e.printStackTrace(); } } } |
然后就是通过,sun.jdbc.odbc.JdbcOdbcDriver来获取数据,
| import java.sql.DriverManager; import java.sql.*; public class TestOdbc { public TestOdbc() {} public static void main(String[] args) { java.sql.Connection conn = null; java.sql.PreparedStatement pt = null; java.sql.ResultSet rs = null; try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); } catch (ClassNotFoundException ex1) { } try { conn = DriverManager.getConnection("jdbc:odbc:data_0930", "", ""); pt = conn.prepareStatement(" select * from test_table"); rs = pt.executeQuery(); while(rs.next()){ System.out.println("==="+rs.getString(1)); System.out.println("==="+rs.getString(2)); System.out.println("==="+rs.getString(3)); System.out.println("==="+rs.getString(4)); System.out.println("==="+rs.getString(5)); } } catch (SQLException ex) {} } } |
其实真的很简单。
其实,文件名,是可以动态获取的,一般可以通过java中的File类来获取:
| import java.io.File; public class TestD { public static void main(String[] args){ File file = new File("F:\\commony\\test\\data"); File[] df = file.listFiles(); for(int k =0;k<df.length;k++){ if(df[k].isDirectory()){ //因为文件夹中包含DBF文件,所以判断是文件夹,而不是文件 System.out.println("===kkkk=="+k+"====="+df[k].getName()); } } } } |
第一种就是这样,需要注意的是registry的使用,其实很简单的,只要把DLL文件放到classpath下就可以了。
第二种其实更简单,就是通过另一个开元的类包jdbf.jar,使用方法也很简单,网上有很多资料,可以查询。也就不多说了。
全站资源
- 微软官方入门教程19:轻松掌握Vista系统的快
- 微软2008大冲击,预借Vista SP1力促Vista市
- 在收件箱中获得 Windows Vista 的最新更新
- 微软官方Vista入门教程全集19篇(Vista学院
- Windows Vista 的成功将势不可挡
- 快快抛弃Vista,拥抱XP SP3!你觉得呢?
- 浅谈Vista系统关闭虚拟内存与使用内存盘加速
- 嘿嘿,按下键盘上面的三个键,马上让你的Vi
- Windows Vista的盗版率只有Windows XP的一半
- 3DMark和PCMark Vantage新版将只支持Vista系
阅读排行
- Java连接SQL Server 2000
- Java文件操作详解
- Java控件设计入门
- Java操作Excel电子表格
- Java: JNI完全手册
- Java命令行简介
- 开发J2EE应用应遵循的几点原则
- Servlet与Javabean配置
- Java规则引擎与其API应用详解
- CLASSPATH详解
最新技术文档
- 中断Java ME手机上的屏幕保护程序
- 使用Java动态创建ODBC数据源
- Java 程序初始化过程详解
- 使用Java进行Web开发的随想
- 理解Java Swing中的Accelerator Key
- 用Java实现多线程服务器程序
- Java企业应用系统框架的比较与选择
- Java虚拟机的研究与实现
- Java系统中内存泄漏测试方法的研究
- 解析Java类和对象的初始化过程
专题教程
- 大话G游 专题:手机病毒揭密
- ARP攻击防范与解决方案 路由故障处理手册
- Picasa中文版_Picasa教程 专题:清除流氓软件
- Firefox专题 seo搜索引擎优化专区
- 重装Windows必知的事情 装机之必备软件大行动
病毒专杀栏
