Template helper menggunakan Servlet Mei 3, 2009
Posted by samsonasik in Tutorial JSP, Tutorial Servlet.trackback
Hm…, lama nih saya ga `nyentuh` servlet & JSP, hitung2 membuka lagi memori lama(cie…cie..), kemarin saya baca buku “Web Development with Java Using Hibernate, JSPs, and Servlets” karya Tim Downey, ternyata banyak hal yang saya belum ketahui, contohnya tentang materi yang akan kita bahas kali ini.
Konsep penggunaan template helper pada berbagai macam framework maupun bahasa pemrograman selalu mengacu pada reuse template include, yang pada intinya akan memudahkan programmer dan designer itu sendiri, serta menghemat memori karena menghemat source code yang ada.
Dalam Java Web Development, kita bisa menggunakan servlet untuk menginclude header & footer secara otomatis. Secara class diagram dapat digambarkan sebagai berikut :
Berikut Source Code untuk class HelperBase :
package Helpers;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
*
* @author samsonasik
*/
public class HelperBase extends HttpServlet {
protected HttpServletRequest request;
protected HttpServletResponse response;
public HelperBase(){}
public HelperBase(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.request = request;
this.response = response;
}
}
Kemudian, source code untuk ControllerHelper :
package Helpers;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.*;
/**
*
* @author samsonasik
*/
public class ControllerHelper extends HelperBase {
public ControllerHelper(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
super(request, response);
}
public void doGet(String address) throws ServletException, IOException {
request.getSession().setAttribute("helper", this);
request.getRequestDispatcher("/header.jsp").include(request, response);
request.getRequestDispatcher("/"+address).include(request, response);
request.getRequestDispatcher("/footer.jsp").include(request,response);
}
}
———–
Nah, sekarang kita sudah punya ControllerHelper, sekarang,kita bisa gunakan untuk berbagai macam controller, tinggal instansiasi kelas ControllerHelper dan gunakan method doGet(address) seperti di bawah ini :
package Controllers;
import Helpers.ControllerHelper;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
*
* @author samsonasik
*/
public class TestController extends HttpServlet {
ControllerHelper helper ;
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
helper = new ControllerHelper(request, response);
helper.doGet("index.jsp");
}
}
Referensi : Web Development With Java Using Hibernate, JSPs,and Servlets – Tim Downey : 2007



Komentar»
No comments yet — be the first.