70 likes | 184 Views
Internetapplicaties. Deel 10: JSP + Java + database: Client Server via http. Doelstelling. De 3 elementen die een internetapplicatie uitmaken, samen zien werken. Grote lijnen begrijpen. Kleine wijzigingen kunnen aanbrengen. 1e JSP/Java/mysql -applicatie.
E N D
Internetapplicaties Deel 10: JSP + Java + database: Client Server via http Deel X: JSP + Java + database
Doelstelling • De 3 elementen die een internetapplicatie uitmaken, samen zien werken. • Grote lijnen begrijpen. • Kleine wijzigingen kunnen aanbrengen. Deel X: JSP + Java + database
1e JSP/Java/mysql -applicatie • Download de volgende bestanden in de aangegeven directories in de Tomcat homedirectory. (Verwijder de underscore zoals aangegeven op de site) Deel X: JSP + Java + database
booklist.jsp • <jsp:useBean id="book" class="databases.Books" /> Dit wordt vertaald als: databases.Books book = new databases.Books() De klasse Books is geen business-klasse maar gewoon een klasse met databases hulpfuncties. Het vormt een laag tussen JSP en de database. We slaan het stukje ivm newbook.jsp over en kijken in de form: • book.connect(); ResultSet rs = book.viewBooks(); Op book wordt de methode connect() uitgevoerd. Binnen viewBooks() wordt een SQL-commando naar de database gestuurd. Het resultaat is een resultset van boek-records die worden teruggegeven. Deel X: JSP + Java + database
booklist.jsp • <td><%=rs.getString("Title") %> tje </td> Dit wordt in een lus uitgevoerd. De waarden zijn de title–waarden van de book-records uit de database. (De tje is maar een test). Hierboven staat: • <td><input type = "checkbox" name = "pkey" value = "<%=rs.getString("Title_ID") %>"/></td> De waarden van de checkbox met naam pkey, zijn de title_id’s van de boeken die de gebruiker heeft aangeklikt. Nu kunnen we de code het begin van de form aangeeft, begrijpen: • <form action = "delete.jsp" method = "post" > Van zodra op de submit-knop wordt geduwd, zal delete.jsp opstarten. De checkbox pkey met al de te verwijderen boeken, komen mee in de URL. Deel X: JSP + Java + database
delete.jsp Het begin verloopt analoog aan de vorige jsp-pagina. We hebben dus al een book-object. • String[] kys = request.getParameterValues("pkey"); book.connect(); book.removeBooks(kys); book.disconnect(); pkey was de naam van checkbox die verschillende waarden bevatte! getParameterValues(“pkey”) geeft een array van strings terug. removeBooks is een methode die een DELETE-query zal aanmaken, die al de title_id’s zal verwijderen bevat in de stringarray van de parameter. Deel X: JSP + Java + database
Books.java • Books.java is hulpklasse die een laag vormt tussen de JSP-GUI en de database. Het is geen echte business-klasse. • De main-method hebben we hier niet nodig. Die had ik toegevoegd als test. Deel X: JSP + Java + database