Anda di halaman 1dari 11

. .

. .

Berikut ini manakah yang merupakan pernyataan yang salah mengenai perbandingan antara JSP dari Servlet : Servlet ialah jawaban dari Java untuk menggantikan CGI, sedangkan servlet dieksekusi di server dan mengembalikan permintaan browser. Jsp memisahkan isi web dinamis dan statis, dan memisahkan logic dan presentasi di aplikasi web. Servlet meminta menggabungkan kode dengan isi statis, sedangkan JSP dapat menggunakan bean dengan cakupan tertentu untuk memisahkan kode atatu ekstensi tag. JSP ialah aplikasi Java yang dijalankan di sisi server, sedangkan servlet berjalan di sisi browser klien. JSP mendukung tiga comment style, kecuali : JSP comment, HTML comment dan XHTML comment. JSP comment, XHTML comment dan script language comment. HTML comment, XHTML comment dan script language comment. JSP comment, HTML comment dan script language comment. Kode JSP berikut yang disisipkan di dalam kode html dan yang berfungsi menutup ekspresi Java yang akan dijalankan pada saat run time adalah : <% dan %> <%= dan %> <% dan /> < dan /> Yang termasuk dalam komponen script JSP adalah : Scriptlet, comment, expression, directive dan action. Comment, expression, action, escape sequence dan directive. Comment, expression, declaration, escape sequence dan scriplet. Scriptlet, comment, declaration, escape sequence dan directive. Predefined tag berikut yang digunakan untuk memasukkan halaman lain yaitu: <%@ include file=hello.jsp %> <jsp:forward page=hello.jsp/> application.getparameter(hello.jsp) request.getparameter(hello.jsp) Manakah pernyataan berikut ini yang salah : Objek pada session scope ada hanya untuk clients browsing session. Objek pada page scope ada di semua JSP dari partikular aplikasi web. Directives specify global informasi tidak berasosiasi dengan JSP request. Tiap page mempunyai instansi sendiri dari page scope implicit objek. Aplikasi JSP terhubung ke database menggunakan : <jsp:useBean> <jsp:forward> <jsp:include> <jsp:param> Penulisan session di JSP yang benar, kecuali : session.setAttribute(thename,name); Hello, <%= session.getAttribute(thename) %> session.attribute(thename,name); session.getAttribute(thename); Jika seseorang mengunjungi suatu situs, ia mungkin akan mengunjungi beberapa page yang melakukan beberapa aksi dan membutuhkan autentikasi. Fungsi dalam JSP yang harus digunakan adalah :

. . . . .

. . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . .

Session request application forward Mengeset nilai dari sebuah property pada bean dengan 4 cara, kecuali: Memberi nama property dan value Memberi nama parameter di request untuk memberi nilai dari parameter tersebut ke property. Jika menghilangkan nilai dan nama parameter, nilai parameter yang sama dengan nama property diset ke property. Mengembalikan nilai dari propery pada bean. Essay Buatlah program simple dengan JSP untuk mengecek username dan password dari database. <% ResultSet rs = null ; PreparedStatement ps = null; Connection con = null; String userName = request.getParameter("user"); String password = request.getParameter("password"); try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); String url="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ="+application.getRealPath("/data.mdb"); con = DriverManager.getConnection(url); ps = con.prepareStatement("select * from msuser where nama = ? and password = ?"); ps.setString(1,userName); ps.setString(2,password); rs = ps.executeQuery(); if ( rs.next() == false) response.sendRedirect("login.jsp?error=unable to resolve user's name and password"); else response.sendRedirect("index.jsp"); } catch(Exception x){ out.println("unable to read database"); } finally { con.close(); ps.close(); } Buatlah sebuah program sederhana dengan JSP untuk mengecek absensi dari karyawan di sebuah perusahaan.Dimana yang diminta setiap karyawan memiliki NIK nya sendiri. Program ini akan meminta inputin NIK dari karyawan dan akan menampilkan jam masuk dari karyawan tersebut.Program ini juga akan menampilkan jam pulang jika karyawan tersebut memasukkan NIK-nya untuk yang kedua kalinya.Program ini akan terhubung ke database karyawan dan database trabsen. <% String info = (String)request.getAttribute("info"); if(info == null) info = "&nbsp;"; %> <form name="form1" method="post" action="check.jsp">

0. . . . .

<table width="200" border="1" align="center"> <tr> <td align="center"><input type="text" name="nik"></td> </tr> <tr> <td align="center"><input type="submit" name="Submit" value="Submit"></td> </tr> <tr> <td align="center"><font color="#FF0000"><%=info%></font></td> </tr> </table> </form> check.jsp %@page import="java.sql.*"% <% String nik = request.getParameter("nik"); if(nik==null || nik.equals("")) { request.setAttribute("info","NIK harus diisi"); %> <jsp:forward page="index.jsp"/> <% } else { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); String url="jdbc:odbc:DRIVER={Microsoft Access Driver (*.mdb)};DBQ="+application.getRealPath("/WEB-INF/data.mdb"); Connection con = DriverManager.getConnection(url); PreparedStatement ps = con.prepareStatement("select * from MsUser where NIK = ?"); ps.setString(1,nik); ResultSet rs = ps.executeQuery(); if(rs.next()) { long waktu = System.currentTimeMillis(); ps = con.prepareStatement("select * from TrAbsen where tanggal=? and NIk=?"); ps.setDate(1,new Date(waktu)); ps.setString(2,nik); ResultSet rsAbsen = ps.executeQuery(); if(rsAbsen.next()) { //absen pulang(update) ps = con.prepareStatement("update TrAbsen set Time_out=? where Tanggal=? and NIK=?"); ps.setTime(1,new Time(waktu)); ps.setDate(2,new Date(waktu)); ps.setString(3,nik); ps.executeUpdate(); request.setAttribute("info",nik+" absen pulang jam : "+new Time(waktu)); %> <jsp:forward page="index.jsp"/> <% }else

{ //absen masuk(insert) ps = con.prepareStatement("insert into TrAbsen(Tanggal,NIK,Time_In) values(?,?,?)"); ps.setDate(1,new Date(waktu)); ps.setString(2,nik); ps.setTime(3,new Time(waktu)); ps.executeUpdate(); request.setAttribute("info",nik+"absen msk jam : "+new Time(waktu)); %> <jsp:forward page="index.jsp"/> <% } } else { request.setAttribute("info","NIK tidak ada dalam data"); %> <jsp:forward page="index.jsp"/> <% } } %> Buatlah sebuah program yang meminta inputan nama. Setelah nama disubmit maka akan menampilkan (Hello,nama yang diinput). Buatlah program ini dalam servlet. import java.io.*; import java.util.*; import java.sql.*; import javax.servler.*; import javax.servler.http.*; public class GreetingServlet Extends HttpServlet { public void doGet(HttpServletRequest, HttpServletResponse) throws ServletException, IOException { response.setContentType("text/html"); response.setBufferSize(8192); PrintWriter out = response.getWriter(); out.println("<html>" + "<head><title>Hello</title></head>"); out.println("<body bgcolor=\"#ffffff\">" + "<img src=\"duke.waving.gif\">" + "<h2>Hello, my name is Duke. What's yours?</h2>" + "<form method=\"get\">" + "<input type=\"text\" name=\"username\" size=\"25\">" + "<p></p>" + "<input type=\"submit\" value=\"Submit\">" + "<input type=\"reset\" value=\"Reset\">" + "</form>"); String username = request.getParameter("Username"); if( username != null && username.length() > 0) { requestDispatcher dipatcher = getServletContext().getRequestDispatcher("/response"); if(dispatcher != null)

dispatcher.include(request,response); } out.println("</body></html>"); out.close(); } public String getServletInfo() { return "The Hello sevlet says hello."; } } ResponseServlet.java import java.io.*; import java.util.*; import java.sql.*; import javax.servler.*; import javax.servler.http.*; public class GreetingServlet Extends HttpServlet { public void doGet(HttpServletRequest, HttpServletResponse) throws ServletException, IOException { PrintWriter out = response.getWriter(); String username = request.getParameter("username"); if(username != null && username.length() > 0) out.println("<h2>Hello, " +username+ "!</h2>); } public String getServletInfo() { return "The Response Servlet says hello"; } } I. Pilihan Ganda 1. Dibawah ini adalah komponen kunci JSP, kecuali : a. Actions c. Server b. Scriplets d. Directives 2. JSP execute di : a. Client b. Server c. PC d. Laptop

3. Berikut ini adalah komponen script JSP, kecuali : a. Command c. Declaration b. Expressions d. Comments 4. Yang membatasi comment java adalah.. a. <^/n /> c. { } b. < > d. <% %> 5. Yang mencakup dalam implicit object adalah a. Application c. Exit b. Remove d. Reason

6. Server yang dapat mengexecute JSP adalah.. a. SQL server c. Apache Tomcat b. Client server d. Protokol server 7. Pemakaian tag request dalam JSP yang benar adalah.. a. Requesgetparameter() c. Request.getparameter() b. requestgetParameter() d. request.getParameter() 8. Pemakaian tag session dalam JSP yang benar adalah.. a. Sessionsetattribute(,) c. session.setAttribute(,) b sessionsetAttribute(,) d. Session.setattribute(,) 9. Berikut ini cara menampilkan tanggal dengan JSP : a. <%= new java.util.Date() %> b. <%= new java.util.Tanggal() %> c. <%= new java.Date() %> d. <%= new util.java.Date() %> 10. JSP singkatan dari a. Java Servlet Pages b. Java Scriplet Pages c. Java Software Pages d. Java Server Pages II Essay Buatlah program meminta inputan nama lalu bila mengklik submit akan pindah ke halaman yang mengucapkan hello disertai nama yang tadi dimasukkan.. Gambar :

Buatlah dengan servlet dan JSP! Servlet : Halaman hello = import javax.servlet.*; import javax.servlet.http.*; import java.io.*; public class WelcomeServlet extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response ) ServletException, IOException { String Name = request.getParameter(Name); Response.setContentType(text/html); PrintWriter out = response.getWriter(); out.println(<?xml version = \1.0\?>); out.println(<!DOCTYPE html PUBLIC \-//W3C//DTD + XHTML 1.0 Strict//EN\\http://www.w3.org + /TR/xhtml1/DTD/xhtml1-strict.dtd\>); out.println(<html smlns = \http://www.w3.org/1999/xhtml\>); out.println(<head>); out.println(<title>Processing get requests with data</title>); out.println(</head>); out.println(<body>); outprintln(<h1>Hello+Name+,<br/>); out.println(Welcome to my site..!</h1>); out.println(</body>); out.println(</html>); out.close(); } } Halaman inputan = <?xml version = 1.0?> <!DOCTYPE html PUBLIC \-//W3C//DTD +XHTML 1.0 Strict//EN\\ +/TR/xhtml1/DTD/xhtml1-strict.dtd\> <html smlns = \http://www.w3.org/1999/xhtml\> <head> <title>Processing get requests with data</title> </head> <body> <form name="form1" method="get" action="/jhtp5/welcome2"> <p>Type your name</p> <input type="text" name="Name"> <input type="submit" name="Submit" value="Submit"> </form> </body> </html> JSP = Halaman inputan = <p>Type your name</p> <form name="form1" method="get" action="hello.jsp"> <input type="text" name="Name"> <input type="submit" name="Submit" value="Submit"> </form> <p>&nbsp;</p> Halaman hello = <% String Name = request.getParameter("Name"); %> <p>Hello <%= Name %></p>

throws

http://www.w3.org

<p> Welcome to my site..</p> 1. Dibawah ini adalah komponen kunci JSP, kecuali : a. Actions c. Server b. Scriplets d. Directives 2. JSP dieksekusi di : a. Client b. Server 6. Server yang dapat mengeksekusi JSP adalah.. a. SQL server c. Apache Tomcat b. Client server d. Protokol server 7. Pemakaian tag request dalam JSP yang benar adalah.. a. Requesgetparameter() c. Request.getparameter() b. requestgetParameter() d. request.getParameter() 8. Pemakaian tag session dalam JSP yang benar adalah.. a. Sessionsetattribute(,) c. session.setAttribute(,) b sessionsetAttribute(,) d. Session.setattribute(, 9. Berikut ini cara menampilkan tanggal dengan JSP : a. <%= new java.util.Date() %> b. <%= new java.util.Tanggal() %> c. <%= new java.Date() %> d. <%= new util.java.Date() %> 10. JSP singkatan dari a. Java Servlet Pages b. Java Scriplet Pages c. Java Software Pages d. Java Server Pages

c. PC d. Laptop

3. Berikut ini adalah komponen script JSP, kecuali : a. Command c. Declaration b. Expressions d. Comments

4. Yang membatasi comment java adalah.. a. <^/n /> c. { } b. < > d. <% %> 5. Yang mencakup dalam implicit object adalah a. Application c. Exit b. Remove d. Reason

I. SOAL PILIHAN Bab 26 Servlet 1. Class dan Interface yang digunakan untuk mendefinisikan servlet dijumpai dalam package A. javax.servlet dan javax.servlet.http B. javax.servlet.jsp dan javax.servlet.jsp.tagext C. javax.servlet dan javax.servlet.https D. Jawaban A, B, dan C salah 2. URL dapat melakukan perintah kompleks berikut, kecuali ... A. searching database C. Program compiling B. searching internet D. Jawaban A, B, C salah 3. Pernyataan berikut yang benar, adalah: A. Servlet biasanya digunakan pada client side aplikasi jaringan B. Method Servlet dieksekusi oleh Servlet container C. Dua request HTTP yang paling umum adalah get dan put D. Nomor port yang dikenal pada Web server tempat request atas dokumen HTML dibuat adalah 8080 3. Class HttpServlet dan GenericServlet mengimplementasikan interface A. Servlet C. Applet B. JSP D. Jawaban A, B, C salah

4. Untuk merespon request get dari client, class HttpServlet mendefinisikan method A. doGet C. doGets B. doPost D. Jawaban A, B, C salah 5. Attribute form yang menspesifikasikan server-side form handler (yaitu program yang menangani request) adalah: A. action C. reaction B. active D. jawaban A, B, C salah 6. Host name yang dikenal-baik yang merujuk komputer milik anda, adalah: A. localhost C. DNS B. globalhost D. Jawaban A, B, C salah 7. Method HttpServletResponse yang menghasilkan arus keluaran berbasis-karakter yang memungkinkan data teks dikirim ke client, adalah: A. getWriter C. getReader B. getPrinter D. jawaban A, B, C salah Bab 27 JSP 8. Ada empat komponen kunci JSP, yaitu: A. directives, actions, scripting elements, tag libraries B. directives, actives, sriptlets, tags standard C. directions, actives, scripting elements, tag libraries D. jawaban A, B, C salah 9. Komentar JSP dibatasi oleh A. <!-- dan --> B. <%-- dan --%> C. <%= dan %> D. Jawaban A, B, C salah

10. Komentar XHTML dibatasi oleh A. <!-- dan --> C. <%= dan %> B. <%-- dan --%> D. Jawaban A, B, C salah 11. Komponen kunci JSP yang memungkinkan programmer menyisipkan kode Java yang berinteraksi dengan komponen-komponen dalam JSP untuk melaksanakan pemrosesan request, adalah: A. directives C. scripting elements B. actions D. tag libraries 12. Komponen kunci JSP yang berupa bagian dari mekanisme ekstensi tag yang memungkinkan programmer menciptakan custom tags, adalah: A. directives C. scripting elements B. actions D. tag libraries 13. Komponen kunci JSP yang meng-enkapsulasi fungsionalitas dalam tag yang didefinisikan sebelumnya yang dapat dimasukkan (embed) programmer dalam JSP, adalah: A. directives C. scripting elements B. actions D. tag libraries 14. JSP biasanya mencakup markup XHTML atau XML. Markup tersebut dikenal sebagai A. float-template data C. free-template data B. float-template text D. fixed-template text

15. Programmer cenderung menggunakan JSP ketika A. bagian kecil dari content merupakan fixed-template data. B. bagian besar dari content merupakan free-template data. C. bagian besar content yang dikirim ke client merupakan fixed-template data dan hanya bagian kecil dari content dibangkitkan secara dinamik dengan kode Java. D. Jawaban A, B, C salah 16. Pada JSP, Objek implisit memiliki 4 scope, yaitu: A. application, page, request, actions B. application, page, request, session C. actions, page, request, session D. Jawaban A, B, C salah 17. Yang diproses sekali saat translasi JSP dan menyebabkan content di-copy ke JSP adalah directive A. Include C. page B. Excludde D. Jawaban A, B, C salah 18. Class dan Interface spesifik untuk pemrograman JSP ditempatkan dalam package A. javax.servlet.jsp dan javax.servlet.jsp.tagext B. javax.servlet dan javax.servlet.http C. javax.jsp dan javax.jsp.tagext D. Jawaban A, B, C salah 19. JSP biasanya dieksekusi oleh bagian Web server yang dirujuk sebagai A. JSP container C. Servlet Container B. Applet container D. Jawaban A, B, C salah 20. Standard actions JSP yang digunakan bersama-sama dengan aksi include, forward, dan plugin untuk menspesifikasikan pasangan nama/nilai tambahan dari informasi-informasi yang digunakan oleh aksi-aksi tersebut, adalah: A. <jsp:setProperty> C. <jsp:useBean> B. <jsp:param> D. <jsp:getProperty> 21. Komponen scripting JSP mencakup: scriptlets, comments, actions, declaratives, escape sequences scriptlets, comments, expression, declarations, escape sequences scriptlets, comments, actions, declarations, escape sequences jawaban A, B, C salah 22. Pernyataan berikut yang benar, adalah: A. Objek dengan scope page ada dalam setiap JSP aplikasi Web tertentu. B. Directives menspesifikasikan informasi global yang tidak berasosiasi dengan request JSP tertentu. C. Action <jsp:include> dievaluasi sekali pada saat translasi page. D. Seperti komentar XHTML, komentar JSP dan komentar script-language muncul di dalam respons terhadap client. A. Salah. An Object with page scope exists in every JSP of a particular Web application (false). Objects with page scope exixt only as part of the page in which they are used (true). Objek dengan scope page hanya ada sebagai bagian page yang 23. Pernyataan berikut yang salah, adalah:

A. Objek dengan scope application adalah bagian dari aplikasi web khusus. B. Tiap page memiliki instances objek implisit page-scope miliknya. C. Action <jsp:setProperty> memiliki kemampuan mencocokkan parameter request kepada property nama yang sama dalam bean melalui penspesifikasian * untuk atribut property. D. Objek dengan scope session ada untuk session browsing keseluruhan client. Bab 20 Applets 23. Yang dapat digunakan untuk mengeksekusi Java applet adalah browser atau ... A. Applet Container C. Applet Compiler B. Appletviewer D. Jawaban A, B, C salah 24. Metode yang dipanggil setiap kali user browser mengunjungi kembali page HTML yang di dalamnya applet berada, adalah: A. start C. stop B. init D. Jawaban A, B, C salah 25. Metode yang dipanggil sekali ketika applet mulai dieksekusi adalah: A. start C. stop B. init D. Jawaban A, B, C salah 26. Metode yang diminta untuk menggambarkan applet adalah: A. destroy C. init B. paint D. Jawaban A, B, C salah 27. Metode yang diminta ketika browser menghapus applet dari memori, adalah: A. start C. stop B. destroy D. Jawaban A, B, C salah 28. Tag-tag HTML yang menspesifikasikan bahwa applet harus dimuat ke dalam applet container dan dieksekusi, adalah: A. <applet> dan </applet> C. <html> dan </html> B. <servlet> dan </servlet> D. Jawaban A, B, C salah