仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 796|回复: 8
打印 上一主题 下一主题

[学习教程] 发布一篇经由过程Java静态创立ODBC数据源来会见DBF文件

[复制链接]
分手快乐 该用户已被删除
跳转到指定楼层
#
发表于 2015-1-18 11:15:12 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
最后我再次声明,我并没有说不看好java,实际上我对java很乐观的,毕竟她正在不断改进中,我相信她总有一天会和.net并驾齐驱的
经由过程Java静态创立ODBC数据源来会见DBF文件,必要用到registry,来修正注册表。
实在,次要是静态创立ODBC数据源,入手下手很复杂,能够手工设置一次数据源,固然也能够经由过程程序间接天生,成绩都不年夜。上面只说如何修正。
importcom.ice.jni.registry.RegStringValue;
importcom.ice.jni.registry.Registry;
importcom.ice.jni.registry.RegistryKey;
publicclassTestC{
 publicstaticvoidmain(String[]str){
  try{
  RegistryKeychild=Registry.HKEY_CURRENT_USER
.openSubKey("Software").openSubKey("ODBC").openSubKey("ODBC.INI").
   openSubKey("data_0930",RegistryKey.ACCESS_ALL);
  //操纵权限是经由过程RegistryKey来猎取的。
   Stringde="F:commony        estdata70901";
  //我的DBF数据的目次
  //个中,data_0930是我第一次设置的数据源的一个注册表的称号
   System.out.println(child.getStringValue("SourceDB"));
   child.setValue(newRegStringValue(child,"SourceDB",de));
   System.out.println(child.getFullName());
  }catch(Exceptione){
   e.printStackTrace();
  }
 }
}
然后就是经由过程,sun.jdbc.odbc.JdbcOdbcDriver来猎取数据,
importjava.sql.DriverManager;
importjava.sql.*;
publicclassTestOdbc{
 publicTestOdbc(){}
 publicstaticvoidmain(String[]args){
  java.sql.Connectionconn=null;
  java.sql.PreparedStatementpt=null;
  java.sql.ResultSetrs=null;
  try{
   Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  }
  catch(ClassNotFoundExceptionex1){
  }
  try{
   conn=DriverManager.getConnection("jdbc:odbc:data_0930","","");
   pt=conn.prepareStatement("select*fromtest_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(SQLExceptionex){}
 }
}
实在,文件名,是能够静态猎取的,一样平常能够经由过程java中的File类来猎取:
importjava.io.File;
publicclassTestD{
 publicstaticvoidmain(String[]args){
  Filefile=newFile("F:commony        estdata");
  File[]df=file.listFiles();
  for(intk=0;k<df.length;k++){
   if(df[k].isDirectory()){
    //由于文件夹中包括DBF文件,以是判别是文件夹,而不是文件
    System.out.println("===kkkk=="+k+"====="+df[k].getName());
   }
  }
 }
}
第一种就是如许,必要注重的是registry的利用,实在很复杂的,只需把DLL文件放到classpath下就能够了。
第二种实在更复杂,就是经由过程另外一个开元的类包jdbf.jar,利用办法也很复杂,网上有良多材料,能够查询。也就未几说了。

令人可喜的是java现在已经开源了,所以我想我上述的想法也许有一天会实现,因为java一直都是不断创新的语言,每次创新都会给我们惊喜,这也是我喜欢java的一个原因。
飘灵儿 该用户已被删除
8#
发表于 2015-3-19 18:14:48 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
兰色精灵 该用户已被删除
7#
发表于 2015-3-9 17:25:32 | 只看该作者
Java是一种计算机编程语言,拥有跨平台、面向对java
莫相离 该用户已被删除
6#
发表于 2015-3-8 18:17:04 | 只看该作者
至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。
若天明 该用户已被删除
5#
发表于 2015-2-26 22:18:47 | 只看该作者
Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
若相依 该用户已被删除
地板
发表于 2015-2-9 04:34:31 | 只看该作者
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
简单生活 该用户已被删除
板凳
发表于 2015-2-1 15:20:53 | 只看该作者
是一种将安全性(Security)列为第一优先考虑的语言
分手快乐 该用户已被删除
沙发
 楼主| 发表于 2015-1-24 13:18:17 | 只看该作者
是一种突破用户端机器环境和CPU
蒙在股里 该用户已被删除
楼主
发表于 2015-1-20 18:31:46 | 只看该作者
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-15 14:35

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表