java 读取 access数据库

2024-05-09 19:58
文章标签 java access 读取 数据库

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

java读取access数据库信息

    1、java读取access数据库不需要任何jar包,只需要.mdb文件,文件路径,数据库表名即可!

    2、加载数据库驱动,sql语句,源码如下:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import ocean.access.model.Zsjjb;

public class ZsjjbList {
 /**
  * 此方法为私有方法,filepath是文件的绝对路径,table是access数据库中要对取得表
  *
  * @param filepath
  * @param table
  * @return ResultSet
  * @throws Exception
  */
 private static List<Zsjjb> getResultSet(String filepath, String table)
   throws Exception {
  Connection conn = null;
  ResultSet rs = null;
  List<Zsjjb> list = new ArrayList<Zsjjb>();
  try {
   String url = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ="
     + filepath;
   Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
   conn = DriverManager.getConnection(url);
   Statement sta = conn.createStatement();
   rs = sta.executeQuery("select * from " + table);
   SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
   Date date;
   while (rs.next()) {
    Zsjjb zsjjb = new Zsjjb();
    zsjjb.setFzhm(rs.getString("fzhm"));
    list.add(zsjjb);
   }
   return list;
  } catch (Exception e) {
   e.printStackTrace();
   return null;
  } finally {
   rs.close();
   conn.close();
  }
 }

/**
  * 返回list对象,filepath是文件的绝对路径,table是access数据库中要对取得表
  * 返回list对象,list对象封装的也是list对象,又封装的是string对象
  */
 public static List<Zsjjb> getData(String filepath, String table)
   throws Exception {
  List<Zsjjb> list = new ArrayList<Zsjjb>();
  list = getResultSet(filepath, table);
  return list;
 }
}

我这里使用了一个bean类,其实access数据库的查询和我们常见的数据库没有什么区别,使用select语句,获取链接,加载驱动(注意access的驱动就是上面代码上的,不能改动),使用resultset读取数据,如果不知道列名了那就先获取列名,把值存放发到map中,再放到list中!

这篇关于java 读取 access数据库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Java集合的一些知识点和登录注册习题

java 集合中的一些知识点 集合:集合是存储对象数据的集合容器。 集合比数组的优势: 1. 集合可以存储任意类型的对象数据,数组只能存储同一种数据类型 的数据。 2. 集合的长度是会发生变化的,数组的长度是固定的。 ——-| Collection 单例集合的根接口。 ———-| List 如果是实现了List接口的集合类,具备的特点: 有序,可重复。 ———-| Set 如果是实现

java-return浅析

这个是我网上问问题有个大神解析的小小分享 转自:http://www.cnblogs.com/paomoopt/p/3746963.html 1、return语句的作用:a、返回一个值,这个值可以是任意类型。b、使程序返回到操作系统(即终止程序) 2、java中对于一个函数,不论有没有返回值类型,都可以带有return 语句。 但是区别在于,return 语句是否可以返回一个值(这取决与该

java封装中关于set()和get()的用法

转自:http://www.cnblogs.com/fly-sky-han/p/6564439.html 我们先来看看set和get这两个词的表面意思,set是设置的意思,而get是获取的意思,顾名思义,这两个方法是对数据进行设置和获取用的。而且,在类中使用set和get方法时,都是在set和get后面跟上一些特定的词来形成特定意思的方法名,比如setage()和getage(),表示设置年龄和

java基础语法难点(day01-day05)

学学高级语言,面向对象的语言,和c语言比起来,前面的语法还是有一定的相似度的,所以,在学习面向对象之前,简单的把java的一些常用的基础语法过一遍,相当于复习了。 有个隐形的类型转换,但是就是小的转到大的,可以。但是如果是int数据类型转到小一点的short去,不强制类型转换就会溢出报错。 注意+=这个扩展运算符是可以接受类型转换的,所以不会报错。 三元运算符中的三个数比较最大值: int

java设计模式之工厂模式--普通工厂方法模式(Factory Method)

1.普通工厂模式,就是建立一个工厂类,对实现了同一接口的一些类进行实例的创建。 2.先定义一个接口: package com.zhong.pattern.factorymethod;/*** 发送接口* @author admin**/public interface Sender {/*** 发送消息方法* @param msg*/void send(String msg);} 3

Java设计模式之代理模式2-动态代理(jdk实现)

这篇是接着上一篇继续介绍java设计模式之代理模式。下面讲解的是jdk实现动态代理。 1.)首先我们要声明一个动态代理类,实现InvocationHandler接口 package com.zhong.pattern.proxy;import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;/*** 演

java设计模式之代理模式1--静态代理

Java编程的目标是实现现实不能完成的,优化现实能够完成的,是一种虚拟技术。生活中的方方面面都可以虚拟到代码中。代理模式所讲的就是现实生活中的这么一个概念:助手。 代理模式的定义:给某一个对象提供一个代理,并由代理对象控制对原对象的引用。 1.)首先新建一个表演的接口 package com.zhong.pattern.proxy;/*** 表演接口* @author admin*

java原型(Prototype)设计模式

原型模式就是讲一个对象作为原型,使用clone()方法来创建新的实例。 public class Prototype implements Cloneable{private String name;public String getName() {return name;}public void setName(String name) {this.name = name;}@Overri

Java中23种设计模式之适配者模式

适配器模式的作用就是在原来的类上提供新功能。 主要可分为3种: 1.类适配:创建新类,继承源类,并实现新接口,例如:     class Adapter extends OldClass implements NewFunc{} 2.对象适配:创建新类持源类的实例,并实现新接口,例如:     class Adapter implements NewFunc { priva

java不依赖临时变量交换两个变量的值

java不依赖临时变量交换两个变量的值 1.简单易懂的实现方式     int a=1,b=2;     int temp = 0;     temp = a;     a = b;     b= temp; 2.算术算法 int a=1,b=2; a = a+b;// a = 1+2  b = a-b;// b = a-b --> b=3-2 -->1 a = a -b;/