http://www.verejava.com/?id=16994748096921
Package Com.database;import Java.io.bytearrayinputstream;import Java.io.bytearrayoutputstream;import Java.io.datainputstream;import Java.io.dataoutputstream;import Java.io.ioexception;import Java.util.Iterator; public class testdatabase{public static void Testadd () {try {Databasestore ds=databasest Ore.opendatabase ("test.db"); Bytearrayoutputstream baos=new Bytearrayoutputstream (); DataOutputStream dos=new DataOutputStream (BAOs); Dos.writeint (30); Dos.writeboolean (TRUE); Dos.writedouble (100.5); Dos.writeutf ("Li June"); Ds.addrecord (Baos.tobytearray ()); } catch (IOException e) {e.printstacktrace (); }} public static void Testupdate () {try {Databasestore DS=DATABASESTORE.O Pendatabase ("test.db"); Bytearrayoutputstream baos=new Bytearrayoutputstream (); DataOutputStream dos=new DataOutputStream (BAOs); Dos.writeint (30); Dos.writeboolean (TRUE); Dos.writedouble (200.5); Dos.writeutf ("Zhang Shan"); Ds.setrecord (2, Baos.tobytearray ()); } catch (IOException e) {e.printstacktrace (); }} public static void Testdelete () {Databasestore ds=databasestore.opendatabase ("test.db"); Ds.deleterecord (3); } public static void Testget () {Databasestore ds=databasestore.opendatabase ("test.db"); Iterator<record> iter=ds.getrecords (); try {while (Iter.hasnext ()) {Record record=iter.next (); Bytearrayinputstream bais=new Bytearrayinputstream (Record.getdata ()); DataInputStream dis=new DataInputStream (Bais); System.out.println (Record.getid () + "," +dis.readint () + "," +dis.readboolean () + "," +diS.readdouble () + "," +dis.readutf ()); }} catch (IOException e) {e.printstacktrace (); }} public static void Main (string[] args) {testdelete (); Testget (); }}package Com.database;import Java.io.serializable;public class Record implements serializable{private int id; Private byte[] data; public Record (int ID, byte[] data) {super (); This.id = ID; This.data = data; } public int getId () {return id; } public void setId (int id) {this.id = ID; } public byte[] GetData () {return data; } public void SetData (byte[] data) {this.data = data; }}package com.database;import Java.io.file;import java.io.fileinputstream;import java.io.FileNotFoundException;imp ORT Java.io.fileoutputstream;import Java.io.ioexception;import Java.io.objectinputstream;import Java.io.objectoutputstream;import Java.io.serializable;importJava.util.arraylist;import Java.util.iterator;import Java.util.list;public class Databasestore implements serializable{private static String DatabasePath; private static Databasestore Ds=null; private int id;//Auto-growth ID private list<record> recordlist; Private Databasestore () {recordlist=new arraylist<record> (); } public static Databasestore OpenDatabase (String databaseName) {databasepath=system.getproperty ("USER.D IR ") +"/"+databasename; File File=new file (DatabasePath); if (!file.exists ()) {ds=new databasestore (); WriteObject (); } ds=readobject (); return DS; } public boolean AddRecord (byte[] data) {ds.id++; Ds.recordList.add (New Record (ds.id, data)); return WriteObject (); } public boolean Setrecord (int id,byte[] data) {for (int i=0;i<ds.recordlist.size (); i++) { Record Record=ds.recoRdlist.get (i); if (Record.getid () ==id) {record.setdata (data); return WriteObject (); }} return false; } public iterator<record> GetRecords () {return ds.recordList.iterator (); } public boolean deleterecord (int id) {for (int i=0;i<ds.recordlist.size (); i++) {R Ecord Record=ds.recordlist.get (i); if (Record.getid () ==id) {ds.recordList.remove (i); return WriteObject (); }} return false; } public static Boolean WriteObject () {ObjectOutputStream oos=null; try {oos=new ObjectOutputStream (new FileOutputStream (New File (DatabasePath))); Oos.writeobject (DS); Oos.flush (); return true; } catch (FileNotFoundException e) {e.printstacktrace (); } catch (IOException e) {E.printstacktrace (); } finally {try {oos.close (); } catch (IOException e) {e.printstacktrace (); }} return false; } public static Databasestore ReadObject () {ObjectInputStream ois=null; try {ois=new ObjectInputStream (new FileInputStream (New File (DatabasePath))); Ds= (Databasestore) ois.readobject (); return DS; } catch (FileNotFoundException e) {e.printstacktrace (); } catch (IOException e) {e.printstacktrace (); } catch (ClassNotFoundException e) {e.printstacktrace (); } finally {try {ois.close (); } catch (IOException e) {e.printstacktrace (); }} return null; }}
http://www.verejava.com/?id=16994748096921
Implementation database of Java IO stream