Info-books. Toegepaste Informatica. Objectgeoriënteerd Programmeren en Webapplicaties. Java voor het internet: Persistentie en Threads.

Maat: px
Weergave met pagina beginnen:

Download "Info-books. Toegepaste Informatica. Objectgeoriënteerd Programmeren en Webapplicaties. Java voor het internet: Persistentie en Threads."

Transcriptie

1 Info-books HO40e Toegepaste Informatica Objectgeoriënteerd Programmeren en Webapplicaties Deel 40e: Java voor het internet: Persistentie en Threads K. Behiels - J. Gils

2 Hoofdstuk 2 Andere vormen van Persistentie 2.1 XML Hoe werk je met XML? XML (extensible Markup Language) is een universele taal om gegevens te beschrijven. Om XML-documenten te lezen zijn er vele libraries beschikbaar. Om zoveel mogelijk uitwisselbaar te zijn moet XML flexibel zijn. Daardoor worden enkele problemen van serialization opgelost. In XML kunnen de opgeslagen gegevens extern aangepast worden en kan in bepaalde gevallen zelfs de structuur gewijzigd worden. Door gebruik te maken van tools zoals Castor (http://castor.exolab.org) kan je op een eenvoudige manier Java-objecten naar XML omzetten en omgekeerd. In het geval van Castor dien je twee libraries in de vorm van jar-bestanden voor je programma beschikbaar te maken (castor jar en xerces.jar). De Castor API (zie bevat onder andere de package org.exolab.castor.xml. De belangrijkste klassen hierin zijn de Marshaller en Unmarshaller klassen. Met een Marshaller zet je een Java-object om naar een XML-document. Dit gaat het eenvoudigst met een FileWriter. Om een XML-document terug om te zetten naar een Java-object gebruik je een Unmarshaller in combinatie met een FileReader: FileWriter writer = new FileWriter(filename); Marshaller.marshal(object, writer); FileReader reader = new FileReader(filename); object = (class) Unmarshaller.unmarshal(class.class, reader); Belangrijk is dat, om een object succesvol te unmarshallen, er in de klasse naast een default constructor voor elk attribuut een getter en een setter moet aanwezig zijn! Opmerkingen: Het op een eenvoudige manier lezen en schrijven komt door Castor, niet door XML. Met XML kan je, in tegenstelling tot met serialization, gegevens van een oude klasse in een nieuwe versie van die klasse inlezen. Als je een attribuut toevoegt, verlies je de oude gegevens niet. Bij het terug inlezen zullen de niet aanwezige attributen genegeerd worden. Voor het overige geldt hetzelfde als bij serialiazation, met name de noodzaak om alle objecten terug in te lezen. (Je kan de objecten en hun attributen niet afzonderlijk benaderen). K. Behiels J. Gils Persistentie en Threads 13

3 2.1.2 Een voorbeeld We hernemen het voorbeeld uit het vorige hoofdstuk en passen het aan voor het werken met Castor. In dit voorbeeld schrijf je één object (een object dat een ArrayList bevat) weg in de vorm van een XML-bestand, en lees je het terug in. Eerst de klasse Address: package be.kdg.xmldemo; public class Address { private String street; private String zipcode; private String city; public Address() { public Address(String street, String zipcode, String city) { this.street = street; this.zipcode = zipcode; this.city = city; public String getstreet() { return street; public void setstreet(string street) { this.street = street; public String getzipcode() { return zipcode; public void setzipcode(string zipcode) { this.zipcode = zipcode; public String getcity() { return city; public void setcity(string city) { this.city = city; public String tostring() { return "Address{" + "street='" + street + "'" + ", zipcode='" + zipcode + "'" + ", city='" + city + "'" + ""; 14 Persistentie en Threads K. Behiels J. Gils

4 De klasse Address gebruik je in de klasse Person: package be.kdg.xmldemo; public class Person { private int id; private String name; private Address address; public Person() { public Person(int id, String name, Address address) { this.id = id; this.name = name; this.address = address; public Person(int id, String name, String street, String zipcode, String city) { this.id = id; this.name = name; address = new Address(street, zipcode, city); public int getid() { return id; public void setid(int id) { this.id = id; public String getname() { return name; public void setname(string name) { this.name = name; public Address getaddress() { return address; public void setaddress(address address) { this.address = address; public boolean equals(object object) { if (this == object) return true; if (!(object instanceof Person)) return false; final Person person = (Person) object; return id!= person.id; public int hashcode() { return id; K. Behiels J. Gils Persistentie en Threads 15

5 public String tostring() { return "Person{" + "id=" + id + ", name='" + name + "'" + ", address=" + address + ""; Een People-object bestaat uit een verzameling Person-objecten: package be.kdg.xmldemo; import java.util.arraylist; import java.util.list; public class People { private List list; public People() { list = new ArrayList(); public People(List list) { this.list = list; public List getlist() { return list; public void setlist(list list) { this.list = list; public void add(person person) { list.add(person); public boolean remove(person person) { return list.remove(person); public void printpeople() { for (int i = 0; i < list.size(); i++) { Person person = (Person) list.get(i); System.out.println(person); Voor het lezen en schrijven van de objecten gebruik je een afzonderlijke klasse XmlTool: package be.kdg.xmldemo; import org.exolab.castor.xml.marshaller; import org.exolab.castor.xml.unmarshaller; import org.exolab.castor.xml.validationexception; 16 Persistentie en Threads K. Behiels J. Gils

6 import java.io.filenotfoundexception; import java.io.filereader; import java.io.filewriter; import java.io.ioexception; public class XmlTool { private People people; public XmlTool(People people) { this.people = people; public void createxml() { FileWriter writer = null; try { writer = new FileWriter("people.xml"); Marshaller.marshal(people, writer); catch (ValidationException e) { catch (org.exolab.castor.xml.marshalexception e) { catch (IOException e) { finally { if (writer!= null) { try { writer.close(); catch (IOException e) { public People retrievexml() { people = null; // To be sure it works! FileReader reader = null; try { reader = new FileReader("people.xml"); people = (People) Unmarshaller.unmarshal( People.class, reader); catch (ValidationException e) { catch (org.exolab.castor.xml.marshalexception e) { catch (FileNotFoundException e) { finally { if (reader!= null) { try { reader.close(); catch (IOException e) { return people; K. Behiels J. Gils Persistentie en Threads 17

7 Ten slotte het hoofdprogramma: package be.kdg.xmldemo; public class RunXmlDemo { public static void main(string[] args) { People people = new People(); people.add(new Person(100, "Baert, Peter", "Hoogstraat 16", "9000", "Gent")); people.add(new Person(102, "Coveliers, Anka", "Heirbrug 23", "9160", "Lokeren")); people.add(new Person(103, "De Maeght, Maria", "Plezantstraat 7", "9100", "Sint Niklaas")); XmlTool tool = new XmlTool(people); tool.createxml(); people = tool.retrievexml(); people.printpeople(); 2.2 JDBC Inleiding De technologie die het mogelijk maakt om vanuit Java met databases te werken is Java Database Connectivity (JDBC). JDBC is voor een database wat een Java-interface is voor een Java-klasse. Met behulp van JDBC kan je vanuit Java vrijwel altijd op dezelfde manier werken, onafhankelijk van de database (Access, MySQL, Oracle, ). Een Java-interface belooft de aanwezigheid van zijn methoden in de klassen waarin hij geïmplementeerd wordt. Op gelijkaardige wijze belooft de JDBC-specificatie functionaliteiten van de databases en de drivers die aan de standaard voldoen. Vroeger bestond JDBC als een afzonderlijke library, ondertussen is ze volledig in de Java standaard editie geïntegreerd. Er is ook een JDBC-driver voorzien, namelijk een die een brug vormt naar om het even welke geïnstalleerde ODBC-driver. Voor de andere drivers ben je aangewezen op de fabrikant van de database. Er zijn 4 types van JDBC-drivers: Type 1: JDBC-ODBC bridge Koppelt een aanwezige ODBC-driver aan de JDBC API. Type 2: Native API partly Java driver Koppelt een aanwezige database aan de JDBC API. Type 3: Net protocol full Java driver Zet JDBC-oproepen om naar een database-onafhankelijk netprotocol. De server zet dit dan om naar het databaseprotocol. 18 Persistentie en Threads K. Behiels J. Gils

8 Type 4: Native protocol Java driver Een pure Java-driver die direct met de database kan communiceren (niet mogelijk met databases zoals Access). De JDBC API bestaat uit twee delen: de JDBC core API die deel uitmaakt van J2SE. Je vindt ze in de java.sqlpackage; de JDBC optional API die zich in de javax.sql-package bevindt. Een volledige studie van JDBC is een cursus op zichzelf. We beperken ons hier tot het strikte minimum. Opmerking: Gegevens opslaan in een database is een zuivere vorm van persistentie. Via JDBC kan je de gegevens tot op attribuutniveau benaderen De java.sql-package De belangrijkste onderdelen van de java.sql-package zijn: de DriverManage-klasse; de Driver-interface; de Connection-interface; de Statement-interface; de ResultSet-interface; de PreparedStatement-interface; de ResultSetMetaData-interface. DriverManager Elke JDBC-driver die je wenst te gebruiken moet geregistreerd zijn bij de DriverManager. Deze drivers verschillen naargelang het type database dat je gebruikt. Om de JDBC-driver vanuit een servlet of een JSP-pagina te laden kopieer je het driverbestand (meestal een *.jar bestand) naar de WEB-INF\lib directory van je toepassing. Om de driver te laden voer je de volgende code uit: try { Class.forName("JDBC.driver"); catch(classnotfoundexception e) { // driver niet gevonden Hierin is JDBC.driver de volledige naam van de JDBC-driver klasse. Voor de open source 100% Java database hsqldb is dit bijvoorbeeld "org.hsqldb.jdbcdriver". Als je K. Behiels J. Gils Persistentie en Threads 19

9 met Access werkt is dit "sun.jdbc.odbc.jdbcodbcdriver", de standaard JDBC- ODBC-driver van Sun Microsystems. De belangrijkste methode van deze klasse is de getconnection-methode, die bestaat in drie verschillende versies (telkens public static): Connection getconnection(string url); Connection getconnection(string url, Properties info); Connection getconnection(string url, String user, String password); Driver Deze interface is geïmplementeerd door elke JDBC-driver-klasse. De driver-klasse zelf is geladen en geregistreerd bij de DriverManager. Er kan meer dan één driver tegelijkertijd geregistreerd zijn. De DriverManager vraagt elke driver om te connecteren met de database op de bijbehorende URL. Connection De connection-interface stelt een verbinding met een database voor. Een instantie hiervan wordt bekomen met de getconnection-methode van de DriverManager-klasse. Hij bevat de volgende methoden die allemaal een throw van een SQLException kunnen doen: public void close(); Met deze methode sluit je de verbinding onmiddellijk af in plaats van te wachten tot ze automatisch wordt afgesloten. public boolean isclosed(); Test of de verbinding al of niet is afgesloten. public Statement createstatement(); public PreparedStatement preparestatement(string sql); Met de createstatement-methode maak je een Statement-object om SQLuitdrukkingen naar een database te zenden. Wanneer een SQL-uitdrukking meer dan eenmaal wordt uitgevoerd is het beter een PreparedStatement te gebruiken. public boolean getautocommit(); public void setautocommit(boolean autocommit); Met de eerste methode kan je de toestand van autocommit opvragen, met de tweede kan je ze wijzigen. Standaard staat autocommit op true. Dit wil zeggen dat de JDBC-driver de transactie automatisch zal beëindigen (starten gaat altijd automatisch). Als je autocommit op false zet moet je zelf de transactie eindigen met commit of rollback. public void commit(); public void rollback(); Met de commit-methode maak je alle wijzigingen in de database (sinds de laatste commit of rollback) permanent. Met de rollback-methode breng je de database terug in de toestand na de laatste succesvolle commit. 20 Persistentie en Threads K. Behiels J. Gils

10 Statement Je gebruikt een statement-methode om een SQL-uitdrukking uit te voeren en de geproduceerde resultaten te bekomen. De twee belangrijkste methoden zijn de volgende (ze kunnen ook een SQLException veroorzaken): public ResultSet executequery(string sql); public int executeupdate(string sql); De executequery-methode voert een SQL-uitdrukking uit en geeft een ResultSetobject terug. Met een executeupdate kan je insert-, update- of delete <SQL-uitdrukking> uitvoeren. De return-waarde is het aantal records dat door de transactie gewijzigd is. ResultSet Deze interface bevat het resultaat van een query in de vorm van een soort tabel. Hij bevat een soort pointer waarmee je naar de verschillende gegevensrijen kunt verwijzen. De drie belangrijkste methoden (die ook allemaal een SQLException kunnen veroorzaken) zijn: public boolean isfirst(); public boolean islast(); Deze methoden geven aan of de pointer respectievelijk naar de eerste of naar de laatste record in de ResultSet verwijst. public boolean next(); Deze methode verplaatst de pointer naar de volgende record. Ze geeft true terug zolang er nog records zijn. public ResultMetaData getmetadata(); Deze methode geeft de meta data van de ResultSet. public XXX getxxx(int kolomindex); De getxxx-methoden, waarbij XXX voor een datatype staat, gebruik je om de waarde van een kolom in een bepaalde rij van de ResultSet op te vragen. Kolomindex 1 geeft de eerste kolom enzovoort. PreparedStatement Deze interface is een uitbreiding van de Statement-interface en wordt gebruikt om een SQL-uitdrukking vooraf te compileren zodat ze bij meervoudig gebruik efficiënter uitgevoerd wordt. ResultSetMetaData Deze interface stelt de meta data van een ResultSet voor. Ze bevat onder andere de volgende methoden (ook hier is een SQLException mogelijk): public int getcolumncount(); Geeft het aantal kolommen terug. public String getcolumnname(int kolomindex); Geeft de naam van de kolom terug, de indexwaarde van de eerste kolom is 1. K. Behiels J. Gils Persistentie en Threads 21

11 2.2.3 Toegang krijgen tot een database Om toegang te krijgen tot een tabel in een database moet je 4 stappen doorlopen: Stap 1: Laad de JDBC-database-driver Voor bijna alle populaire databases zijn er tegenwoordig JDBC-drivers op de markt, bijvoorbeeld voor Oracle, Sybase, DB2, SQL Server, Er zijn ook heel wat open source databases zoals MySQL, hsqldb, Apache Derby, Ook voor ODBC zijn er drivers beschikbaar zodat je, indien nodig, via een JDBC-ODBC bridge kan connecteren. Een goede bron om drivers te zoeken is de volgende URL: Omdat JDBC-drivers meestal in de vorm van een *.jar-bestand geleverd worden is het eerste wat je moet doen ervoor zorgen dat de driver gevonden kan worden. Kopieer daarom de driver (het *.jar bestand) in de lib-directory van je toepassing (WEB-INF\lib voor een webapplicatie). Wanneer je met een JDBC-ODBC-bridge werkt is dit niet noodzakelijk omdat die in je Java-omgeving geïntegreerd is. Wanneer je van plan bent om met verschillende databases te werken moet je alle benodigde drivers laden. Als je bijvoorbeeld vanuit een programma met Access en MySQL-bestanden wilt werken moet je in je programma de volgende regels opnemen: // voor Access Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // voor MySQL (www.mysql.com) Class.forName("com.mysql.jdbc.driver"); Voor MySQL (www.mysql.org) moet je programma de beschikking hebben een aangepaste driver in de vorm van een jar-bestand. Je vindt die op de url Een interessante database om je programma s te testen is hsqldb (zie Het volstaat om het bestand hsqldb.jar als library in je programma op te nemen om een compleet databasesysteem ter beschikking te hebben. Het laden van de driver hiervoor gaat via: // voor hsqldb Class.forName("org.hsqldb.jdbcDriver"); Stap 2: Maak een verbinding (Connection) Nadat de JDBC-driver bij de DriverManager geregistreerd is kan je een verbinding met de database maken. Het eerste argument bij de verschillende versies van de getconnection-methodes is altijd de URL. Deze URL-string heeft de volgende syntaxis: "jdbc:subprotocol:subname" 22 Persistentie en Threads K. Behiels J. Gils

12 De subprotocol- en de subname-delen zijn afhankelijk van de database die je gebruikt. Als je met Access werkt is het subprotocol odbc en de subname de DSN (Data Source Name) voor de database (normaal de naam van het databasebestand). Als je Access-bestand de naam JavaWeb.mdb heeft dan wordt de URL-string als volgt: "jdbc:odbc:javaweb" Bij MySQL is het subprotocol mysql en de subnaam de naam van de machine en de database, de URL-string voor een database met de naam JavaWeb wordt dan: "jdbc:mysql://javaweb" en als de naam van de server 'linux' is wordt het: "jdbc:mysql///linux/javaweb" Voor hsqldb is het subprotocol hsqldb en de subnaam een verwijzing naar de database, je kan hier met een relatief pad werken. De volledige uitdrukkingen zijn dan respectievelijk bijvoorbeeld: Connection connection = DriverManager.getConnection("jdbc:odbc:JavaWeb"); Connection connection = DriverManager.getConnection("jdbc:mysql://JavaWeb"); Connection connection = DriverManager.getConnection("jdbc:mysql://linux/JavaWeb", "admin", "secret"); Connection connection = DriverManager.getConnection("jdbc:hsqldb:dbData/JavaWeb", "as", ""); In de laatste gevallen worden ook gebruikersnaam en wachtwoord meegegeven. Bij hsqldb is de standaard user as en het standaard password leeg. Stap 3: Maak een SQL-uitdrukking (Statement) Nadat je een Connection-object ter beschikking gekregen hebt kan je een SQLuitdrukking maken. Welke SQL-onderdelen begrepen worden is afhankelijk van je database server. Verder is de uitvoering van een SQL-uitdrukking afhankelijk van het toegankelijkheidsniveau, bijvoorbeeld of je al of niet de toelating hebt om records te wijzigen. Je creëert eerst een Statement-object (uitgaande van een open verbinding met de naam connection). Daarna kan je een executequery- of een executeupdate-methode uitvoeren. Bijvoorbeeld met een tabel met de naam Gebruikers: K. Behiels J. Gils Persistentie en Threads 23

13 Statement statement = connection.createstatement(); String sqlstring = "INSERT INTO Gebruikers " + "VALUES ('Don', 'Johnson', 'Miami', 'Vice')"; statement.executeupdate(sqlstring); ResultSet result = statement.executequery("select * FROM Gebruikers"); Stap 4: Verwerk het resultaat (ResultSet) Als je gebruik maakte van een executequery-statement dan staat het resultaat daarvan in een ResultSet-object. Om de gegevens hieruit op te halen kan je gebruik maken van de getxxx-methoden waarvan de getstring-methode de meest gebruikte is. Deze methode bestaat in twee versies: public String getstring(int kolomindex) ; public String getstring(string kolomnaam); De verschillende records doorlopen kan met de volgende lus: while(result.next()) { // Een praktisch MVC voorbeeld Voor de het programmavoorbeeld maken we gebruik van de volgende eenvoudige tabel Gebruikers. De tabel wordt (indien hij nog niet bestaat) in het programma zelf aangemaakt: Gebruikers Sleutel Voornaam Familienaam Gebruikersnaam Wachtwoord 1 Jos Gils gils swordfish 2 Erik Goossens goose matrix 3 Theo Jansens jans sleeples 4 Luc Lambrecht lam stigmata 5 Ronny Verlinden ronny silence 6 Kris Van Gompel gompy outbreak 7 Els D'Heer d'heer o'cool 8 Tom Van den Eede tom nightowl Model Voor het model maak je gebruik van de klassen Gebruiker en Gebruikers. 24 Persistentie en Threads K. Behiels J. Gils

14 Besluit Naast serialisatie zijn er nog andere manieren om Java-objecten op te slaan. De opslag in een XML-bestand heeft grote voordelen op gebied van overdraagbaarheid. Communicatie met databases gaat in Java onder andere met behulp van JDBC. Wat je moet kennen en kunnen: objecten in XML-bestanden opslaan gebruik makende van de Castor tool; een verbinding met een database maken en er gegeven uit lezen. Opdracht De klasse EuroLand bevat de volgende velden: private String naam; private int toetredingsjaar; private String munteenheid; private String extrainfo; De klasse EuroLanden bevat een verzameling van EuroLand-objecten. De klasse EuroLandenData (bijgevoegd) bevat de eigenlijke gegevens die je in EuroLandApplicatie (ook bijgevoegd) eerst in een EuroLanden-object moet invoeren Vervolgens moet je het EuroLanden-object met behulp van Castor naar een XML-bestand wegschrijven en dat bestand daarna terug inlezen in datzelfde EuroLanden-object. Zorg er wel voor dat het object voorafgaand aan het teug inlezen eerst op null gezet wordt, anders weet je niet zeker of het omzetten naar en van XML wel goed werkt. Bij het opstarten van het programma (na omzetten naar XML en terug inlezen) moet je de volgende lay-out bekomen: Uiteraard moet bij het selecteren van een ander land de bijbehorende informatie in de overeenstemmende groene velden wijzigen. 36 Persistentie en Threads K. Behiels J. Gils

15 Verder vind je de lay-out bij het uitvergroten (met GridBagLayout gewerkt) en ook het hoofdprogramma. Let op! Voor deze opgave heb je drie libraries in de vorm van een jar-bestand nodig, met name castor-1.1.x.x-xml.jar, commons-logging-1.1.jar (commons.apache.org/logging) en xerces.jar. De laatste vind je in de lib directory van IntelliJ, de eerste kan je downloaden bij public class EuroLandApplicatie { public static void main(string[] args) { List data = new EuroLandenData().getLanden(); EuroLanden landen = new EuroLanden(data); XmlTool tool = new XmlTool(landen); tool.createxml(); landen = tool.retrievexml(); new EuroLandFrame("EuroLanden", landen); K. Behiels J. Gils Persistentie en Threads 37

Objectgeoriënteerd Programmeren en Webapplicaties

Objectgeoriënteerd Programmeren en Webapplicaties Info-books HO40c Toegepaste Informatica Objectgeoriënteerd Programmeren en Webapplicaties Deel 40c: Java voor het internet: Servlets K. Behiels - J. Gils Hoofdstuk 3 JDBC 3.1 Inleiding De technologie die

Nadere informatie

Correspondentie inzake overnemen of reproductie kunt u richten aan:

Correspondentie inzake overnemen of reproductie kunt u richten aan: Vrijwel alle namen van software- en hardwareproducten die in deze cursus worden genoemd, zijn tegelijkertijd ook handelsmerken en dienen dienovereenkomstig te worden behandeld. Alle rechten voorbehouden.

Nadere informatie

INFITT01 - Internettechnologie WEEK 8

INFITT01 - Internettechnologie WEEK 8 INFITT01 - Internettechnologie WEEK 8 Programma Databases (JDBC, JNDI, ORM, JPA) MVC & Spring/Struts EJB Databases Veel web applicaties moeten informatie over langere tijd op kunnen slaan. Een voor de

Nadere informatie

Databanken en webtoepassingen in Java

Databanken en webtoepassingen in Java Databanken en webtoepassingen in Java K. Coolsaet Universiteit Gent 21 maart 2017 WiFi UGentGuest Gebruikersnaam: guestleerkr Wachtwoord: T5EVyMYW Eerst surfen naar http://www.ugent.be Cursuswebsite: http://inigem.ugent.be/moevie.html

Nadere informatie

Kleine cursus PHP5. Auteur: Raymond Moesker

Kleine cursus PHP5. Auteur: Raymond Moesker Kleine cursus PHP5 Auteur: Raymond Moesker Kleine cursus PHP PHP is platform en CPU onafhankelijk, open source, snel, heeft een grote userbase, het is object georiënteerd, het wordt omarmd door grote bedrijven

Nadere informatie

Overerving & Polymorfisme

Overerving & Polymorfisme Overerving & Polymorfisme Overerving Sommige klassen zijn speciaal geval van andere klasse Docent is een speciaal geval van werknemer, dwz. elke docent is ook werknemer Functionaliteit van docent = functionaliteit

Nadere informatie

Databases - Inleiding

Databases - Inleiding Databases Databases - Inleiding Een database is een verzameling van een aantal gegevens over een bepaald onderwerp: een ledenbestand van een vereniging, een forum, login gegevens. In een database worden

Nadere informatie

Zelftest Database applicatieprogrammering met JDBC

Zelftest Database applicatieprogrammering met JDBC Zelftest Database applicatieprogrammering met JDBC Document: n1216test.fm 02/04/2012 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST DATABASE

Nadere informatie

Tentamen Object Georiënteerd Programmeren TI1206 29 oktober 2014, 9.00-11.00 Afdeling SCT, Faculteit EWI, TU Delft

Tentamen Object Georiënteerd Programmeren TI1206 29 oktober 2014, 9.00-11.00 Afdeling SCT, Faculteit EWI, TU Delft Tentamen Object Georiënteerd Programmeren TI1206 29 oktober 2014, 9.00-11.00 Afdeling SCT, Faculteit EWI, TU Delft Bij dit tentamen mag je geen gebruik maken van hulpmiddelen zoals boek of slides. Digitale

Nadere informatie

NAAM: Programmeren 1 Examen 29/08/2012

NAAM: Programmeren 1 Examen 29/08/2012 Programmeren 29 augustus 202 Prof. T. Schrijvers Instructies Schrijf al je antwoorden op deze vragenbladen (op de plaats die daarvoor is voorzien). Geef ook je kladbladen af. Bij heel wat vragen moet je

Nadere informatie

Technische nota AbiFire5 Rapporten maken via ODBC

Technische nota AbiFire5 Rapporten maken via ODBC Technische nota AbiFire5 Rapporten maken via ODBC Laatste revisie: 29 juli 2009 Inhoudsopgave Inleiding... 2 1 Installatie ODBC driver... 2 2 Systeeminstellingen in AbiFire5... 3 2.1 Aanmaken extern profiel...

Nadere informatie

De MySQL C API. Variabelen in C Functies in C Pointers in C

De MySQL C API. Variabelen in C Functies in C Pointers in C LinuxFocus article number 304 http://linuxfocus.org De MySQL C API door Özcan Güngör Over de auteur: Ik gebruik Linux sinds 1997. Vrijheid, flexibiliteit en opensource. Dat

Nadere informatie

Universiteit van Amsterdam FNWI. Voorbeeld van tussentoets Inleiding programmeren

Universiteit van Amsterdam FNWI. Voorbeeld van tussentoets Inleiding programmeren Universiteit van Amsterdam FNWI Voorbeeld van tussentoets Inleiding programmeren Opgave 1: Wat is de uitvoer van dit programma? public class Opgave { static int i = 0 ; static int j = 1 ; int i = 1 ; int

Nadere informatie

Sparse columns in SQL server 2008

Sparse columns in SQL server 2008 Sparse columns in SQL server 2008 Object persistentie eenvoudig gemaakt Bert Dingemans, e-mail : info@dla-os.nl www : http:// 1 Content SPARSE COLUMNS IN SQL SERVER 2008... 1 OBJECT PERSISTENTIE EENVOUDIG

Nadere informatie

Technisch Ontwerp W e b s i t e W O S I

Technisch Ontwerp W e b s i t e W O S I Technisch Ontwerp W e b s i t e W O S I WOSI Ruud Jungbacker en Michael de Vries - Technisch ontwerp Website Document historie Versie(s) Versie Datum Status Omschrijving / wijzigingen 0.1 20 nov 2008 Concept

Nadere informatie

NHibernate als ORM oplossing

NHibernate als ORM oplossing NHibernate als ORM oplossing Weg met de SQL Queries Wat is ORM? ORM staat in dit geval voor Object Relational Mapping, niet te verwarren met Object Role Modeling. ORM vertaalt een objectmodel naar een

Nadere informatie

Zelftest Programmeren in Java

Zelftest Programmeren in Java Zelftest Programmeren in Java Document: n0883test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST PROGRAMMEREN IN JAVA Deze test

Nadere informatie

Programmeren in Java 3

Programmeren in Java 3 26 september 2007 Deze les korte herhaling vorige les Unified Modelling Language notatie van een class afleiding pointers abstracte classes polymorphisme dubieuze(?) constructies interfaces Meer over class

Nadere informatie

PHP en een MySQL database.

PHP en een MySQL database. mysql_php.doc 1/5 PHP en een MySQL database. Om informatie uit een MySQL database op te halen moet je de volgende stappen uitvoeren: 1. een verbinding maken met mysql; 2. een mysql database selecteren;

Nadere informatie

Een stoomcursus door Edgar de Graaf, november 2006

Een stoomcursus door Edgar de Graaf, november 2006 Programmeren in Java Een stoomcursus door Edgar de Graaf, november 2006 Deze tekst geeft een zeer korte inleiding in de programmeertaal Java, uitgaande van kennis van de taal C++. Daarnaast bestudere men

Nadere informatie

Informatica. Objectgeörienteerd leren programmeren. Van de theorie met BlueJ tot een spelletje met Greenfoot... Bert Van den Abbeele

Informatica. Objectgeörienteerd leren programmeren. Van de theorie met BlueJ tot een spelletje met Greenfoot... Bert Van den Abbeele Informatica Objectgeörienteerd leren programmeren Van de theorie met BlueJ tot een spelletje met Greenfoot... Bert Van den Abbeele http://creativecommons.org/licenses/by-nc-nd/3.0/legalcode Objectgeörienteerd

Nadere informatie

Een fragment wordt afgeleid van de basis klasse "Fragment".

Een fragment wordt afgeleid van de basis klasse Fragment. Android fragmenten 1/5 Fragmenten Klasse Een fragment wordt afgeleid van de basis klasse "Fragment". package com.android.cursustekst; import java.text.simpledateformat; import java.util.arraylist; import

Nadere informatie

8. Koppeling met een database

8. Koppeling met een database PHP7 en MySQL 8. Koppeling met een database 8.1 Inleiding In PHP is het eenvoudig om een koppeling te maken met een database. Een database kan diverse gegevens bewaren die met PHP aangeroepen en/of bewerkt

Nadere informatie

icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous

icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous 2006-2007 Inhoudsopgave 1 2 1.1 Programmeertaal PHP5..................... 2 1.2 MySQL database......................... 3 1.3 Adobe Flash...........................

Nadere informatie

SYNTRA-WEST. Initiatiecursus JAVA. Deel

SYNTRA-WEST. Initiatiecursus JAVA. Deel SYNTRA-WEST Initiatiecursus JAVA Deel Syntra-West Syntra-West (vroeger Vormingsinstituut West-Vlaanderen) Doorniksesteenweg 220 8500 Kortrijk Tel. 056/26.02.00 Fax 056/22.81.07 i Inhoudsopgave SYNTRA-WEST...

Nadere informatie

Practicum Orientatie op Webserver

Practicum Orientatie op Webserver Practicum Orientatie op Webserver Doel: Een goed beeld krijgen van een drie-tier applicatie. Het gebruik van drivers om database-onafhankelijk te werken. Het kunnen lezen van een java servlet. Database

Nadere informatie

Verslag. Projectteam: 107 Datum: 16 oktober 2008 Project leden: Lennard Fonteijn Harish Marhe Nicoletta Saba Turgay Saruhan Robin Tummers

Verslag. Projectteam: 107 Datum: 16 oktober 2008 Project leden: Lennard Fonteijn Harish Marhe Nicoletta Saba Turgay Saruhan Robin Tummers Verslag SE Projectteam: 107 Datum: 16 oktober 2008 Project leden: Lennard Fonteijn Harish Marhe Nicoletta Saba Turgay Saruhan Robin Tummers In dit verslag zullen wij een beschrijving geven, over welke

Nadere informatie

Objectgeorïenteerd werken is gebaseerd op de objecten die door het systeem gemanipuleerd worden.

Objectgeorïenteerd werken is gebaseerd op de objecten die door het systeem gemanipuleerd worden. Herhaling Objectgeorïenteerd werken is gebaseerd op de objecten die door het systeem gemanipuleerd worden. De basisbouwsteen is het object; een geïntegreerde eenheid van data en operaties werkend op deze

Nadere informatie

Datatypes Een datatype is de sort van van een waarde van een variabele, veel gebruikte datatypes zijn: String, int, Bool, char en double.

Datatypes Een datatype is de sort van van een waarde van een variabele, veel gebruikte datatypes zijn: String, int, Bool, char en double. Algemeen C# Variabele Een variabele is een willekeurige waarde die word opgeslagen. Een variabele heeft altijd een datetype ( De soort waarde die een variabele bevat). Datatypes Een datatype is de sort

Nadere informatie

Voor de database wordt een Access 2000 bestand gebruikt, met voorlopig 1 tabel:

Voor de database wordt een Access 2000 bestand gebruikt, met voorlopig 1 tabel: Eenvoudig voorbeeld. Er wordt verondersteld dat er met VS 2008 EXPRESS gewerkt wordt. Voor de database wordt een Access 2000 bestand gebruikt, met voorlopig 1 tabel: (Sommige schermafdrukken zijn afkomstig

Nadere informatie

Programmeren (1) Examen NAAM:

Programmeren (1) Examen NAAM: Schrijf al je antwoorden op deze vragenbladen (op de plaats die daarvoor is voorzien) en geef zowel klad als net af. Bij heel wat vragen moet je zelf Java-code schrijven. Hou dit kort en bondig. Je hoeft

Nadere informatie

Lessen Java: Reeks pag. 1

Lessen Java: Reeks pag. 1 Lessen Java: Reeks 2 1-3-2016 pag. 1 Primitieve types type grootte waardes byte 8 bits 128, 127 short 16 bits 32768, 32767 int 32 bits 2 31, 2 31 1 long 64 bits 2 63, 2 63 1 type grootte waardes float

Nadere informatie

Hoofdstuk 6. PHP Data Objects. Cursus PHP & MySQL Groep D

Hoofdstuk 6. PHP Data Objects. Cursus PHP & MySQL Groep D Hoofdstuk 6 PHP Data Objects Cursus PHP & MySQL Groep D Hoofdstuk 1: PHP Data Objects 1.1 Inleiding Tegenwoordig kun je er bij het ontwikkelen van een website bijna niet meer omheen: het gebruik van een

Nadere informatie

voegtoe: eerst methode bevat gebruiken, alleen toevoegen als bevat() false is

voegtoe: eerst methode bevat gebruiken, alleen toevoegen als bevat() false is PROEF-Tentamen Inleiding programmeren (IN1608WI), X januari 2010, 9.00-11.00, Technische Universiteit Delft, Faculteit EWI, Afdeling 2. Open boek tentamen: bij het tentamen mag alleen gebruik worden gemaakt

Nadere informatie

WebUntis 2014 Instructies basisinstallatie

WebUntis 2014 Instructies basisinstallatie WebUntis 2014 Instructies basisinstallatie Copyright 2013 Untis Benelux Rotterdam Installatie WebUntis 1 1 Algemeen... 2 1.1 Java JRE 7... 2 1.2 Apache Tomcat... 2 1.3 Een database.... 4 1.4 JDBC-Driver...

Nadere informatie

Katholieke Hogeschool Kempen ASP

Katholieke Hogeschool Kempen ASP Katholieke Hogeschool Kempen Campus Geel Departement Handelswetenschappen en Bedrijfskunde 3de jaar Toegepaste Informatica ASP www.projectchatroom.be Yorkim Parmentier 3TI4 Andy Geluykens 3TI4 Academiejaar

Nadere informatie

SQL manipulatietaal. We kunnen er data mee toevoegen, wijzigen en verwijderen uit een database.

SQL manipulatietaal. We kunnen er data mee toevoegen, wijzigen en verwijderen uit een database. SQL manipulatietaal We kunnen er data mee toevoegen, wijzigen en verwijderen uit een database. Basiscommando's: INSERT : toevoegen van gegevens DELETE : verwijderen van gegevens UPDATE : wijzigen van gegevens

Nadere informatie

Info-books. Toegepaste Informatica. Deel 37: Programmeren in Java HO37. K. Behiels - J. Gils

Info-books. Toegepaste Informatica. Deel 37: Programmeren in Java HO37. K. Behiels - J. Gils Info-books HO37 Toegepaste Informatica Deel 37: Programmeren in Java K. Behiels - J. Gils Hoofdstuk 3 Klassen 3.1 Klassen, variabelen en methoden 3.1.1 Wat is een klasse? Een struct van ANSI C is een goede

Nadere informatie

WebUntis 2014 Instructies basisinstallatie

WebUntis 2014 Instructies basisinstallatie WebUntis 2014 Instructies basisinstallatie Copyright 2013 Untis Benelux Rotterdam Installatie WebUntis 1 1 Algemeen...2 1.1 Java JRE 7... 2 1.2 Apache Tomcat... 2 1.3 Een database.... 4 1.4 JDBC-Driver...

Nadere informatie

Scala. Korte introductie. Sylvia Stuurman

Scala. Korte introductie. Sylvia Stuurman Korte introductie Sylvia Stuurman Wat is er zo bijzonder aan? Schaalbaar Objectgeoriënteerd (handiger dan Java!) Functioneel Scripts schrijven Gecompileerd: Java bytecode Pagina 2 voor scripts Pagina 3

Nadere informatie

Koppeling met een database

Koppeling met een database PHP en MySQL Koppeling met een database 11.1 Inleiding In PHP is het eenvoudig om een koppeling te maken met een database. Een database kan diverse gegevens bewaren die met PHP aangeroepen en/of bewerkt

Nadere informatie

ASRemote WebService. Via deze webservice kunt u:

ASRemote WebService. Via deze webservice kunt u: ASRemote WebService De ASRemote WebService is een SOAP Webservice die softwarematige communicatie met Exact Globe mogelijk maakt vanaf een willekeurige locatie op het internet. Via deze webservice kunt

Nadere informatie

Syntra-West. Syntra-West Doorniksesteenweg 220 8500 Kortrijk Tel. 056/26.02.00 Fax 056/22.81.07

Syntra-West. Syntra-West Doorniksesteenweg 220 8500 Kortrijk Tel. 056/26.02.00 Fax 056/22.81.07 Syntra-West Syntra-West Doorniksesteenweg 220 8500 Kortrijk Tel. 056/26.02.00 Fax 056/22.81.07 i Inhoudsopgave SYNTRA-WEST... 0 INITIATIECURSUS JAVA & DATABASE-DEVELOPNMENT... 0 JBUILDER 2005... 0 1. INLEIDING...

Nadere informatie

Objectgeoriënteerd programmeren in Java 1

Objectgeoriënteerd programmeren in Java 1 Objectgeoriënteerd programmeren in Java 1 CPP Javaprogrammeur Bijeenkomst 3 Leereenheden 7, 8, 9 De Java API Java bevat een grote bibliotheek standaardklassen: de Java API Voorbeelden java.lang basisklassen

Nadere informatie

IMP Uitwerking week 13

IMP Uitwerking week 13 IMP Uitwerking week 13 Opgave 1 Nee. Anders moet bijvoorbeeld een venster applicatie een subklasse zijn van zowel Frame en WindowListener. Als de applicatie ook een button of een menu heeft, dan moet het

Nadere informatie

Deel 1 : Gesloten Boek

Deel 1 : Gesloten Boek Naam : EXAMEN SOFTWAREONTWIKKELING 1STE PROEF BURG. IR. COMPUTERWETENSCHAPPEN EERSTE EXAMENPERIODE ACADEMIEJAAR 2004-2005 Deel 1 : Gesloten Boek 1. Testen Geef een overzicht van de verschillende testen

Nadere informatie

Handleiding voor het installeren van VBA scripts in Outlook

Handleiding voor het installeren van VBA scripts in Outlook Handleiding voor het installeren van VBA scripts in Outlook Brondocument E:\OutLook\InstallerenVBAScriptOutlook.odt Versiebeheer Versie Datum Uitleg 1.0v 21-03-12 1e versie na draaien prototype klant 1.1v

Nadere informatie

Abstracte klassen & Interfaces

Abstracte klassen & Interfaces Abstracte klassen & Interfaces Overerving public class Vierhoek {... Vierhoek public class Rechthoek extends Vierhoek {... public class Ruit extends Vierhoek {... Rechthoek Ruit Elke rechthoek is een vierhoek.

Nadere informatie

Programmeren 1 23 januari 2013 Prof. T. Schrijvers

Programmeren 1 23 januari 2013 Prof. T. Schrijvers Programmeren 1 23 januari 2013 Prof. T. Schrijvers Instructies Schrijf al je antwoorden op deze vragenbladen (op de plaats die daarvoor is voorzien). Geef ook je kladbladen af. Bij heel wat vragen moet

Nadere informatie

Tentamen Object Georiënteerd Programmeren TI1200 30 januari 2013, 9.00-12.00 Afdeling SCT, Faculteit EWI, TU Delft

Tentamen Object Georiënteerd Programmeren TI1200 30 januari 2013, 9.00-12.00 Afdeling SCT, Faculteit EWI, TU Delft Tentamen Object Georiënteerd Programmeren TI1200 30 januari 2013, 9.00-12.00 Afdeling SCT, Faculteit EWI, TU Delft Bij dit tentamen mag je geen gebruik maken van hulpmiddelen zoals boek of slides. Dit

Nadere informatie

Tentamen Inleiding Programmeren (IN1608WI), duur van de toets 2 uur Technische Universiteit Delft, Faculteit EWI, Afdeling 2.

Tentamen Inleiding Programmeren (IN1608WI), duur van de toets 2 uur Technische Universiteit Delft, Faculteit EWI, Afdeling 2. Tentamen Inleiding Programmeren (IN1608WI), duur van de toets 2 uur Technische Universiteit Delft, Faculteit EWI, Afdeling 2. Gesloten boek examen: er mag geen gebruik worden gemaakt van het studieboek.

Nadere informatie

Open SQL Server Management Studio en log in als Administator. Je ziet dan wat je in figuur 2.1 ziet.

Open SQL Server Management Studio en log in als Administator. Je ziet dan wat je in figuur 2.1 ziet. Hoofdstuk 2 Een ASP.NET applicatie met ADO.NET opzetten In dit hoofdstuk ga je een eenvoudige website opzetten, waarbij je een aantal gegevens uit een database ophaalt. Je moet je kennis van ADO.NET dus

Nadere informatie

Object Oriented Programming

Object Oriented Programming Object Oriented Programming voor webapplicaties Door Edwin Vlieg Waarom OOP? Basis uitleg over OOP Design Patterns ActiveRecord Model View Controller Extra informatie Vragen OOP Object Oriented Programming

Nadere informatie

Voorbeeldtentamen Inleiding programmeren (IN1608WI), Oktober 2003, , Technische Universiteit Delft, Faculteit EWI, Afdeling 2.

Voorbeeldtentamen Inleiding programmeren (IN1608WI), Oktober 2003, , Technische Universiteit Delft, Faculteit EWI, Afdeling 2. Voorbeeldtentamen Inleiding programmeren (IN1608WI), Oktober 2003, 14.00-15.30, Technische Universiteit Delft, Faculteit EWI, Afdeling 2. Dit tentamen bestaat uit twee delen. Deel 1 (14.00-14.45, gesloten

Nadere informatie

ASP.NET Test 2009-2010. Jan Van Ryckeghem

ASP.NET Test 2009-2010. Jan Van Ryckeghem ASP.NET Test 2009-2010 Jan Van Ryckeghem Inhoud Exceptionhandling H4... 3 Try Catch slide 25... 3 Error pagina slide 29... 3 Error.aspx... 3 Error.aspx.cs... 4 Web.config... 4 Logbestand aanmaken... 4

Nadere informatie

Java. Basissyllabus. Egon Pas

Java. Basissyllabus. Egon Pas Java Basissyllabus Egon Pas 2011 BeanPole bvba Gasmeterlaan 92-9000 Gent BTW BE 472.902.516 Tel: + 32 9 224 42 17 Fax: + 32 9 223 62 88 www.beanpole.be info@beanpole.be 1 Programmeren 1.1 Hoe werkt een

Nadere informatie

Beginselen van programmeren Practicum 1 (Doolhof) : Oplossing

Beginselen van programmeren Practicum 1 (Doolhof) : Oplossing Beginselen van programmeren Practicum 1 (Doolhof) : Oplossing Introductie In dit document geven we een mogelijke oplossing voor het eerste practicum. Deze oplossing gebruikt verschillende klassen en overerving,

Nadere informatie

Vakgroep CW KAHO Sint-Lieven

Vakgroep CW KAHO Sint-Lieven Vakgroep CW KAHO Sint-Lieven Objecten Programmeren voor de Sport: Een inleiding tot JAVA objecten Wetenschapsweek 20 November 2012 Tony Wauters en Tim Vermeulen tony.wauters@kahosl.be en tim.vermeulen@kahosl.be

Nadere informatie

Les 11 : Basis SQL (deel2).

Les 11 : Basis SQL (deel2). Les 11 : Basis SQL (deel2). Wat is SQL? SQL gaan we gebruiken voor het raadplegen van de database. We gaan gegevens invoegen in de database, selecteren, aanpassen en verwijderen van de database. Om dit

Nadere informatie

Dit kan gebruikt worden in zowel een ASP.NET web applicatie als een desktop applicatie.

Dit kan gebruikt worden in zowel een ASP.NET web applicatie als een desktop applicatie. Introductie Dit artikel laat zien hoe je een Image in een C# applicatie kan opslaan in een database en het kan ophalen uit de database om het te laten zien. Voor de database gebruiken we MS SQL maar voor

Nadere informatie

Programmeren met databanken volgens het lagenmodel in C#

Programmeren met databanken volgens het lagenmodel in C# Programmeren met databanken volgens het lagenmodel in C# met Visual Studio en MySQL HA-2267-02 Informaticabeheer Bert Cauwenberg en Lieven Pauwels Werkgroep Handel 2016 Guimardstraat 1, 1040 Brussel Guimardstraat

Nadere informatie

Tentamen in2705 Software Engineering

Tentamen in2705 Software Engineering Tentamen in2705 Software Engineering Voorbeeld (bijna tweemaal te groot) U mag meenemen naar dit tentamen: Lethbridge, afdrukken PPT slides, afdrukken handouts. 1. De TU wil een nieuw systeem ontwikkelen

Nadere informatie

Dynamische Websites. Week 6. vrijdag 25 oktober 13

Dynamische Websites. Week 6. vrijdag 25 oktober 13 Dynamische Websites Week 6 AGENDA Herhaling Databank SQL Injection Ontwerp OO _ indien private of protected magic zo weinig mogelijk php! View MVC home.php confirm.php vehicledetail.php Controller Model

Nadere informatie

Elementary Data Structures 3

Elementary Data Structures 3 Elementary Data Structures 3 Ferd van Odenhoven Fontys Hogeschool voor Techniek en Logistiek Venlo Software Engineering 29 september 2014 ODE/FHTBM Elementary Data Structures 3 29 september 2014 1/14 Meer

Nadere informatie

Powerpoint presentatie College 5 Gilbert van Lierop & Farshad Salamat

Powerpoint presentatie College 5 Gilbert van Lierop & Farshad Salamat Powerpoint presentatie College 5 Gilbert van Lierop & Farshad Salamat Wat is een database? Een verzameling van georganiseerde data Een database bestaat uit applicaties, SQL en het DBMS Watis eendbms? EenDBMS

Nadere informatie

Rodin installatiehandleiding (vanaf versie 2.1.xxx.x)

Rodin installatiehandleiding (vanaf versie 2.1.xxx.x) Rodin installatiehandleiding (vanaf versie 2.1.xxx.x) Introductie De Rodin applicatie bestaat uit een programma en een database. Het programma zal altijd lokaal op uw computer worden geïnstalleerd, terwijl

Nadere informatie

Zelftest Java concepten

Zelftest Java concepten Zelftest Java concepten Document: n0838test.fm 22/03/2012 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST JAVA CONCEPTEN Om de voorkennis nodig

Nadere informatie

INFORMATICA 1STE BACHELOR IN DE INGENIEURSWETENSCAPPEN

INFORMATICA 1STE BACHELOR IN DE INGENIEURSWETENSCAPPEN INFORMATICA 1STE BACHELOR IN DE INGENIEURSWETENSCAPPEN voorbeeldexamen NAAM :... OPMERKINGEN VOORAF Je krijgt 3 uur de tijd om de opdrachten voor dit examen uit te voeren. Verder werken aan je oplossing

Nadere informatie

Les 2 Eenvoudige queries

Les 2 Eenvoudige queries Les 2 Eenvoudige queries XAMP Apache server ( http ) mysql server PHP myadmin IAM SQL oefeningen Database phpmyadmin Import : sql_producten.sql, sql_winkel.sql, sql_festival.sql SAMS SQL in 10 minuten

Nadere informatie

Procedure Access - MSDE

Procedure Access - MSDE Procedure Access - MSDE Inhoudstafel INSTALLATIE VAN EEN MSDE SERVER 2 Microsoft SQL Express 2005 2 Microsoft SQL Express 2008 6 AANMAKEN VAN DE ODBC CONNECTIE NAAR DE SERVER 12 VOORBEREIDING VAN DE SERVER

Nadere informatie

Instellen back up Microsoft SQL database Bronboek Professional

Instellen back up Microsoft SQL database Bronboek Professional Instellen back up Microsoft SQL database Bronboek Professional In deze handleiding word een drietal punten besproken. Deze punten zijn allen noodzakelijk voor het inrichten van een goede back up voor de

Nadere informatie

Programmeren I. 26 augustus Algemene Richtlijnen. Richtlijnen Programmeren 1

Programmeren I. 26 augustus Algemene Richtlijnen. Richtlijnen Programmeren 1 Algemene Richtlijnen Programmeren I 26 augustus 2015 Schrijf je naam bovenaan elk antwoordblad en kladblad. Schrijf niet met potlood of in het rood op je antwoordbladen. Gebruik voor elke vraag een afzonderlijk

Nadere informatie

public boolean equaldates() post: returns true iff there if the list contains at least two BirthDay objects with the same daynumber

public boolean equaldates() post: returns true iff there if the list contains at least two BirthDay objects with the same daynumber Tentamen TI1310 Datastructuren en Algoritmen, 15 april 2011, 9.00-12.00 TU Delft, Faculteit EWI, Basiseenheid Software Engineering Bij het tentamen mag alleen de boeken van Goodrich en Tamassia worden

Nadere informatie

Labo 1 Programmeren II

Labo 1 Programmeren II Labo 1 Programmeren II L. Schoofs K. van Assche Voor de OA Labo Programmeren II programmeren we in C# en met Microsoft Visual Studio 2005 als ontwikkelomgeving (voorlopig beta2). Deze IDE maakt gebruik

Nadere informatie

Secure Application Roles

Secure Application Roles Secure Application Roles Beheer de toegang tot de database 1. Inleiding Het realiseren van geautoriseerde toegang tot een database lijkt eenvoudig. Echter, vaak blijkt dat dezelfde combinatie van gebruikersnaam

Nadere informatie

Zelftest Java EE Architectuur

Zelftest Java EE Architectuur Zelftest Java EE Architectuur Document: n1218test.fm 22/03/2012 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST JAVA EE ARCHITECTUUR Nota:

Nadere informatie

Acht stappen voor JSF

Acht stappen voor JSF Acht stappen voor JSF Inleiding In deze tutorial zullen we JSF (Java server faces) installeren. Wat we niet beschrijven is hoe te werken met JSF, over dit onderwerp zijn er genoeg boeken en internetsites

Nadere informatie

VPN Remote Dial In User. DrayTek Smart VPN Client

VPN Remote Dial In User. DrayTek Smart VPN Client VPN Remote Dial In User DrayTek Smart VPN Client VPN Remote Dial In Met een Virtual Private Network (VPN) is het mogelijk om door middel van een beveiligde (geautoriseerd en/of versleuteld) verbinding

Nadere informatie

Eindtoets XML: Theorie en toepassingen

Eindtoets XML: Theorie en toepassingen Eindtoets XML: Theorie en toepassingen Deze eindtoets geeft een indruk, niet meer en niet minder, van mogelijke tentamenvragen. De spreiding over verschillende onderwerpen zal nooit bij elk tentamen hetzelfde

Nadere informatie

Een website maken met databasetoegang.

Een website maken met databasetoegang. Hoofdstuk 5 Een website maken met databasetoegang. In dit hoofdstuk gaan we het weblog dat je in hoofdstuk 4 hebt gemaakt verder uitbreiden. Een belangrijk onderdeel wordt toegevoegd aan de applicatie,

Nadere informatie

Popsy Financials. Overstap Access-MSDE

Popsy Financials. Overstap Access-MSDE Popsy Financials Overstap Access-MSDE 1 Inhoudstafel 1/17 1 Installatie van een MSDE server... 3 1.1 Microsoft SQL Express 2008... 3 1.2 Aanmaken van ODBC connectie naar de server... 9 1.3 Voorbereiding

Nadere informatie

Een gelinkte lijst in C#

Een gelinkte lijst in C# Een gelinkte lijst in C# In deze tutorial ga demonstreren hoe je een gelinkte lijst kan opstellen in C#. We gaan een klasse schrijven, die een gelijkaardige functionaliteit heeft als een ArrayList, namelijk

Nadere informatie

Correspondentie inzake overnemen of reproductie kunt u richten aan:

Correspondentie inzake overnemen of reproductie kunt u richten aan: - XSL-FO Vrijwel alle namen van software- en hardwareproducten die in deze cursus worden genoemd, zijn tegelijkertijd ook handelsmerken en dienen dienovereenkomstig te worden behandeld. Alle rechten voorbehouden.

Nadere informatie

Programmeren in Java 3

Programmeren in Java 3 2 september 2007 voor deeltijdstudenten Kop van Zuid Rotterdam, 3 juni 2007 Even voorstellen Naam: Wessel Oele(31) Docent bij opleiding technische informatica Kamer: I210 (tweede verdieping, links de gang

Nadere informatie

Teamhandleiding DOMjudge (versie 2.2.0muKP) 31 mei 2008

Teamhandleiding DOMjudge (versie 2.2.0muKP) 31 mei 2008 judge Teamhandleiding DOMjudge (versie..0mukp) 31 mei 008 /\ DOM DOM judge Inhoudsopgave 1 Inleiding Samenvatting.1 Inlezen en wegschrijven............................... Insturen van oplossingen...............................3

Nadere informatie

public Bier ( string N, double P, Brouwerij B) { Naam = N; AlcoholPerc = P; Brouwer = B;

public Bier ( string N, double P, Brouwerij B) { Naam = N; AlcoholPerc = P; Brouwer = B; Beschouw bijvoorbeeld de twee onderstaande klassen, waarvan de attributen en eigenschappen geannoteerd zijn met bijkomende XML-annotaties: using System ; using System. Xml ; using System. Xml. S e r i

Nadere informatie

Java spiekbrief. Commentaar. Definitie van een methode. Types. Variabelendeclaratie. Definitie van een klasse. Namen. Definitie van een veld

Java spiekbrief. Commentaar. Definitie van een methode. Types. Variabelendeclaratie. Definitie van een klasse. Namen. Definitie van een veld Java spiekbrief Commentaar Dient enkel voor de menselijke lezer. // tot het einde van de lijn /* Dit type commentaar kan gerust meerdere lijnen beslaan. */ /** En deze speciale vorm wordt gebruikt voor

Nadere informatie

Vervang UW SERVERNAAM, UW SERVERNAAM ZONDER VPN en COMPUTERNAAM door de naam van de server en computer welke wij u doorgegeven hebben.

Vervang UW SERVERNAAM, UW SERVERNAAM ZONDER VPN en COMPUTERNAAM door de naam van de server en computer welke wij u doorgegeven hebben. VPN ONDER WINDOWS 7 VOOR JE BEGINT Deze handleiding is geschreven voor Windows 7. Bij het doorlopen van de handleiding zal je regelmatig handelingen moeten uitvoeren. Hierbij wordt een vaste schrijfwijze

Nadere informatie

Project Software Engineering XML parser: Parsen van een xml CD catalogus

Project Software Engineering XML parser: Parsen van een xml CD catalogus Project Software Engineering XML parser: Parsen van een xml CD catalogus Brent van Bladel brent.vanbladel@uantwerpen.be February 16, 2017 XML (Extensible Markup Language) is een taal waarmee we op een

Nadere informatie

Op de Virtual Appliance is MySQL voorgeïnstalleerd. MySQL is momenteel de meest gebruikte database op het internet.

Op de Virtual Appliance is MySQL voorgeïnstalleerd. MySQL is momenteel de meest gebruikte database op het internet. Het installeren van WordPress Nu je een volledig werkende virtuele server hebt is het tijd om er een applicatie op te installeren. We beginnen met de blogtool WordPress. De database De eerste stap is het

Nadere informatie

DOMjudge teamhandleiding

DOMjudge teamhandleiding judge DOMjudge teamhandleiding Samenvatting /\ DOM DOM judge Hieronder staat de belangrijkste informatie kort samengevat. Dit is bedoeld om snel aan de slag te kunnen. We raden echter ten zeerste aan dat

Nadere informatie

LearnOSM. PostgreSQL & PostGIS. PostgreSQL en PostGIS installeren. Bijgewerkt

LearnOSM. PostgreSQL & PostGIS. PostgreSQL en PostGIS installeren. Bijgewerkt PostgreSQL & PostGIS Bijgewerkt 10-09-2016 LearnOSM In dit hoofdstuk zullen we laten zien hoe PostgreSQL in te stellen op Windows en hoe een database te maken waarin u geografische gegevens kunt opslaan.

Nadere informatie

Programmeren in Java 3

Programmeren in Java 3 7 maart 2010 Deze les Zelf componenten maken Concurrency (multithreading): werken met threads levenscyclus van een thread starten tijdelijk onderbreken wachten stoppen Zelf componenten maken Je eigen component:

Nadere informatie

Installatie SQL Server 2014

Installatie SQL Server 2014 Installatie SQL Server 2014 Download de SQL Server Express net advanced Services van de website: https://www.microsoft.com/en-us/download/details.aspx?id=42299 klik op Download. Als u een 64 bit variant

Nadere informatie

eerste voorbeelden in Java

eerste voorbeelden in Java Beginselen van programmeren 2 eerste voorbeelden in Java vereisten: een editor: om programma in te tikken en te bewaren een Java compiler: zet ingetikte (bron-) programma om naar byte-code een Java Virtuele

Nadere informatie

MA!N Rapportages en Analyses

MA!N Rapportages en Analyses MA!N Rapportages en Analyses Auteur Versie CE-iT 1.2 Inhoud 1 Inleiding... 3 2 Microsoft Excel Pivot analyses... 4 2.1 Verbinding met database... 4 2.2 Data analyseren... 5 2.3 Analyses verversen... 6

Nadere informatie

Met een LightSwitch applicatie een OData service uit de Windows Azure Marketplace consumeren

Met een LightSwitch applicatie een OData service uit de Windows Azure Marketplace consumeren Met een LightSwitch applicatie een OData service uit de Windows Azure Marketplace consumeren Om eens wat ervaring op te doen met de Windows Azure Marketplace heb ik een publieke en gratis databron gekozen

Nadere informatie

Fun met webparts in ASP.Net

Fun met webparts in ASP.Net Fun met webparts in ASP.Net Deel 2:User controls en Webparts door Bert Dingemans, e-mail : info@dla-os.nl www : http:// 1 Inhoudsopgave FUN MET WEBPARTS IN ASP.NET... 1 DEEL 2:USER CONTROLS EN WEBPARTS...

Nadere informatie

Technisch ontwerp. Projectteam 6. Project "Web Essentials" 02 april 2009. Versie 2.1.0

Technisch ontwerp. Projectteam 6. Project Web Essentials 02 april 2009. Versie 2.1.0 Projectteam 6 Faculteit Natuur en Techniek Hogeschool Utrecht Projectleider: Hans Allis, hans.allis@student.hu.nl Technisch ontwerp Project "Web Essentials" 02 april 2009 Versie 2.1.0 Teamleden: Armin

Nadere informatie