Hi, Shall I commit that for you into the simplestore package?
I guess I should ;) ~Gerhard "Whose cruel idea was it for the word "lisp" to have an "s" in it?" >-----Original Message----- >From: Juozas Baliuka [mailto:[EMAIL PROTECTED]] >Sent: Monday, February 04, 2002 1:25 PM >To: Jakarta Commons Developers List >Subject: Re: [Simper] Re: Bean storage in database > > >Hi, >I have "bad karma" to commit something. I will send this example to list. >It is very trivial example for simplestore. It is possible to start some >persitence implementation form this example. Don't waste time to test it, it >will not work in most >of situations. But ideas can be useful. Ideas are from JDO, it is nothing >new, just example for simplestore. > >it is fragment from test, it works, but I know situations then it will not >work : > > public void testCreateInstance() { > try{ > Object oid; > TestPersistence testObject; > Transaction t = pm.getTransaction(); > t.begin(); > testObject = >(TestPersistence)pm.createInstance(TestPersistence.class); > testObject.setBoolVal(true); > testObject.setIntVal(777); > assertEquals(testObject.getIntVal(),777); > testObject.setStrVal("TEST"); > testObject.setDateVal(new java.util.Date()); > testObject.setFloatVal(3f); > t.commit(); > System.out.println("Begin Transaction"); > t.begin(); > oid = pm.getOID(testObject); > long time = System.currentTimeMillis(); > int i = 0; > TestPersistence testObject1 = null; > for(; i < 100; ++i ){ > testObject1 = (TestPersistence) >pm.findInstance(TestPersistence.class,oid); > } > System.out.println("Retrueved " + i + " Objects " + > System.currentTimeMillis() - time)/1000 + " s"); > > testObject1.setStrVal("TEST1"); > t.commit(); > assertEquals("retrieved by id ",testObject,testObject1); > assertEquals("int val >",testObject.getIntVal(),testObject1.getIntVal()); > > }catch(Exception e){ > e.printStackTrace(); > fail( e.getMessage() ); > } > } > > >----- Original Message ----- >From: "Fernandez Martinez, Alejandro" <[EMAIL PROTECTED]> >To: "'Jakarta Commons Developers List'" <[EMAIL PROTECTED]> >Sent: Monday, February 04, 2002 11:16 AM >Subject: RE: [Simper] Re: Bean storage in database > > >> Hi James! >> >> > -----Mensaje original----- >> > De: James Strachan [mailto:[EMAIL PROTECTED]] >> >> [...] >> >> > One other thing to keep in the back of your mind when you're >> > refactoring things. Once its in CVS somewhere - hopefully the >> > sandbox or >> > failing that sourceforge - I'd be quite interested in adding >> > support for >> > 'real' beans. >> >> Yes, I also think that coding beans is better than writing XML files. My >> original query was along these lines. >> >> If you remove a field from a bean and keep using it elsewhere, the >compiler >> will tell you; but if you delete a field from the config file and keep >using >> it, you get an exception at runtime. >> >> That has been my experience: it's better to have strongly typed attributes >> than an abstract database layer. >> >> Now, if we can have both, it would be great. >> >> Un saludo, >> >> Alex. >> >> > I think DynaBeans are perfect for queries and for when the >> > Java object model >> > is dictated by the database schema. Its also very common to >> > need to write a >> > web app for an existing database, where hand coding beans to >> > represent the >> > database is a wasted effort. Though it would be nice to >> > support the other >> > way around as well, that Java business objects are written >> > first and Simper >> > gets used to persist them and that the database schema comes >> > secondary. >> > >> > The Simper code is mostly based on DynaBeans and its pretty >> > easy to wrap a >> > DynaBean around a real bean so I'm hoping that mostly Simper >> > won't really >> > know if real or dyna beans are being used. To get the 'mark as dirty' >> > features in your SimperBean we could use BCEL or JDK1.3's >> > dynamic proxy >> > to generate wrappers that detect when bean setters are >> > called. The nice >> > thing about this would be we could >> > use Simper to persist any Java Bean, as well as DynaBeans. There's an >> > object-relational can of worms that this could open but >> > hopefully we'll be >> > able to keep it simple. >> > >> > BTW I keep wanting to type Simpler rather than Simper. The >> > project name >> > didn't start out as a typeo did it ;-) >> > >> > James >> > -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
