Go4Expert (http://www.go4expert.com/)
-   Java (http://www.go4expert.com/forums/java/)
-   -   Storing Object into Database (http://www.go4expert.com/forums/storing-object-database-t2100/)

hemanthjava 2Dec2006 02:42

Storing Object into Database
I have a Person Object with attributes like name, age, sex etc which I wanna store in the sybase database. The column in which it is to be stored is of "text" datatype.

I have converted the object into a Byte Output Stream and stored the object as a Byte Array in to the database. I have done something like this..

ByteArrayOutputStream baos = new ByteArrayOutputStream();
ObjectOutputStream oout = new ObjectOutputStream(baos);
ps.setBytes(1, baos.toByteArray());

Now when I want to read the object from the database I did something like this..


byte[] buf = rs.getBytes(column);
if (buf != null) {
ObjectInputStream objectIn = new ObjectInputStream(
                new ByteArrayInputStream(buf));
                Object obj = objectIn.readObject();                //Contains the object
                PersonDetails p = (PersonDetails)obj;

I used rs.getBytes and do the following as shown above. Gives me an sql exception. I used getClob also. Still it gives me some sql exception. What I want is the object back. How do I get it back.

Basically My sybase column datatype is "text". Is there a better way to serialize the object and store in the databse. If there is one please let me know. Note that I cant change the type of column type (text) to any other type...

All times are GMT +5.5. The time now is 06:24.