JSUG - TU Wien Castor Project by Lukas Lang

1,236 views

Published on

visit www.jsug.at for more stuff

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,236
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

JSUG - TU Wien Castor Project by Lukas Lang

  1. 1. JDO Extensions for the XML Code Generator Open Source Student Project Lukas Lang (lukaslang@codehaus.org) Advanced Software Engineering Summer Term 2008 Vienna University of Technology
  2. 2. Castor quot;Castor is an Open Source data binding framework for Java.“ “It's the shortest path between Java objects, XML documents and relational tables.“ [1] [1] http://www.castor.org
  3. 3. Castor Java-to-XML Binding <?xml version=quot;1.0quot;?> <Person id=quot;47quot;> <Surname>Doe</Surname> <GivenName>John</GivenName> </Person> marshalling/unmarshalling
  4. 4. Castor Java-to-SQL Persistierung
  5. 5. Castor Who wants to write mapping files for heaps of POJOs?
  6. 6. Castor XML Source Generator generates POJOs <xsd:complexType name=quot;Personquot;> <xsd:sequence> <xsd:element name=quot;Surnamequot; type=quot;xsd:stringquot;/> <xsd:element name=quot;GivenNamequot; type=quot;xsd:stringquot;/> </xsd:sequence> </xsd:complexType> POJOs
  7. 7. JDO Extensions JDO Source Generator reads JDO annotations and generates mapping descriptors annotated XML schema
  8. 8. JDO Extensions JDO Source Generator <xsd:complexType name=quot;Personquot;> <xsd:annotation> <xsd:appinfo> <jdo:table name=quot;personquot; identity=quot;idquot; /> </xsd:appinfo> </xsd:annotation> ... </xsd:complexType>
  9. 9. JDO Extensions JDO Source Generator ... <xsd:sequence> <xsd:element name=quot;Idquot; type=quot;xsd:integerquot;/> <xsd:annotation> <xsd:appinfo> <jdo:column name=quot;idquot; type=quot;jdo:integerquot; /> <xsd:appinfo> </xsd:annotation> <xsd:element name=quot;Surnamequot; type=quot;xsd:stringquot;/> <xsd:annotation> <xsd:appinfo> <jdo:column name=quot;surnamequot; type=quot;jdo:stringquot; /> </xsd:appinfo> </xsd:annotation> <xsd:element name=quot;GivenNamequot; type=quot;xsd:stringquot;/> </xsd:sequence> </xsd:complexType>
  10. 10. JDO Extensions JDO Source Generator <jdo:table .../> <jdo:column .../> <jdo:one-to-one .../> <jdo:one-to-many .../>
  11. 11. Benefits Castor New feature! People involved! Simple persistence Mapping of relations Users Get rid of repetive tasks > Gain motivation ;-)
  12. 12. Benefits Students Mentored software project Expertise in open source projects Community Process and Mailing Lists Prototyping & Scrum Test Driven Development Keep participating!
  13. 13. Participate Join development mailing lists Write a patch ;-) Apache Cocoon http://cocoon.apache.org Castor http://www.castor.org GsoC 2009 (Google Summer of Code) Application deadline: April 7th! http://code.google.com/soc/ Thanks to flickr users: captainblackadder, kubina, refractedmoments & caius

×