1.1 Apa itu JSP ?
JSP atau yang kita sebut dengan Java Server Pages adalah sebuah pemrograman web
yang berjalan pada sisi server bukan pada sisi
client seperti Java Script, VB Script ataupun
HTML. Ketika bekerja bahasa ini pun sama layaknya seperti
pemrograman Java pada desktop
ataupun pada konsole dos/prompt biasa, yaitu ketika
pertama kali menjalankannya program ini
harus di kompilasi terlebih dahulu. Dan tak perlu
repot-repot mengkompilasinya, sebab web
servernya sendiri pun sudah mengkompilasikannya
dengan menghasilkan file ber-ekstension
*.class.
JSP masih dikategorikan sebagai bahasa pemrograman
web terbaru dibandingkan
kehadirannya dengan CGI/Perl, ASP, CFML dan PHP.
Tapi dengan kehadirannya memasuki
dunia perkembangan teknologi web yang semakin
canggih, maka JSP juga bisa dikatakan
sebagai bahasa pemrograman web yang cukup tangguh,
kuat dan cocok untuk aplikasi yang
besar. Walaupun di Indonesia sendiri masih teramat
jarang web hosting yang menyediakan
fasilitas yang men-supportnya dibandingkan dengan
maraknya distribusi penggunaan PHP
untuk saat ini.
1.2 Mengapa tidak menggunakan Servlet saja?
Memang sebelum adanya bahasa pemrograman JSP,
Servlet lebih dikenal terlebih
dahulu kehadirannya, tapi dengan maraknya distribusi
penggunaan teknologi web pada waktu
itu. Maka akhirnya perusahaan Sun http://java.sun.com pun pada akhirnya
mengeluarkan produk terbarunya yaitu JSP. Tapi
sebenarnya teknologi JSP pun hanyalah
sebuah cuilan/bongkahan dari Servlet sendiri.
Penggunaan Servlet masihlah terlalu rumit dan
masih banyak kekurangannya dibandingkan dengan JSP,
selain kurang bagus untuk aplikasi
berskala besar juga dalam proses penggunaannya kita
harus membutuhkan kode murni yang
sebelumnya harus di kompilasi lewat konsole
dos/prompt dan setelah itu baru dijalankan,
walaupun sebenarnya sama-sama dapat dijalankan pada
web server apache-tomcat dengan
menambahkan/pemodifikasian pada file descriptornya
yaitu web.xml.
Sebelum memulainya, klik pada Control Panel ->
System -> klik tab Advanced ->
Environment Variables.
Instalasi JDK dan Tomcat
Buatlah folder pada Directory folder tomcat
…/webapps/ROOT/amatir/ klik
web
servernya dan ketik listing program berikut :
Berikut adalah listing program ,yang digunakan hanya
sebagai contoh dasar
pemrogramaan web menggunakan JSP.
<HTML>
<HEAD><TITLE>JSP
Dasar</TITLE></HEAD>
<BODY>
<%
out.println("Cilukkk...Baaaaa!");
%>
</BODY>
</HTML>
1. Listing Program format penulisan tanggal
<%@ page language="Java"
contentType="text/html"%>
<%@ page import="java.text.*,java.util.*"%>
<%! //pre-defined declaration
SimpleDateFormat d = null;
%>
<HTML>
<HEAD><TITLE>JSP
Date</TITLE></HEAD>
<BODY>
<%
d = new SimpleDateFormat("EEE, MMM d,
''yy");
out.println( d.format(new Date()) );
%>
</BODY>
</HTML>
2. Listing program pemisah string
<%@ page language="Java"
contentType="text/html"%>
<%@ page import="java.util.*"%>
<%!
StringTokenizer st = null;
%>
<HTML>
<HEAD><TITLE>JSP</TITLE></HEAD>
<BODY>
<%
st = new StringTokenizer("Pemecah String
menjadi kata - kata");
while (st.hasMoreTokens()) {
out.println(st.nextToken() +"<BR>");
}
%>
</BODY>
</HTML>
3. Listing program mengubah/mengganti teks
posisi
<%@ page language="Java"
contentType="text/html"%>
<%@ page import="java.lang.*"%>
<%!
StringBuffer sb,strbaru = null;
String strlama ="";
%>
<HTML>
<HEAD><TITLE>JSP
</TITLE></HEAD>
<BODY>
<%
strlama = "Kenapa, Bego Sekali!";
sb = new StringBuffer( strlama );
strbaru =
sb.replace(sb.length()-7,sb.length()-1,"Banget");
out.println("Kalimat Awal :"+ strlama);
out.println("<BR>");
out.println("Kalimat Terbaru :"+ strbaru);
%>
</BODY>
</HTML>
4. Listing program pembulatan min/max deret
angka
<%@ page language="Java"
contentType="text/html"%>
<%@ page import="java.text.*"%>
<HTML>
<HEAD><TITLE>JSP</TITLE></HEAD>
<BODY>
<%
NumberFormat nf = NumberFormat.getInstance();
double db = 12345.6789;
out.println("Nilai Asli :"+ db);
out.println("<BR>");
nf.setMinimumFractionDigits(1);
nf.setMaximumFractionDigits(2);
out.println( nf.format(db) );
%>
</BODY>
</HTML>
5. Listing program copy file sederhana
<HTML>
<HEAD><TITLE>FORM</TITLE>
</HEAD>
<BODY>
<FORM method="POST"
action="jspp5.jsp">
<P>File : <INPUT type="file"
name="file" size="40"></p>
<P><INPUT type="submit"
value="Submit"></p>
</FORM>
</BODY>
</HTML>
Form Upload
<%@ page language="Java"
contentType="text/html"%>
<%@ page import="java.io.*"%>
<%!
java.io.File f = null;
java.io.FileOutputStream fos = null;
java.io.DataOutputStream dos = null;
java.io.FileInputStream fis = null;
java.io.DataInputStream dis = null;
String smb = ""; //sumber file
String tjn =
"C:/tomcat/webapps/ROOT/amatir/"; //tujuan file
String namafile = "";
%>
<HTML>
<HEAD><TITLE>JSP</TITLE></HEAD>
<BODY>
<%
smb = request.getParameter("file");
try
{
f = new File( smb );
byte [] buf = new byte[(int) f.length()];
namafile = smb.substring(
smb.lastIndexOf("\\") + 1 ,smb.length());
//Baca aliran data
fis = new java.io.FileInputStream( smb );
dis = new java.io.DataInputStream(fis);
dis.read(buf);
fis.close();
dis.close();
//Tulis aliran data
fos = new java.io.FileOutputStream(
tjn.concat(namafile) );
dos = new java.io.DataOutputStream( fos );//kirim
aliran data
dos.write(buf,0,buf.length);
fos.close();
dos.close();
}catch(IOException er) {
out.println(er.getMessage()); }
out.println("File Berhasil Di Copy");
%>
</BODY>
</HTML>
Penggunaan program JSP yang terhubung ke dalam
database, disini menggunakan
MySQL. Sebelum menggunakannya pastikan memiliki
paket mysqlconnector, yang dapat
didownload pada situsnya mysql.com :
• Listing program input data
<%@ page language="Java"%>
<%@ page import="java.sql.*"%>
<%!
String urldb =
"jdbc:mysql://localhost:3306/tes";
String usr = "";
String pwd = "";
String sql = "";
String form = "";
Connection con = null;
PreparedStatement prep = null;
%>
<HTML>
<HEAD><TITLE>JSP Database</TITLE></HEAD>
<BODY>
<%
form = request.getParameter("nama");
try
{
Class.forName("org.gjt.mm.mysql.Driver");
con = DriverManager.getConnection(urldb,usr,pwd);
sql = "INSERT INTO tbnama VALUES(?,?)";
prep = con.prepareStatement(sql);
prep.setInt(1,0);
prep.setString(2,form);
prep.addBatch();
int s = prep.executeUpdate();
out.println("Nama Anda Sudah Tersimpan");
System.out.println("Data Ter-Input");
if( con != null )
con.close();
if( prep != null )
prep.close();
}catch(SQLException sqler)
{ out.println("Tidak Dapat Menginput
Nama"); }
%>
</BODY>
</HTML>
• Listing program menampilkan data
<%@ page language="Java"%>
<%@ page import="java.sql.*"%>
<%!
String urldb =
"jdbc:mysql://localhost:3306/tes";
String usr = "";
String pwd = "";
String sql = "";
String form = "";
Connection con = null;
PreparedStatement prep = null;
ResultSet rs = null;
%>
<HTML>
<HEAD><TITLE>JSP
Database</TITLE></HEAD>
<BODY>
<%
try
{
Class.forName("org.gjt.mm.mysql.Driver");
con = DriverManager.getConnection(urldb,usr,pwd);
sql = "SELECT *FROM tbnama";
prep =
con.prepareStatement(sql,rs.TYPE_FORWARD_ONLY,rs.CONCUR_READ_ONLY);
prep.setQueryTimeout(0);
rs = prep.executeQuery();
rs.setFetchDirection( rs.FETCH_FORWARD );
rs.beforeFirst();
while(rs.next()) {
out.println(rs.getInt(1) +"."+
rs.getString(2) +"<BR>");
}
if( con != null )
con.close();
if( prep != null )
prep.close();
if( rs != null )
rs.close();
}catch(SQLException sqler)
{ out.println("Tidak Dapat Menampilkan
Nama"); }
%>
</BODY>
</HTML>