is het ook mogelijk om van een willekeurig object xml code te maken en visa versa zonder dat je dat zelf moet proggen?
JavaBeans in 1.4 kan je serializeren naar XML. Zie java.beans.XMLEncoder en java.beans.XMLDecoder:
http://java.sun.com/j2se/1.4/docs/api/java/beans/XMLEncoder.html
Hier nog een artikel daarover:
http://java.sun.com/products/jfc/tsc/articles/persistence3
Verder kan je ook gebruik maken van JAXB die uit een DTD klasses genereerst die automagisch een XML file die voldoet aan deze DTD inlezen. Ik gebruik dit zelf op sommige plekken en het werkt wel aardig. Voor prettige klassen heb je echter wel behoorlijk wat beperkingen in je DTD opbouw.
http://java.sun.com/j2se/1.4/docs/api/java/beans/XMLEncoder.html
Hier nog een artikel daarover:
http://java.sun.com/products/jfc/tsc/articles/persistence3
Verder kan je ook gebruik maken van JAXB die uit een DTD klasses genereerst die automagisch een XML file die voldoet aan deze DTD inlezen. Ik gebruik dit zelf op sommige plekken en het werkt wel aardig. Voor prettige klassen heb je echter wel behoorlijk wat beperkingen in je DTD opbouw.
Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment
Verwijderd
Mja... Dat is voor elk object natuurlijk anders.. Als je een String naar XML converteert is het natuurlijk anders dan als je een Hashtable naar XML converteert. Dus wat bedoel je hier eigenlijk mee ?? En wat wil je ermee ?? Als je puur Objecten van de ene app naar de andere wilt zenden over bv. TCP/IP , kijk dan eens naar ObjectOutputStream (te vinden in java.io) suc6
Owh ja: linkje voor JAXB: http://java.sun.com/xml/ en dan even doorklikken.
Ik heb trouwens zitten denken dat het wel leuk zou zijn om Java klassen in te lezen via een getransformeerde XML file: transformeer een willekeurige XML file naar Java Beans XML formaat met behulp van XSL en lees hem daarna eenvoudig in met XMLDecoder. Andersom kan je Java Beans XML file transformeren naar een leuker formaat als je het wegschrijft.
Dat lijkt mij wel een leuke toepassing omdat het Java Beans formaat toch niet echt iets is wat je graag voor andere zaken dan Java Beans gebruikt.
JAXB is wat dat betreft een stuk fraaier.
Ik heb trouwens zitten denken dat het wel leuk zou zijn om Java klassen in te lezen via een getransformeerde XML file: transformeer een willekeurige XML file naar Java Beans XML formaat met behulp van XSL en lees hem daarna eenvoudig in met XMLDecoder. Andersom kan je Java Beans XML file transformeren naar een leuker formaat als je het wegschrijft.
Dat lijkt mij wel een leuke toepassing omdat het Java Beans formaat toch niet echt iets is wat je graag voor andere zaken dan Java Beans gebruikt.
JAXB is wat dat betreft een stuk fraaier.
Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment
Met behulp van de meta-informatie van Java Beans via reflectie is het juist mogelijk om dit heel generiek op te lossenMisterJava: Dat is voor elk object natuurlijk anders..
Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment
Verwijderd
Ow, je wilt alleen maar een overzicht van methoden en variabelen ?? Ja, dan kan het idd wel.
Nee, gewoon een volledig object serializeren zodat het verzonden op opgeslagen kan worden. Ook de waarden worden opgeslagen van de properties. Kijk maar eens in dat docje wat ik hierboven link.MisterJava: Ow, je wilt alleen maar een overzicht van methoden en variabelen ?? Ja, dan kan het idd wel.
Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment
Het gaat niet zozeer om objecten door te geven, maar om ze te kunnen bewaren. En in een xml document kun je wel editen (is misschien nodig) en in een geserialized object niet.Op woensdag 24 oktober 2001 17:20 schreef MisterJava het volgende:
Mja... Dat is voor elk object natuurlijk anders.. Als je een String naar XML converteert is het natuurlijk anders dan als je een Hashtable naar XML converteert. Dus wat bedoel je hier eigenlijk mee ?? En wat wil je ermee ?? Als je puur Objecten van de ene app naar de andere wilt zenden over bv. TCP/IP , kijk dan eens naar ObjectOutputStream (te vinden in java.io) suc6
Precies.Op woensdag 24 oktober 2001 17:28 schreef mbravenboer het volgende:
[..]
Nee, gewoon een volledig object serializeren zodat het verzonden op opgeslagen kan worden. Ook de waarden worden opgeslagen van de properties. Kijk maar eens in dat docje wat ik hierboven link.
Pagina: 1