Mere XML i Java. Denne artikel beskriver brug af XML i Java udover parsning (som er beskrevet i artiklen "XML parsning i Java").

Størrelse: px
Starte visningen fra side:

Download "Mere XML i Java. Denne artikel beskriver brug af XML i Java udover parsning (som er beskrevet i artiklen "XML parsning i Java")."

Transkript

1 Denne guide er oprindeligt udgivet på Eksperten.dk Mere XML i Java Denne artikel beskriver brug af XML i Java udover parsning (som er beskrevet i artiklen "XML parsning i Java"). Den beskriver bl.a. udskrivning og ændring af XML. Den forudsætter kendskab til Java og XML samt lidt kendskab til XML parsning i Java. Skrevet den 15. Feb 2010 af arne_v I kategorien Programmering / Java [vigtigt: artikel er samme artikel som denne - der gik koks i det i forbindelse med 2 store nedbrud på Eksperten for mange år siden - først ville jeg ikke slette en af dem af hensyn til dem som havde "betalt" for artiklen og nu beholder jeg duplikaterne af hensyn til afgivne kommentarer] Historie: V1.0-03/04/ original V1.1-07/04/ understrege at teorien er beskrivet i den første artikel V1.2-25/07/ tilføje lidt flere forklaringer V1.3-12/12/ opdatere fra JDOM B8 til JDOM 1.0 (der er faktisk ændringer i JDOM interfacet) V1.4-20/08/ tilføje brug af XPath V1.5-26/12/ tilføje standard løsninger som har erstattet Xerces specifikke løsninger og tilføje links V1.6-14/02/ smårettelser Indledning For beskrivelse af W3C DOM og JDOM henvises til artiklen "XML parsning i Java". Der er hele teorien. Det forudsættes at teorien og parse teknikken er kendt. Her vil vi fokusere på brug af W3C DOM og JDOM til andet end parsning. SAX vil ikke blive omtalt da processingen af de indlæste data sker løbende i forbindelse med parsningen og er 100% applikations specifik. Eksemplerne vil bruge følgende fil: test.xml <?xml version='1.0' standalone='yes'?> <medlemmer> <medlem no="1"> <navn>niels Nielsen</navn> <adresse>nellikevej 19</adresse> </medlem>

2 <medlem no="2"> <navn>jens Jensen</navn> <adresse>jagtvej 17</adresse> </medlem> <medlem no="3"> <navn>ole Olsen</navn> <adresse>omfartsvejen 13</adresse> </medlem> <medlem no="4"/> </medlemmer> Udskrift W3C DOM træ Når man nu har lært at læse XML filer ind er det jo naturligt at ville kunne skrive dem ud igen. Der er forskellige måder at udskrive et W3C DOM træ på: - selv skrive noget kode - bruge noget Xerces specifik kode - bruge noget standard kode hvis ens JAXP version er tilstrækkelig ny - bruge XSLT Alle 3 metoder vil blive vist. Først gør det selv koden som består af en enkelt metode writexml som man kalder med en node. Metoden udskriver så start tag med attributter, kalder sig selv rekursivt for child elementer og udskriver slut tag. Når den kaldes med document root, så udskriver den hele DOM træet. WriteW3CDOMCustom.java import java.io.printstream; import javax.xml.parsers.documentbuilderfactory; import javax.xml.parsers.factoryconfigurationerror; import org.w3c.dom.document; import org.w3c.dom.namednodemap; import org.w3c.dom.node; import org.w3c.dom.nodelist; import org.xml.sax.saxexception; public class WriteW3CDOMCustom { public static void writexml(printstream ps, String ind, Node parent) { switch (parent.getnodetype()) { case Node.ELEMENT_NODE : ps.print(ind + "<" + parent.getnodename()); NamedNodeMap atts = parent.getattributes();

3 for (int i = 0; i < atts.getlength(); i++) { ps.print(" " + atts.item(i).getnodename() + "=\"" + atts.item(i).getnodevalue() + "\""); NodeList childs = parent.getchildnodes(); if (childs.getlength() == 0) { ps.println("/>"); else { ps.println(">"); for (int i = 0; i < childs.getlength(); i++) { writexml(ps, ind + " ", (Node) childs.item(i)); ps.println(ind + "<" + parent.getnodename() + "/>"); break; case Node.TEXT_NODE : if(!parent.getnodevalue().trim().equals("")) { ps.println(ind + parent.getnodevalue().trim()); break; default : // nothing return; DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); Document doc = db.parse("c:\\test.xml"); writexml(system.out, "", doc.getdocumentelement()); catch (FactoryConfigurationError e) { catch (ParserConfigurationException e) { catch (SAXException e) { catch (IOException e) { return; Den nok mest brugte XML Java parser nemlig Xerces kommer med en en klasse XMLSerializer til at udskrive DOM træer med. Vigtigt: brug en OutputFormat'er med indenting true - ellers ser output ikke godt ud. WriteW3CDOMXerces.java

4 import javax.xml.parsers.documentbuilderfactory; import javax.xml.parsers.factoryconfigurationerror; import org.w3c.dom.document; import org.xml.sax.saxexception; import org.apache.xml.serialize.outputformat; import org.apache.xml.serialize.xmlserializer; public class WriteW3CDOMXerces { DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); Document doc = db.parse("c:\\test.xml"); OutputFormat fmt = new OutputFormat(); fmt.setindenting(true); XMLSerializer ser = new XMLSerializer(System.out, fmt); ser.serialize(doc); catch (FactoryConfigurationError e) { catch (ParserConfigurationException e) { catch (SAXException e) { catch (IOException e) { return; Efter mange år uden en standard måde at udskrive DOM træer med kom der en metode. Bemærk: denne metode kræver en nyere JAXP (enten nyere Java eller en nyere Xerces), fordi den kræver DOM 3.0! WriteW3CDOMStandard.java import javax.xml.parsers.documentbuilderfactory; import javax.xml.parsers.factoryconfigurationerror;

5 import org.w3c.dom.document; import org.w3c.dom.domimplementation; import org.w3c.dom.bootstrap.domimplementationregistry; import org.w3c.dom.ls.domimplementationls; import org.w3c.dom.ls.lsoutput; import org.w3c.dom.ls.lsserializer; import org.xml.sax.saxexception; public class WriteW3CDOMStandard { DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); Document doc = db.parse("c:\\test.xml"); DOMImplementation impl = DOMImplementationRegistry.newInstance().getDOMImplementation("XML 3.0"); DOMImplementationLS feature = (DOMImplementationLS)impl.getFeature("LS","3.0"); LSSerializer ser = feature.createlsserializer(); LSOutput output = feature.createlsoutput(); output.setcharacterstream(system.console().writer()); ser.write(doc, output); catch (FactoryConfigurationError e) { catch (ParserConfigurationException e) { catch (SAXException e) { catch (IOException e) { catch (ClassNotFoundException e) { catch (InstantiationException e) { catch (IllegalAccessException e) { return; Mens man ventede på DOM 3.0 fandt snedige folk ud af at man kunne bruge XSLT med et tomt XSL til at udskrive med. WriteW3CDOMXSLT.java

6 import javax.xml.parsers.documentbuilderfactory; import javax.xml.parsers.factoryconfigurationerror; import javax.xml.transform.transformer; import javax.xml.transform.transformerconfigurationexception; import javax.xml.transform.transformerexception; import javax.xml.transform.transformerfactory; import javax.xml.transform.dom.domsource; import javax.xml.transform.stream.streamresult; import org.w3c.dom.document; import org.xml.sax.saxexception; public class WriteW3CDOMXSLT { DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); Document doc = db.parse("c:\\test.xml"); TransformerFactory tf = TransformerFactory.newInstance(); Transformer t = tf.newtransformer(); t.transform(new DOMSource(doc), new StreamResult(System.out)); catch (FactoryConfigurationError e) { catch (ParserConfigurationException e) { catch (SAXException e) { catch (IOException e) { catch (TransformerConfigurationException e) { catch (TransformerException e) { return; Udskrift JDOM træ JDOM har en indbygget måde at udskrive et træ på som iøvrigt ligner Xerces en del. WriteJDOM.java import java.io.fileinputstream; import java.io.filenotfoundexception;

7 import org.jdom.document; import org.jdom.jdomexception; import org.jdom.adapters.domadapter; import org.jdom.adapters.xercesdomadapter; import org.jdom.input.dombuilder; import org.jdom.output.format; import org.jdom.output.xmloutputter; public class WriteJDOM { DOMAdapter da = new XercesDOMAdapter(); org.w3c.dom.document w3cdoc = da.getdocument(new FileInputStream("C:\\test.xml"), false); DOMBuilder b = new DOMBuilder(); Document doc = b.build(w3cdoc); XMLOutputter fmt = new XMLOutputter(Format.getPrettyFormat()); System.out.println(fmt.outputString(doc)); catch (FileNotFoundException e) { catch (IOException e) { catch (JDOMException e) { catch (Exception e) { Ændring af og helt nyt W3C DOM træ En anden naturlig ting er at ville er at ændre et indlæst træ. Det er ret simpelt. Dokumentet har metoder til at oprette nye noder og alle noder har en metode til at tilføje de nyoprettede noder som børn. ChangeW3CDOM.java import javax.xml.parsers.documentbuilderfactory; import javax.xml.parsers.factoryconfigurationerror; import org.w3c.dom.document; import org.w3c.dom.element;

8 import org.w3c.dom.node; import org.w3c.dom.nodelist; import org.xml.sax.saxexception; import org.apache.xml.serialize.outputformat; import org.apache.xml.serialize.xmlserializer; public class ChangeW3CDOM { DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); Document doc = db.parse("c:\\test.xml"); // fjern tomme medlemmer NodeList elements = doc.getelementsbytagname("medlem"); for (int i = 0; i < elements.getlength(); i++) { Node element = (Element) elements.item(i); if(!element.haschildnodes()) { element.getparentnode().removechild(element); // tilføj nyt medlem Element navn = doc.createelement("navn"); navn.appendchild(doc.createtextnode("lars Larsen")); Element adresse = doc.createelement("adresse"); adresse.appendchild(doc.createtextnode("ledvej 14")); Element medlem = doc.createelement("medlem"); medlem.setattribute("no", "4"); medlem.appendchild(navn); medlem.appendchild(adresse); doc.getdocumentelement().appendchild(medlem); OutputFormat fmt = new OutputFormat(); fmt.setindenting(true); XMLSerializer ser = new XMLSerializer(System.out, fmt); ser.serialize(doc); catch (FactoryConfigurationError e) { catch (ParserConfigurationException e) { catch (SAXException e) { catch (IOException e) { return; Og at oprette et helt nyt træ er helt tilsvarende.

9 CreateW3CDOM.java import javax.xml.parsers.documentbuilderfactory; import javax.xml.parsers.factoryconfigurationerror; import org.w3c.dom.document; import org.w3c.dom.element; import org.apache.xml.serialize.outputformat; import org.apache.xml.serialize.xmlserializer; public class CreateW3CDOM { // lav nyt DOM træ DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); Document doc = db.newdocument(); // tilføj elementer til DOM træ Element one1 = doc.createelement("one"); one1.appendchild(doc.createtextnode("a")); Element one2 = doc.createelement("one"); one2.appendchild(doc.createtextnode("bb")); Element one3 = doc.createelement("one"); one3.appendchild(doc.createtextnode("ccc")); Element all = doc.createelement("all"); all.appendchild(one1); all.appendchild(one2); all.appendchild(one3); doc.appendchild(all); OutputFormat fmt = new OutputFormat(); fmt.setindenting(true); XMLSerializer ser = new XMLSerializer(System.out, fmt); ser.serialize(doc); catch (FactoryConfigurationError e) { catch (ParserConfigurationException e) { catch (IOException e) { return; Ændring af og helt nyt JDOM træ

10 Med hensyn til at ændre og oprette træer ligner JDOM faktisk meget W3C DOM. Man kan bare oprette node med en almindelig constructor og interfacet er en anelse mere naturligt. ChangeJDOM.java import java.io.fileinputstream; import java.io.filenotfoundexception; import java.util.list; import org.jdom.document; import org.jdom.element; import org.jdom.jdomexception; import org.jdom.adapters.domadapter; import org.jdom.adapters.xercesdomadapter; import org.jdom.input.dombuilder; import org.jdom.output.format; import org.jdom.output.xmloutputter; public class ChangeJDOM { DOMAdapter da = new XercesDOMAdapter(); org.w3c.dom.document w3cdoc = da.getdocument(new FileInputStream("C:\\test.xml"), false); DOMBuilder b = new DOMBuilder(); Document doc = b.build(w3cdoc); // fjern tomme medlemmer List list = doc.getrootelement().getchildren(); for (int i = 0; i < list.size(); i++) { Element elm = (Element) list.get(i); if(elm.getchildren().size() == 0) { elm.getparent().removecontent(elm); // tilføj nyt medlem Element navn = new Element("navn"); navn.settext("lars Larsen"); Element adresse = new Element("adresse"); adresse.settext("ledvej 14"); Element medlem = new Element("medlem"); medlem.addcontent(navn); medlem.addcontent(adresse); medlem.setattribute("no", "4"); doc.getrootelement().addcontent(medlem); XMLOutputter fmt = new XMLOutputter(Format.getPrettyFormat()); System.out.println(fmt.outputString(doc)); catch (FileNotFoundException e) { catch (IOException e) {

11 catch (JDOMException e) { catch (Exception e) { CreateJDOM.java import org.jdom.document; import org.jdom.element; import org.jdom.output.format; import org.jdom.output.xmloutputter; public class CreateJDOM { // lav nyt DOM træ Document doc = new Document(); // tilføj elementer til DOM træ Element one1 = new Element("one"); one1.settext("a"); Element one2 = new Element("one"); one2.settext("bb"); Element one3 = new Element("one"); one3.settext("ccc"); Element all = new Element("all"); all.addcontent(one1); all.addcontent(one2); all.addcontent(one3); doc.setrootelement(all); XMLOutputter fmt = new XMLOutputter(Format.getPrettyFormat()); System.out.println(fmt.outputString(doc)); Walker W3C DOM har en smart måde at søge et træ igennem efter en bestemt slags noder. Bemærk at denne feature er meget ny og ikke er understøttet i Java SDK 1.4 XML support. Man er nødt til at bruge 1.5 eller at hente f.eks. en nyere Xerces. ScanWitHWalker.java

12 import javax.xml.parsers.documentbuilderfactory; import javax.xml.parsers.factoryconfigurationerror; import org.w3c.dom.document; import org.w3c.dom.node; import org.w3c.dom.traversal.documenttraversal; import org.w3c.dom.traversal.nodefilter; import org.w3c.dom.traversal.treewalker; import org.xml.sax.saxexception; public class ScanWithWalker { DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); Document doc = db.parse("c:\\test.xml"); // walk alle elementer af typen navn TreeWalker walk = ((DocumentTraversal) doc).createtreewalker(doc.getdocumentelement(), NodeFilter.SHOW_ELEMENT, null, false); Node n; while ((n = walk.nextnode())!= null) { if (n.getnodename().equals("navn")) { System.out.println(n.getFirstChild().getNodeValue()); catch (FactoryConfigurationError e) { catch (ParserConfigurationException e) { catch (SAXException e) { catch (IOException e) { Vi laver en walker som: - starter i document root - finder alle elementer - ikke har et filter Og så tester vi bare om elementet er et name. Den funktionalitet kunne også være lagt ind i et filter. Men det synes jeg ikke var umagen værd her.

13 Man kan selvfølgelig nemt selv lave noget kode som løber alle elementer igennem (f.eks. rekursivt lige som i writexml metoden i første program). Men walkeren giver noget pænt og let læseligt kode. XPath Hvis man kun skal bruge nogle ganske bestemte noder kan man selecte dem med XPath som er et query sprog til XML. Jeg vil ikke gå i detaljer med hensyn til XPath syntax det kan man og det er der skrevet bøger om. Den ultra korte version er: xxxx - finder elementer med navn xxxx //xxxx/yyyy - finder elementer med navn yyyy under elementer med navn xxxx xxxx[yyyy='abc'] - finder elementer med navn xxxx som har et under element med navn yyyy og en tekstværdi 'abc' xxxx[@yyyy=123] - finder elementer med navn xxxx som har en attribut med navn yyyy og en talværdi 123 Man kan bruge XPath i både W3C DOM og JDOM. XPath er ikke understøttet i Java SDK 1.4 XML support. Man er nødt til at bruge 1.5 eller at hente f.eks. en nyere Xerces. For W3C DOM findes der både en Xerces specifik og en standard måde at gøre det på. SelectWithXPathW3CDOMXerces.java: import javax.xml.parsers.documentbuilderfactory; import javax.xml.transform.transformerexception; import org.w3c.dom.document; import org.w3c.dom.element; import org.w3c.dom.nodelist; import org.xml.sax.saxexception; import org.apache.xpath.xpathapi; public class SelectWithXPathW3CDOM { DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); Document doc = db.parse("c:\\test.xml"); // find element hvor no=2 Element res1 =

14 (Element)XPathAPI.selectSingleNode(doc.getDocumentElement(), Element name1 = (Element)res1.getElementsByTagName("navn").item(0); System.out.println(name1.getFirstChild().getNodeValue()); // find alle elementer hvor no >= 2 NodeList res2 = XPathAPI.selectNodeList(doc.getDocumentElement(), "/medlemmer/medlem[@no>=2]"); for(int i = 0; i < res2.getlength(); i++) { Element name2 = (Element)((Element)res2.item(i)).getElementsByTagName("navn").item(0); if(name2!= null) { System.out.println(name2.getFirstChild().getNodeValue()); catch (ParserConfigurationException e) { catch (SAXException e) { catch (IOException e) { catch (TransformerException e) { SelectWithXPathW3CDOMStandard.java: import javax.xml.parsers.documentbuilderfactory; import javax.xml.transform.transformerexception; import javax.xml.xpath.xpath; import javax.xml.xpath.xpathconstants; import javax.xml.xpath.xpathexpressionexception; import javax.xml.xpath.xpathfactory; import org.w3c.dom.document; import org.w3c.dom.element; import org.w3c.dom.nodelist; import org.xml.sax.saxexception; import org.apache.xpath.xpathapi; public class SelectWithXPathW3CDOMStandard {

15 DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); Document doc = db.parse("c:\\test.xml"); XPath xpath = XPathFactory.newInstance().newXPath(); // find element hvor no=2 Element res1 = (Element)xpath.evaluate("/medlemmer/medlem[@no=2]", doc.getdocumentelement(), XPathConstants.NODE); Element name1 = (Element)res1.getElementsByTagName("navn").item(0); System.out.println(name1.getFirstChild().getNodeValue()); // find alle elementer hvor no >= 2 NodeList res2 = (NodeList)xpath.evaluate("/medlemmer/medlem[@no>=2]", doc.getdocumentelement(), XPathConstants.NODESET); for(int i = 0; i < res2.getlength(); i++) { Element name2 = (Element)((Element)res2.item(i)).getElementsByTagName("navn").item(0); if(name2!= null) { System.out.println(name2.getFirstChild().getNodeValue()); catch (ParserConfigurationException e) { catch (SAXException e) { catch (IOException e) { catch (XPathExpressionException e) { SelectWithXPathJDOM.java: import java.io.fileinputstream; import java.io.filenotfoundexception; import java.util.list; import org.jdom.document; import org.jdom.element; import org.jdom.jdomexception; import org.jdom.adapters.domadapter; import org.jdom.adapters.xercesdomadapter; import org.jdom.input.dombuilder; import org.jdom.xpath.xpath; public class SelectWithXPathJDOM {

16 DOMAdapter da = new XercesDOMAdapter(); org.w3c.dom.document w3cdoc = da.getdocument(new FileInputStream("C:\\test.xml"), false); DOMBuilder b = new DOMBuilder(); Document doc = b.build(w3cdoc); // find element hvor no=2 Element res1 = (Element)XPath.selectSingleNode(doc, "/medlemmer/medlem[@no=2]"); System.out.println(res1.getChild("navn").getText()); // find alle elementer hvor no >= 2 List res2 = XPath.selectNodes(doc, "/medlemmer/medlem[@no>=2]"); for (int i = 0; i < res2.size(); i++) { Element name2 = ((Element)res2.get(i)).getChild("navn"); if(name2!= null) { System.out.println(name2.getText()); catch (FileNotFoundException e) { catch (IOException e) { catch (JDOMException e) { Videre Artiklen "Nye Java XML API'er" beskriver: - StAX - JAXB - XStream Kommentar af simonvalter d. 05. Apr Viser igen nogen gode eksempler som ikke er større end at man aligevel kan sætte sig ind i dem og ændre dem til eget formål. jeg har brugt både denne og artiklen "XML parsning i Java" flere gange, og har fundet det meget lærerigt med et korrekt eksempel. Kommentar af mr.handstand d. 07. Apr Jeg ønskede en artikel - ikke 5 stk. copy-paste koder. Jeg forventer mere dybde i en artikel, end blot en sætning med ordene, "her kommer chocket". Kommentar af avj d. 16. Jun Kommentar af blackadder d. 03. Apr

17 Det er mere en samling Java funktioner end en egentlig artikel. Der er meget kode, men ikke så meget forklaring. Kommentar af mikkelbm d. 15. Dec Alt i alt en god artikel. Og til kritikerne af artiklen vil jeg bare sige, at for mit vedkommende siger gode eksempler mange gange meget mere end en sides sludder for en sladder!!!

XML parsning i Java. Denne artikel beskriver hvordan man parser XML i Java. Den beskriver W3C DOM, SAX og JDOM.

XML parsning i Java. Denne artikel beskriver hvordan man parser XML i Java. Den beskriver W3C DOM, SAX og JDOM. Denne guide er oprindeligt udgivet på Eksperten.dk XML parsning i Java Denne artikel beskriver hvordan man parser XML i Java. Den beskriver W3C DOM, SAX og JDOM. Den forudsætter kendskab til Java og XML.

Læs mere

Denne artikel gennemgår kort nogle mulighederne for brug af XML i ASP. Det sker ved brug af eksempler. Eksemplerne vil være i VBS.

Denne artikel gennemgår kort nogle mulighederne for brug af XML i ASP. Det sker ved brug af eksempler. Eksemplerne vil være i VBS. Denne guide er oprindeligt udgivet på Eksperten.dk XML i ASP Denne artikel gennemgår kort nogle mulighederne for brug af XML i ASP. Det sker ved brug af eksempler. Eksemplerne vil være i VBS. Den forudsætter

Læs mere

Nye Java XML API'er

Nye Java XML API'er Denne guide er oprindeligt udgivet på Eksperten.dk Nye Java XML API'er Denne artikel beskriver nye XML features i Java 1.6 - StAX og JAXB, samt XStreams. Den forudsætter kendskab til Java og brug

Læs mere

Den forudsætter kendskab til XML og C# men ikke til brug af XML i C#.

Den forudsætter kendskab til XML og C# men ikke til brug af XML i C#. Denne guide er oprindeligt udgivet på Eksperten.dk Brug af XML i C# Denne artikel vil vise lidt om hvordan man kan bruge XML i C#. Den forudsætter kendskab til XML og C# men ikke til brug af XML i C#.

Læs mere

Den forudsætter kendskab til XML og VB.NET men ikke til brug af XML i VB.NET.

Den forudsætter kendskab til XML og VB.NET men ikke til brug af XML i VB.NET. Denne guide er oprindeligt udgivet på Eksperten.dk Brug af XML i VB.NET Denne artikel vil vise lidt om hvordan man kan bruge XML i VB.NET. Den forudsætter kendskab til XML og VB.NET men ikke til brug af

Læs mere

XML i PHP. Denne artikel gennemgår kort nogle af de mange muligheder for brug af XML i PHP. Det sker ved brug af eksempler. Eksemplerne kræver PHP 5.

XML i PHP. Denne artikel gennemgår kort nogle af de mange muligheder for brug af XML i PHP. Det sker ved brug af eksempler. Eksemplerne kræver PHP 5. Denne guide er oprindeligt udgivet på Eksperten.dk XML i PHP Denne artikel gennemgår kort nogle af de mange muligheder for brug af XML i PHP. Det sker ved brug af eksempler. Eksemplerne kræver PHP 5. Den

Læs mere

Send fra Java. Denne artikel fortæller hvad man skal bruge og hvordan man skal kode for at sende fra Java.

Send  fra Java. Denne artikel fortæller hvad man skal bruge og hvordan man skal kode for at sende  fra Java. Denne guide er oprindeligt udgivet på Eksperten.dk Send email fra Java Denne artikel fortæller hvad man skal bruge og hvordan man skal kode for at sende email fra Java. Simple eksempler ikke noget vildt

Læs mere

//Udskriver System.out.println("Hej " + ditfornavn + " " + ditefternavn + "."); System.out.println("Du er " + dinalder + " aar gammel!

//Udskriver System.out.println(Hej  + ditfornavn +   + ditefternavn + .); System.out.println(Du er  + dinalder +  aar gammel! Denne guide er oprindeligt udgivet på Eksperten.dk Brugerinput i Java Denne her artikel gennemgår diverse ting ved brug af brugerinput i Java. Den starter med det simple og fortæller derefter skridt for

Læs mere

RMI introduktion. Denne artikel beskriver Java RMI (Remtote Method Invocation).

RMI introduktion. Denne artikel beskriver Java RMI (Remtote Method Invocation). Denne guide er oprindeligt udgivet på Eksperten.dk RMI introduktion Denne artikel beskriver Java RMI (Remtote Method Invocation). Den beskriver teorien bag RMI, viser et simpelt kode eksempel og forklarer

Læs mere

Den forudsætter kendskab til C++ og lidt kendskab til SQL og MySQL C API.

Den forudsætter kendskab til C++ og lidt kendskab til SQL og MySQL C API. Denne guide er oprindeligt udgivet på Eksperten.dk Brug af MySQL i C++ Denne artikel bygger ovenpå artiklen "MySQL C API" og forklarer hvordan man kan programmere mere objekt orienteret. Den forudsætter

Læs mere

Anvendelse af metoder - Programmering

Anvendelse af metoder - Programmering Denne guide er oprindeligt udgivet på Eksperten.dk Anvendelse af metoder - Programmering En forhåbentlig rigtig god forklaring på hvad metoder er og hvordan de anvendes. Lidt om private og public, retur

Læs mere

Singleton pattern i Java

Singleton pattern i Java Denne guide er oprindeligt udgivet på Eksperten.dk Singleton pattern i Java Denne artikel beskriver Singleton pattern og implementation i Java. Den forudsætter kendskab til Java men ikke til Singleton.

Læs mere

RMI avanceret. Denne artikel beskriver nogle mere avancerede features i RMI. Den gør det muligt at lave mere realistiske applikationer.

RMI avanceret. Denne artikel beskriver nogle mere avancerede features i RMI. Den gør det muligt at lave mere realistiske applikationer. Denne guide er oprindeligt udgivet på Eksperten.dk RMI avanceret Denne artikel beskriver nogle mere avancerede features i RMI. Den gør det muligt at lave mere realistiske applikationer. Den forudsætter

Læs mere

Kontrol-strukturer i PHP

Kontrol-strukturer i PHP Denne guide er oprindeligt udgivet på Eksperten.dk Kontrol-strukturer i PHP Denne artikel gennemgår kontrolstrukturer i PHP. 'if', 'switch', 'while' og 'for' bliver gennemgået. Den forudsætter lidt grundlæggende

Læs mere

Prepared Statements. Denne artikel beskriver hvorfor prepared statements er gode. Den forudsætter lidt kendskab til Java og JDBC.

Prepared Statements. Denne artikel beskriver hvorfor prepared statements er gode. Den forudsætter lidt kendskab til Java og JDBC. Denne guide er oprindeligt udgivet på Eksperten.dk Prepared Statements Denne artikel beskriver hvorfor prepared statements er gode. Den forudsætter lidt kendskab til Java og JDBC. Skrevet den 18. Feb 2010

Læs mere

Logging i Java. Den forudsætter kendskab til Java og noget generel udviklings erfaring. Denne guide er oprindeligt udgivet på Eksperten.

Logging i Java. Den forudsætter kendskab til Java og noget generel udviklings erfaring. Denne guide er oprindeligt udgivet på Eksperten. Denne guide er oprindeligt udgivet på Eksperten.dk Logging i Java Denne artikel beskriver baggrunden for logging frameworks og viser hvordan man bruger 2 af de mest almindelige: Apache Log4J og J2SE/Java

Læs mere

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 3

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 3 DM502 Forelæsning 3 Indlæsning fra tastatur Udskrift til skærm Repetition Beregning af middelværdi Gentagelse med stop-betingelse (while) Heltalsdivision Division med nul Type-casting ( (double) ) Betinget

Læs mere

Parameters. Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til C# og ADO.NET.

Parameters. Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til C# og ADO.NET. Denne guide er oprindeligt udgivet på Eksperten.dk Parameters Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til C# og ADO.NET. Der findes en tilsvarende artikel med

Læs mere

Singleton pattern i C#

Singleton pattern i C# Denne guide er oprindeligt udgivet på Eksperten.dk Singleton pattern i C# Denne artikel beskriver Singleton pattern og implementation i C#. Den forudsætter kendskab til C# men ikke til Singleton. Der er

Læs mere

Threads i Java. Denne artikel giver en introduktion til threads i Java. Den beskriver hvad tråde er og forklarer hvordan de bruges i Java

Threads i Java. Denne artikel giver en introduktion til threads i Java. Den beskriver hvad tråde er og forklarer hvordan de bruges i Java Denne guide er oprindeligt udgivet på Eksperten.dk Threads i Java Denne artikel giver en introduktion til threads i Java. Den beskriver hvad tråde er og forklarer hvordan de bruges i Java Den forudsætter

Læs mere

Test med JUnit 3. Denne artikel introducerer JUnit 3. Den forklarer ideen med JUnit. Og den viser hvordan man konkret bruger det.

Test med JUnit 3. Denne artikel introducerer JUnit 3. Den forklarer ideen med JUnit. Og den viser hvordan man konkret bruger det. Denne guide er oprindeligt udgivet på Eksperten.dk Test med JUnit 3 Denne artikel introducerer JUnit 3. Den forklarer ideen med JUnit. Og den viser hvordan man konkret bruger det. Den forudsætter kendskab

Læs mere

SAX Simple API for XML.

SAX Simple API for XML. SAX Simple API for XML. En API (Application Programming Interface) et bibliotek eller et sæt af funktioner eller metoder. SAX er et sådant bibliotek af abstrakte metoder som f. eks. startdocument() eller

Læs mere

Tilfældige tal. Denne artikel introducerer generering af tilfældige tal og viser lidt om hvad man kan og ikke mindst hvad man ikke bør bruge.

Tilfældige tal. Denne artikel introducerer generering af tilfældige tal og viser lidt om hvad man kan og ikke mindst hvad man ikke bør bruge. Denne guide er oprindeligt udgivet på Eksperten.dk Tilfældige tal Denne artikel introducerer generering af tilfældige tal og viser lidt om hvad man kan og ikke mindst hvad man ikke bør bruge. Den forudsætter

Læs mere

Forskellige Java versioner

Forskellige Java versioner Denne guide er oprindeligt udgivet på Eksperten.dk Forskellige Java versioner Denne artikel beskriver lidt om de forskellige Java versioner. Den forklarer J2SE/J2ME/J2EE, plugin/jre/sdk og Sun Java/Microsoft

Læs mere

Webserverprogrammering

Webserverprogrammering Webserverprogrammering WSP fortsat - dag 11 Behandling af XML (StAX) Syndikering og RSS med XML JAXB - XML Java-objekter Projekthjælp Dette materiale er under Åben Dokumentlicens, se http://www.sslug.dk/linuxbog/licens.html

Læs mere

Skrevet den 18. Feb 2010 af arne_v I kategorien Programmering / Visual Basic.NET

Skrevet den 18. Feb 2010 af arne_v I kategorien Programmering / Visual Basic.NET Denne guide er oprindeligt udgivet på Eksperten.dk Parameters Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til VB.NET og ADO.NET. Der findes en tilsvarende artikel

Læs mere

Listen over reserverede ord er meget lang, men de væsentligste vil jeg beskrive her i denne artikel:

Listen over reserverede ord er meget lang, men de væsentligste vil jeg beskrive her i denne artikel: Denne guide er oprindeligt udgivet på Eksperten.dk SQL og ASP En artikel omkring simpel SQL og hvordan disse opbygges, udformes og udføres, sådan at man kan få et brugbart resultat i ASP. Dette ligefra

Læs mere

At klippe en streng over på det mest hensigtsmæssige sted

At klippe en streng over på det mest hensigtsmæssige sted Denne guide er oprindeligt udgivet på Eksperten.dk At klippe en streng over på det mest hensigtsmæssige sted Formålet med denne artikel er at kaste lidt lys over, hvordan man klipper en streng over på

Læs mere

Introduktion til SQL queries

Introduktion til SQL queries Denne guide er oprindeligt udgivet på Eksperten.dk Introduktion til SQL queries Denne artikel beskriver nogle forskellige muligheder i SQL queries. Eksemplerne skulle gerne være standard SQL og virke i

Læs mere

Introduktion til funktioner, moduler og scopes i Python

Introduktion til funktioner, moduler og scopes i Python Denne guide er oprindeligt udgivet på Eksperten.dk Introduktion til funktioner, moduler og scopes i Python Denne artikel er fortsættelsen af "I gang med Python", som blevet publiceret her på sitet for

Læs mere

Bits, bit operationer, integers og floating point

Bits, bit operationer, integers og floating point Denne guide er oprindeligt udgivet på Eksperten.dk Bits, bit operationer, integers og floating point Denne artikel beskriver hvordan data gemmes som bits og hvordan man kan manipulere med bits. Den forudsætter

Læs mere

Java Klasse nedarvninger

Java Klasse nedarvninger Denne guide er oprindeligt udgivet på Eksperten.dk Java Klasse nedarvninger Et let lille overblik i hvordan klasse nedarvning virker i java Skrevet den 07. dec 2011 af mochners I kategorien Programmering

Læs mere

Introduction til.net remoting i C#

Introduction til.net remoting i C# Denne guide er oprindeligt udgivet på Eksperten.dk Introduction til.net remoting i C# Denne artikel beskriver teorien bag.net remoting og viser nogle simple kode eksempler i C#. Den forudsætter kendskab

Læs mere

Databaseadgang fra Java

Databaseadgang fra Java Databaseadgang fra Java Grundlæggende Programmering med Projekt Peter Sestoft Fredag 2007-11-23 Relationsdatabasesystemer Der er mange databaseservere Microsoft Access del af Microsoft Office MySQL god,

Læs mere

Data load og udtræk. 2. iteration: implmentation (test af backend) PHP mysql. Loade og parse XML (SimpleXML, Xpath) Filhåndtering i PHP JSON

Data load og udtræk. 2. iteration: implmentation (test af backend) PHP mysql. Loade og parse XML (SimpleXML, Xpath) Filhåndtering i PHP JSON Data load og udtræk 2. iteration: implmentation (test af backend) 1 PHP mysql Loade og parse XML (SimpleXML, Xpath) Filhåndtering i PHP JSON 2 Data udtræk PHP mysql: Processen 1. Forbind til MySQL server

Læs mere

Hvad er Objekter - Programmering

Hvad er Objekter - Programmering Denne guide er oprindeligt udgivet på Eksperten.dk Hvad er Objekter - Programmering En rigtig god gennemgang af hvad objekter er! Hvordan de oprettes og anvendes! Det er helt klart til nybegyndere, som

Læs mere

Undtagelseshåndtering i C#

Undtagelseshåndtering i C# Denne guide er oprindeligt udgivet på Eksperten.dk Undtagelseshåndtering i C# I modsætning til C++ kan man i C# ikke skrive et program uden undtagelseshåndtering, så derfor har jeg skrevet denne guide

Læs mere

applikation----x----odbc driver manager----foobar ODBC driver----foobar database

applikation----x----odbc driver manager----foobar ODBC driver----foobar database Denne guide er oprindeligt udgivet på Eksperten.dk ODBC i C/C++ Denne artikel beskriver hvordan man bruger ODBC i C/C++. Der er beskrivelse af build med forskellige compilere. Den forudsætter lidt kendskab

Læs mere

Som sagt kræves der helst lidt viden om OOP hvis man virkelig vil lærer noget, og ikke bare lave copypaste

Som sagt kræves der helst lidt viden om OOP hvis man virkelig vil lærer noget, og ikke bare lave copypaste Denne guide er oprindeligt udgivet på Eksperten.dk Indkøbsvogn i PHP I denne artikel vil jeg prøve at lave en indkøbskurv som let kan udvides, og som ikke er svær at forstå. Det er bedst med viden om OOP(klasser),

Læs mere

DOM Document Object Model:

DOM Document Object Model: DOM Document Object Model:...1 Typer af noder i træet:...3 Reading:...4 document:...6 element:...7 attributter:...12 parser fejl:...13 XPATH:...13 Stier i XPATH:...13 Prædikater:...14 Operatorer:...15

Læs mere

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 2

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 2 DM502 Forelæsning 2 Repetition Kompilere og køre Java program javac HelloWorld.java java HeloWorld.java Debugge Java program javac -g HelloWorld.java jswat Det basale Java program public class HelloWorld

Læs mere

Om binære søgetræer i Java

Om binære søgetræer i Java Om binære søgetræer i Java Mads Rosendahl 7. november 2002 Resumé En fix måde at gemme data på er i en træstruktur. Måden er nyttig hvis man får noget data ind og man gerne vil have at det gemt i en sorteret

Læs mere

Nye features i Java 1.7/7.0

Nye features i Java 1.7/7.0 Denne guide er oprindeligt udgivet på Eksperten.dk Nye features i Java 1.7/7.0 Denne artikel beskriver nye features i Java 1.7/7.0, som blev releaset 28. juli 2011. Den forudsætter et vist kendskab til

Læs mere

SWC eksamens-spørgsmål. Oversigt

SWC eksamens-spørgsmål. Oversigt SWC eksamens-spørgsmål Oversigt #1 Typer og variable #2 Aritmetik og logik #3 Klasser (definition, objekter) #4 Klasser (metoder) #5 Klasser (nedarvning, polymorfi) #6 Conditional statements #7 Repetition

Læs mere

Afsending af s vha. ASP

Afsending af  s vha. ASP Denne guide er oprindeligt udgivet på Eksperten.dk Afsending af emails vha. ASP Det kan ofte være praktisk at afsende emails fra sin hjemmeside. Denne artikel tager udgangspunkt i komponenten JMail fra

Læs mere

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 4

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 4 DM502 Forelæsning 4 Flere kontrolstrukturer for-løkke switch-case Metoder Indhold Arrays og sortering af arrays String-funktioner for-løkke Ofte har man brug for at udføre det samme kode, for en sekvens

Læs mere

DM01 DM01. 4. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk. D12, Elias 13/5-2003. Side 1 af 7

DM01 DM01. 4. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk. D12, Elias 13/5-2003. Side 1 af 7 DM01 DM01 4. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk D12, Elias 13/5-2003 Side 1 af 7 DM01 Indholdsfortegnelse: BILAG:...2 1 FORMÅL:...3 2 KLASSER:...4 2.1 DNA2:...4 2.1.1 METODER:...4

Læs mere

Database design for begyndere

Database design for begyndere Denne guide er oprindeligt udgivet på Eksperten.dk Database design for begyndere Denne artikel beskriver hvordan man kommer fra ide til database design. Den stopper inden normal former. Den forudsætter

Læs mere

Arkitektur for begyndere

Arkitektur for begyndere Denne guide er oprindeligt udgivet på Eksperten.dk Arkitektur for begyndere Denne artikel beskriver forskellige basale n-tier arkitekturer. Som man bør kende og have valgt inden man går igang med at udvikle

Læs mere

Offset til terminalskærm i Java

Offset til terminalskærm i Java Denne guide er oprindeligt udgivet på Eksperten.dk Offset til terminalskærm i Java Ikke en atikkel - men en Classe til java der gør det nemt at skrive ud på avancerede måder når man kun opererer i dosvindue.

Læs mere

Introduction til.net remoting i VB.NET

Introduction til.net remoting i VB.NET Denne guide er oprindeligt udgivet på Eksperten.dk Introduction til.net remoting i VB.NET Denne artikel beskriver teorien bag.net remoting og viser nogle simple kode eksempler i VB.NET. Den forudsætter

Læs mere

I profil-feltet kan imastra-kunder vælge om upload skal ske ligesom filerne var indsendt til mailboksen eller

I profil-feltet kan imastra-kunder vælge om upload skal ske ligesom filerne var indsendt til mailboksen eller Upload fil Upload fil skal ses som et alternativ til at indsende tællefiler vedhæftet til mails Upload fil kan være en hurtigere og mere håndholdt måde at få data ind i Mastra på. Man starter med via Gennemse

Læs mere

Indledning. Hvorfor det forholder sig sådan har jeg en masse idéer om, men det bliver for meget at komme ind på her. God fornøjelse med læsningen.

Indledning. Hvorfor det forholder sig sådan har jeg en masse idéer om, men det bliver for meget at komme ind på her. God fornøjelse med læsningen. Indledning...2 Variabler...13 Eksempel: 1...13 Eksempel 2:...13 Eksempel 3:...15 Eksempel 4:...16 Metoder...17 Metode (intet ind og intet ud)...17 Metode (tekst ind)...18 Metode (tekst ind og tekst ud)...19

Læs mere

Google App Engine. Google App Engine som platform. Claus Myglegaard Vagner og Jacob von Eyben

Google App Engine. Google App Engine som platform. Claus Myglegaard Vagner og Jacob von Eyben GoogleAppEngine GoogleAppEnginesomplatform ClausMyglegaardVagnerogJacobvonEyben Abstract CloudcomputingerenteknologidervinderfremidengenerelleITinfrastruktur. SocialemediersåsomLinkedIn,TwitterogFacebookharøgetbehovetfor

Læs mere

Skriftlig eksamen i Datalogi

Skriftlig eksamen i Datalogi Roskilde Universitetscenter side 1 af 11 sider Skriftlig eksamen i Datalogi Modul 1 Sommer 2000 Opgavesættet består af 6 opgaver, der ved bedømmelsen tillægges følgende vægte: Opgave 1 10% Opgave 2 10%

Læs mere

MySQL C API. Denne artikel beskriver hvordan man bruger MySQL C API. Der er beskrivelse af build med forskellige compilere.

MySQL C API. Denne artikel beskriver hvordan man bruger MySQL C API. Der er beskrivelse af build med forskellige compilere. Denne guide er oprindeligt udgivet på Eksperten.dk MySQL C API Denne artikel beskriver hvordan man bruger MySQL C API. Der er beskrivelse af build med forskellige compilere. Den forudsætter lidt kendskab

Læs mere

Tredjepart webservices

Tredjepart webservices Tredjepart webservices 4. juni 2015 USS Dok. Klik her for at angive tekst. 1/12 Indholdsfortegnelse Introduktion... 3 Miljøer... 3 Adgang... 3 API kald... 4 GET: /authorizations... 4 Input 4 Output 4 Output

Læs mere

Test med NUnit. Denne artikel introducerer NUnit. Den forklarer ideen med NUnit. Og den viser hvordan man konkret bruger det.

Test med NUnit. Denne artikel introducerer NUnit. Den forklarer ideen med NUnit. Og den viser hvordan man konkret bruger det. Denne guide er oprindeligt udgivet på Eksperten.dk Test med NUnit Denne artikel introducerer NUnit. Den forklarer ideen med NUnit. Og den viser hvordan man konkret bruger det. Den forudsætter kendskab

Læs mere

Arrays i PHP. Denne guide er oprindeligt udgivet på Eksperten.dk. Skrevet den 04. Feb 2009 af taskmgr I kategorien Programmering / PHP

Arrays i PHP. Denne guide er oprindeligt udgivet på Eksperten.dk. Skrevet den 04. Feb 2009 af taskmgr I kategorien Programmering / PHP Denne guide er oprindeligt udgivet på Eksperten.dk Arrays i PHP De fleste som har skrevet omfattende scripts, er før eller siden stødt på problemet med at de bliver vanskelige at overskue hvis man bruger

Læs mere

SigmaT.

SigmaT. Java + Groovy Disposition Om SigmaT Eksempel på indlejring af Groovy Overvågning af PEM Ønske om dynamisk loaded Java uden at fifle med classloaderen Groovy til hjælp Opsamling hvad jeg ikke har fortalt

Læs mere

SESSION med PHP. En let begynderguide som kan føre dig ind i en verden af muligheder. Denne guide er oprindeligt udgivet på Eksperten.

SESSION med PHP. En let begynderguide som kan føre dig ind i en verden af muligheder. Denne guide er oprindeligt udgivet på Eksperten. Denne guide er oprindeligt udgivet på Eksperten.dk SESSION med PHP En let begynderguide som kan føre dig ind i en verden af muligheder Skrevet den 03. Feb 2009 af mccookie I kategorien Programmering /

Læs mere

Namespaces. Vi kan kvalificere elementer på denne måde: <?xml version="1.0" encoding="iso-8859-1"?>

Namespaces. Vi kan kvalificere elementer på denne måde: <?xml version=1.0 encoding=iso-8859-1?> Namespaces...1 Default namespace:...6 Præfiks:...7 To slags navne i XML:...11 Standard namespaces:...14 RDF Resource Description Framework:...18 Attributter:...19 DTD skemaer og namespaces:...21 Namespaces.

Læs mere

Introduktion til ant. Denne artikel beskriver Apache ant, som er et værktøj til at builde Java applikationer med.

Introduktion til ant. Denne artikel beskriver Apache ant, som er et værktøj til at builde Java applikationer med. Denne guide er oprindeligt udgivet på Eksperten.dk Introduktion til ant Denne artikel beskriver Apache ant, som er et værktøj til at builde Java applikationer med. Den beskriver nogle af de mest brugte

Læs mere

Test af It-komponent

Test af It-komponent Test af It-komponent I programmeringssproget Java Programmet Login service Elev: Mads Funch Klasse 2.4 Mat, It, Programmering Skole: Roskilde Tekniske Gymnasium HTX Underviser: Karl Dato: 31-08-2016 Side

Læs mere

Database programmerings tips

Database programmerings tips Denne guide er oprindeligt udgivet på Eksperten.dk Database programmerings tips Denne artikel vil introducere nogle problem stillinger med flere samtidige brugere, som man skal tænke på, når man udvikler

Læs mere

Geografisk lokalisering i JSP

Geografisk lokalisering i JSP Denne guide er oprindeligt udgivet på Eksperten.dk Geografisk lokalisering i JSP Denne artikel forklarer lidt om hvorfor og hvordan man laver geografisk lokalisering og viser noget kode. Der er andre artikler

Læs mere

Civilingeniøreksamen 49104 12. januar 2001. Skriftelig prøve den 12. januar 2001 Kursusnummer 49104

Civilingeniøreksamen 49104 12. januar 2001. Skriftelig prøve den 12. januar 2001 Kursusnummer 49104 Skriftelig prøve den 12. januar 2001 Kursusnummer 49104 Kursusnavn: Programmering. Tilladte hjælpemidler: Alle skriftlige hjælpemidler Opgavesættet består af fire opgaver, der har følgende vægtning: Opgave

Læs mere

I denne artikel vil du ved hjælp af arrays kunne afrunde et decimaltal til et helt tal.

I denne artikel vil du ved hjælp af arrays kunne afrunde et decimaltal til et helt tal. Denne guide er oprindeligt udgivet på Eksperten.dk Afrund til helt tal I denne artikel vil du ved hjælp af arrays kunne afrunde et decimaltal til et helt tal. Skrevet den 03. Feb 2009 af tjomsen I kategorien

Læs mere

Koden i denne guide vil kun virke i Flash MX 2003 og MX ikke ældre versioner!

Koden i denne guide vil kun virke i Flash MX 2003 og MX ikke ældre versioner! Denne guide er oprindeligt udgivet på Eksperten.dk Slideshow - Guide Denne guide gennemgår grundigt og forklarende hvordan man i Flash laver et slideshow med simpel fade-effekt med billeder hentet dynamisk.

Læs mere

Virkefeltsregler i Java

Virkefeltsregler i Java Virkefeltsregler i Java int i; int k; Sequence s; int j; What s in a name? Brian spillede blændende i søndags! Skolen ligger i Viby Ring til Kirsten og sig at... Et navn fortolkes i en kontekst og konteksten

Læs mere

Løsning af møntproblemet

Løsning af møntproblemet Løsning af møntproblemet Keld Helsgaun RUC, oktober 1999 Antag at tilstandene i problemet (stillingerne) er repræsenteret ved objekter af klassen State. Vi kan da finde en kortest mulig løsning af problemet

Læs mere

Forelæsning Uge 2 Mandag

Forelæsning Uge 2 Mandag Forelæsning Uge 2 Mandag Sætninger Simple sætninger (assignment, interne og eksterne metodekald) Sammensatte sætninger (blok, selektion, gentagelse) Udtryk og operatorer Java syntax og style guide Afleveringsopgave:

Læs mere

Derfor vil jeg bygge dette eksempel på een table hvor der kan tilkyttes personer til ALLE noder og der kan tilføjes et vilkårligt antal niveauer

Derfor vil jeg bygge dette eksempel på een table hvor der kan tilkyttes personer til ALLE noder og der kan tilføjes et vilkårligt antal niveauer Denne guide er oprindeligt udgivet på Eksperten.dk TreeView i Access II Jeg vil i denne anden udgave af treeview føljetonen begynde på et mere brugbart eksempel med et TreeView. Vi laver en ny database

Læs mere

SAX Simple API for XML.

SAX Simple API for XML. SAX Simple API for XML....1 Funktioner:...2 Skrive XML dokumenter med SAX writer:...4 SAX metoder i Visual Basic:...5 error handler:...6 En content handler:...7 At validere et XML dokument med SAX:...13

Læs mere

Indhold. Senest opdateret:03. september 2013. Side 1 af 8

Indhold. Senest opdateret:03. september 2013. Side 1 af 8 Indhold Introduktion... 2 Scenarier hvor API et kan benyttes... 2 Scenarie 1 Integration til lagerhotel... 2 Scenarie 2 Integration til økonomi system... 2 API Modeller... 2 Webshop2 API Model v1... 3

Læs mere

Geografisk lokalisering i ASP.NET

Geografisk lokalisering i ASP.NET Denne guide er oprindeligt udgivet på Eksperten.dk Geografisk lokalisering i ASP.NET Denne artikel forklarer lidt om hvorfor og hvordan man laver geografisk lokalisering og viser noget kode. Der er andre

Læs mere

Kursusarbejde 3 Grundlæggende Programmering

Kursusarbejde 3 Grundlæggende Programmering Kursusarbejde 3 Grundlæggende Programmering Arne Jørgensen, 300473-2919 klasse dm032-1a 21. november 2003 Indhold 1. Kode 2 1.1. forestillinger.h............................................. 2 1.2. forestillinger.cc.............................................

Læs mere

Martin Olsen. DM507 Projekt Del I. 19. marts 2012 FOTO: Colourbox

Martin Olsen. DM507 Projekt Del I. 19. marts 2012 FOTO: Colourbox Martin Olsen DM0 Projekt 0 Del I. marts 0 FOTO: Colourbox Indhold Indledning... Opgave... Opgave... Opgave... Opgave... Opgave... Opgave... Opgave... Kildekode til SimpleInv.java... Kildekode til MergeSort.java...

Læs mere

I denne artikel vil jeg gennemgå hvordan en side for RSS "Live Bogmærke" kan se ud.

I denne artikel vil jeg gennemgå hvordan en side for RSS Live Bogmærke kan se ud. Denne guide er oprindeligt udgivet på Eksperten.dk RSS "Live Bogmærke" I denne artikel vil jeg gennemgå hvordan en side for RSS "Live Bogmærke" kan se ud. Skrevet den 10. Feb 2009 af madsass I kategorien

Læs mere

A Profile for Safety Critical Java

A Profile for Safety Critical Java A Profile for Safety Critical Java Martin Schoeberl Hans Søndergaard Bent Thomsen Anders P. Ravn Præsenteret af: Henrik Kragh-Hansen November 8, 2007 Forfatterne Martin Schoeberl Udvikler af JOP processoren

Læs mere

Ratingsystem i PHP og MySQL

Ratingsystem i PHP og MySQL Denne guide er oprindeligt udgivet på Eksperten.dk Ratingsystem i PHP og MySQL Lær at lave et system til at vise rating/bedømmelse på artikler og nyheder. Skrevet den 03. Feb 2009 af virtual1ty I kategorien

Læs mere

Opgaven fortsat. Opfølgning på Opgave 2 og Use Cases. Opgaven. Trin 1: Væsentlige begreber. Resultatliste: 100 bryst, herrer

Opgaven fortsat. Opfølgning på Opgave 2 og Use Cases. Opgaven. Trin 1: Væsentlige begreber. Resultatliste: 100 bryst, herrer Opfølgning på Opgave 2 og Use Cases originally by Michael R. Hansen modified/extended by Anne E. Haxthausen Informatics and Mathematical Modelling Technical University of Denmark Opgaven fortsat Efter

Læs mere

Find største element, sæt det på sidste plads. Grundidé i hobsortering. er er

Find største element, sæt det på sidste plads. Grundidé i hobsortering. er er Programming 1999 KVL Side 19-2 Tidsforbruget, dvs asymptotisk proportionalt med Sorting af element: Tidsforbrug de mindste element, sortet øvrige element 0 Løkkeinvariant for udvalgssorting osv Find tredjemindste

Læs mere

Indhold. Senest opdateret : 30. juli 2010. Side 1 af 5

Indhold. Senest opdateret : 30. juli 2010. Side 1 af 5 Indhold Introduktion... 2 Scenarier hvor API et kan benyttes... 2 Scenarie 1 Integration til lagerhotel... 2 Scenarie 2 Integration til økonomi system... 2 Webshop2 API Model... 3 Brugen af API et... 4

Læs mere

Skriftlig eksamen i Datalogi

Skriftlig eksamen i Datalogi Roskilde Universitetscenter Skriftlig eksamen i Datalogi Modul 1 Vinter 1998/99 Opgavesættet består af 5 opgaver, der ved bedømmelsen tillægges følgende vægte: Opgave 1 16% Opgave 2 12% Opgave 3 10% Opgave

Læs mere

Database for udviklere. Jan Lund Madsen PBS10107

Database for udviklere. Jan Lund Madsen PBS10107 Database for udviklere Jan Lund Madsen PBS10107 Indhold LINQ... 3 LINQ to SQL og Arkitektur... 3 O/R designere... 5 LINQ Den store introduktion med.net 3.5 er uden tvivl LINQ(udtales link): Language-INtegrated

Læs mere

Delphi og Databaser for begyndere

Delphi og Databaser for begyndere Denne guide er oprindeligt udgivet på Eksperten.dk Delphi og Databaser for begyndere Denne artikel handler om hvordan man udnytter noget af det bedste i Delphi: Dets gode muligheder for integrering med

Læs mere

Import af rekursivt (parent-child) hierarki i Palo

Import af rekursivt (parent-child) hierarki i Palo Import af rekursivt (parent-child) hierarki i Palo Dette dokument beskriver hvordan et simpelt rekursivt (parent-child) hierarki kan importeres ind i Palo på forskellige måder via SQL og samtidig bibeholde

Læs mere

DANMARKS TEKNISKE UNIVERSITET

DANMARKS TEKNISKE UNIVERSITET DANMARKS TEKNISKE UNIVERSITET Skriftlig prøve, 14. december 2018, 4 timer Side 1 af 18 Kursus navn: 02101 Indledende Programmering Kursus : 02101 Tilladte hjælpemidler: Ikke-digitale skriftlige hjælpemidler

Læs mere

Java web applikationer med Tomcat

Java web applikationer med Tomcat Denne guide er oprindeligt udgivet på Eksperten.dk Java web applikationer med Tomcat Denne artikel beskriver hvordan man kan konfigurere container managed security og en database connection pool i Tomcat.

Læs mere

I mit script tager jeg højde for det problem ved, at gemme et unikt tal mellem 0-9 på 6 cifre og derved vil de så blive vist som 2 online.

I mit script tager jeg højde for det problem ved, at gemme et unikt tal mellem 0-9 på 6 cifre og derved vil de så blive vist som 2 online. Denne guide er oprindeligt udgivet på Eksperten.dk Hvem er online? Online script, som tager højde for at der kan være flere personer, som har den samme IP-adresse. Scriptet viser hvor lang tid brugeren

Læs mere

DM01 DM01. 3. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk. D12, Elias 18/3-2003. Side 1 af 11

DM01 DM01. 3. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk. D12, Elias 18/3-2003. Side 1 af 11 DM01 DM01 3. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk D12, Elias 18/3-2003 Side 1 af 11 DM01 Indholdsfortegnelse: BILAG:...2 1 FORMÅL:...3 2 KLASSER:...4 2.1 DILEMMA:...4 2.1.1 METODER:...4

Læs mere

Programmering I Java/C#

Programmering I Java/C# Programmering I Java/C# Dit første projekt Datatekniker Intro to C# C# (C Sharp) Et enkelt, moderne, generelt anvendeligt, objektorienteret programmeringssprog Udviklet af Microsoft, ledet af danskeren

Læs mere

Vejledende løsninger

Vejledende løsninger Roskilde Universitetscenter side 1 af 8 sider Vejledende løsninger Opgave 1 Spørgsmål 1.1 a = b - a; b = b - a; a = b + a; Opgaven har flere løsninger. En anden løsning er: a = b + a; b = a - b; a = a

Læs mere

Delphi - CrackMe og Keygen

Delphi - CrackMe og Keygen Denne guide er oprindeligt udgivet på Eksperten.dk Delphi - CrackMe og Keygen Dette er min første artikel! :) Men jeg synes nu den er blevet meget god! :D Jeg giver et et eksempel på hvordan man kan lave

Læs mere

Forelæsning 17, tirsdag 2. november 1999 Søgning efter en given værdi i en tabel. Programmering 1999

Forelæsning 17, tirsdag 2. november 1999 Søgning efter en given værdi i en tabel. Programmering 1999 sammenligninger, hvor Programmering 1999 Forelæsning 17, tirsdag 2 november 1999 Søgning efter en given værdi i en tabel Lineær søgning og binær søgning Effektivitet: maskinuafhængig vurdering af køretid

Læs mere

PHP Pagination. Denne guide er oprindeligt udgivet på Eksperten.dk. Skrevet den 01. May 2011 af dab93 I kategorien Programmering / Andre

PHP Pagination. Denne guide er oprindeligt udgivet på Eksperten.dk. Skrevet den 01. May 2011 af dab93 I kategorien Programmering / Andre Denne guide er oprindeligt udgivet på Eksperten.dk PHP Pagination I denne guide lærer du om at lave et pagination system med programmerings sproget PHP og MySQL database. Et pagination system er en "side-skiftende"

Læs mere

Spring Schema Extension eller Spring Domain Specific Languages

Spring Schema Extension eller Spring Domain Specific Languages Spring Schema Extension eller Spring Domain Specific Languages Forfatter: Jeppe Cramon Cramon Consulting (http://www.cramon.dk) Dato: 23/7-2005 Efter at have arbejdet med Spring i lang tid, har jeg lagt

Læs mere

Dynamisk PHP design OPDATERET

Dynamisk PHP design OPDATERET Denne guide er oprindeligt udgivet på Eksperten.dk Dynamisk PHP design OPDATERET I har måske undret jer over "http://bla.dk/?side=kontakt", her beskriver jeg hvordan, og hvorfor Skrevet den 03. Feb 2009

Læs mere

Serialization i Java

Serialization i Java Serialization i Java Tutorial lavet af Jákup W. Hansen TSU 2006 1.semester 06.novemter 2006 Hvad er Serialization? I vores tekstbog Objects First with Java bliver denne del af Java ikke gennemgået. Men

Læs mere