Welcome to Abdul Malik Ikhsan's Blog

Implementasi MVC mggnkn JSTL

Posted in Tutorial JSP, Tutorial Servlet by samsonasik on April 16, 2008

Persiapan :
1. satu gelas kopi.
2. Tomcat yang sudah terkonfigurasi.
3. Copykan library JSTL yaitu standard.jar dan jstl.jar dari tomcat\webapps\examples\WEB-INF\lib ke tomcat\webapps\ROOT\WEB-INF\lib
4. Restart Tomcatnya
5. Let’s Coding…
———-
Siapkan kelas Modelnya (contoh, simpan di WEB-INF\classes\MVCModel)

Code:
package MVCModel;
import java.sql.*;

public class OpenConnect{
private String driver=”com.mysql.jdbc.Driver”;
private Connection con;
private Statement state;
private ResultSet rs;
//konstruktor…
public OpenConnect() throws ClassNotFoundException, SQLException{
Class.forName(driver);
con=DriverManager.getConnection(“jdbc:mysql://localhost/belajarMVC”, “root”,””);
state = con.createStatement();
}
public boolean strSQL(String sql) throws SQLException{
rs = state.executeQuery(sql);
return (rs!=null);
}
public boolean strNext() throws SQLException{
return rs.next();
}
public String getField(String field) throws SQLException{
return rs.getString(field);
}
public void lastrecord() throws SQLException{
rs.last();
}
public int getCount() throws SQLException{
return rs.getRow();
}
public void firstrecord()throws SQLException{
rs.beforeFirst();
}
}

—>compile deh

Selanjutnya, kita buat kelas Controlnya(Contoh, simpan di WEB-INF\classes\MVCControl)

Code:
package MVCControl;
import MVCModel.OpenConnect;

import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;

public class Controller extends HttpServlet{
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
try{
OpenConnect open = new OpenConnect();
open.strSQL(“select *  from buku”);
//letakkan cursor pada akhir record
open.lastrecord();
//dpt jumlah record
int jml = open.getCount();
//letakkan cursor kembali pada awal record
open.firstrecord();

//set atribut jumlah dengan variable jml
request.setAttribute(“jumlah”,jml);

//deklarasi array field2 tabel
String[] field1 = new String[jml];
String[] field2 = new String[jml];

for (int i=0;i<=jml ;i++ )
{
//next ResultSet
open.strNext();

//isi array ke i dengan field2 yang ada…
field1[i] = open.getField(“kodebuku”);
field2[i] = open.getField(“namabuku”);

//isi atribut…
request.setAttribute(“kodenya”,field1);
request.setAttribute(“namanya”,field2);

}
}catch(Exception e){    }
request.getRequestDispatcher(“MVCView/view.jsp”).forward(request,response);
}
}

–>compile deh
Di sini saya contohkan menggunakan database mysql, ada tabel buku dengan field2nya kodebuku dan namabuku.
————
Nah, sekarang, tingggal ditampilkan di View

Code:
<%@ taglib prefix=”c” uri=”http://java.sun.com/jsp/jstl/core&#8221; %>
<table border=”1″>
<tr>
<td>No.</td>
<td>Kode Buku</td>
<td>Nama Buku </td>
</tr>
<c:forEach var=”i” begin=”1″ end=”${jumlah}”>
<tr>
<td>${i}</td>
<td>${kodenya[i-1]} </td>
<td>${namanya[i-1]}</td>
</tr>
</c:forEach>
</table>


Oh, ya, jangan lupa setting DD (Deployment Descriptor-nya) di web-xml, –>tambahkan

Code:
<servlet>
<servlet-name>controller</servlet-name>
<servlet-class>MVCControl.Controller</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>controller</servlet-name>
<url-pattern>/mvc.view</url-pattern>
</servlet-mapping>


—————–
Tinggal testing…

Quote:
http://localhost:8080/mvc.view
Advertisements

Packaging Web Components (JSP)

Posted in Tutorial JSP by samsonasik on April 10, 2008

Pemaketan pada JSP dikenal dengan nama WAR (Web Application Archive), ini digunakan untuk mengarsipkan aplikasi yang didalamnya bisa dimasukkan segala class yang biasa kita tampung di \web-inf\classes, dan file2 jsp kita.
secara default,(menggunakan Tomcat), file war yang terpasang adalah ROOT.war, nah, misal kita coba mengarsipkan yang lain, misalnya wordpress.war, caranya kita masuk ke folder wordpress, kita buat War di situ, di sini saya ambil contoh wordpress.war dengan cara ketik jar -cvf wordpress.war * , * berarti semua file yang ada di dalamnya diikut sertakan, baik file maupun folder.

Code:
F:\Tomcat\webapps\ROOT\wordpress> jar -cvf wordpress.war *
added manifest
adding: connect.jsp(in = 403) (out= 277)(deflated 31%)
adding: handsome.jsp(in = 156) (out= 68)(deflated 56%)
adding: handsome.jsp.bak(in = 144) (out= 91)(deflated 36%)
adding: login.jsp(in = 1072) (out= 494)(deflated 53%)
adding: login.jsp.bak(in = 1058) (out= 485)(deflated 54%)
adding: logout.jsp(in = 234) (out= 162)(deflated 30%)
adding: logout.jsp.bak(in = 235) (out= 162)(deflated 31%)
adding: mvc/(in = 0) (out= 0)(stored 0%)
adding: mvc/input.html(in = 422) (out= 222)(deflated 47%)
adding: mvc/head.jsp(in = 23) (out= 24)(deflated -4%)
adding: show.jsp(in = 14) (out= 16)(deflated -14%)
adding: show.jsp.bak(in = 33) (out= 35)(deflated -6%)
adding: tes.jsp(in = 49) (out= 39)(deflated 20%)
adding: utama.jsp(in = 365) (out= 216)(deflated 40%)
adding: utama.jsp.bak(in = 365) (out= 217)(deflated 40%)

Nah, kita sekarang bisa deploy, caranya , buka http://localhost:8080
masuk ke Tomcat Manager, masukkan username dan password tomcat, akan tampil Tomcat Web Application Manager
di bawah ada WAR file to deploy
tinggal browse, cari file war yang telah kita bentuk, dan deploy, beres deh :
Kita bisa panggil sekarang http://localhost:8080/wordpress

Setting Dynamic path di Tomcat

Posted in Tutorial JSP by samsonasik on April 1, 2008

Hm…, selama ini, yang kita ketahui adalah directory suatu web hanya ada di suatu webroot web container.
Nah, kali ini saya akan membahas dynamic path, maksudnya ? Yang saya maksudkan adalah penggunaan Tomcat
yang tidak cuma tergantung pada satu path aja, misalnya, berada pada F:\tomcat\webapps\ROOT, tapi kita
bisa menambahkan path lain, misalnya, di D:\work\JSP, atau E:\webku\ , atau yang lain, asyik kan ?
Caranya adalah menambahkan file konfigurasi di Tomcat\conf\Catalina\localhost

misalkan kita ingin menambahkan path /wordpress, kita tinggal
tambahkan file wordpress.xml di tomcat\conf\Catalina\localhost

wordpress.xml

Code:
<?xml version=”1.0″ encoding=”UTF-8″?>
<Context docBase=”F:\data samson\work\JSP” path=”/wordpress”/>

berarti, kita bisa panggil
http://localhost:8080/wordpress –> merujuk ke semua file di bawah direktori
F:\data samson\work\JSP

kita bisa menambahkan path2 yang lain semau kita, jadi intinya seperti path2 bayangan yang bisa kita tampilkan semua kita…

asyik kan…