Teknik dengan Menumpuk Pada VIEW dari APLIKASI.
Alur program:
- Masuk form login ( index.jsp)
- Isi username dan password
- Klik login
- Jika berhasil akan masuk ke form main.jsp dan jika tidak berhasil akan ada peringatan (do you want firefox to remember the password
- Jika klik logout maka akan keluar
Langkah-langkah pembuatan program:
Pada Percobaan ini kita menggunakan phpmyadmin (mysql5)
Dengan nama database : session dan table : users
Didalam table users terdapat user dan password
Gambar1 Pensettingan Database
Gambar2 Pensettingan Database
2. Insert table users
Gambar3 Insert
3. Tampilan pada index.jsp
Gambar4 index.jsp
Gambar5 index.jsp
4. Tampilan pada main.jsp
Gambar6 main.jsp
5. Sintaks connect.jsp
Gambar7 Sintaks connect.jsp
Analisa connect.jsp
- · String koneksi ="jdbc:mysql://localhost:3306/session";
koneksi = nama variabel untuk menghubungkan ke mysql 5
session = nama database yang dibuat di mysql5
- · Connection con = DriverManager.getConnection(koneksi,"root","");
Koneksi akan diambil dari(namavariabel,”username dari mysql5”, “password mysql5”);
Statement akan disimpan di st
Hasil akan disimpan di rs;
6. Sintaks index.jsp
Gambar8 Index.jsp
Gambar9 Index.jsp
gambar10 Index.jsp
Analisa Index.jsp
- String username = request.getParameter("username");
String password = request.getParameter("password");
Pembuatan variabel dengan nama username dan password yang permintaannya diambil dari name pada sintaks html
- · if (username==null) { username ="";}
if (password==null) { password=""; }
untuk pengkondisian ketika username dan password diisi
- · rs = st.executeQuery("select * from users where user='" + username + "' and password='" + password +"'");
Pengecekan untuk mengeksekusi dari database yang bernama users
user(nama didatabase)=’” + username (nama di string(variabel))’”
password(nama didatabase)=’” + password (nama di string(variabel))’”
- · response.sendRedirect("main.jsp");
jika kondisi terpenuhi maka respon akan dikirim ke main.jsp
- · response.sendRedirect("index.jsp");
jika kondisi tidak terpenuhi maka respon akan dikirim ke main.jsp
7. Sintaks main.jsp
Gambar11 main.jsp
Analisa main.jsp
- · if ((String) session.getAttribute("sessionusername") == null
&& (String) session.getAttribute("sessionpassword") == null) {
response.sendRedirect("index.jsp");
} else if ((String) session.getAttribute("sessionusername") != null){
out.print("Selamat Datang ...");
out.print("<a href = logout.jsp> logout </a>");
}
Pengkondisian jika variabel yang diambil dari sessionusername tidak terpenuhi
Dan variabel yang diambil dari sessionpassword tidak terpenuhi
Maka response akan dikirimkan ke index.jsp
Jika variabel yang diambil dari sessionusername terpenuhi maka akan ditampilkan
“Selamat Datang “ + Logout (ketika logout diklik maka akan link ke logout.jsp)
8. Sintaks logout.jsp
Gambar12 logout.jsp
Analisa logout.jsp
- · session.removeAttribute("username");
session.removeAttribute("password");
Untuk menghapus session username dan password
untuk mendelete dari memori
- · response.sendRedirect("index.jsp");
selanjutnya response akan dihubungkan ke index.jsp
PERCOBAAN 2.
Teknik dengan Membagi Aplikasi Menjadi Tiga Bagian.
Alur program:
- Masuk form login ( index.jsp)
- Isi username dan password
- Klik login
- Jika berhasil akan masuk ke form selamatdatang.jsp dan jika tidak berhasil akan ada peringatan (do you want firefox to remember the password
- Jika klik logout maka akan keluar
Langkah-langkah pembuatan program:
1. Sintaks login.jsp
Gambar13 login.jsp
2.Sintaks view.jsp
Gambar14
View.jsp
Analisa view.jsp
- <jsp:useBean id="db" scope="request" class="logbean.loginbean">
db = nama instan dg scope= request dan class="nama package.namaclass didalam package"
sama seperti:
loginbean db=new loginbean()
- <jsp:setProperty name="db" property="username" value='<%=request.getParameter("username")%>'/>
db = nama instan dg property= username dan value="request yang diambil dari username"
<jsp:setProperty name="db" property="password" value='<%=request.getParameter("password")%>'/>
</jsp:useBean>
- <jsp:forward page="login">
lanjut ke halaman login
- <jsp:param name="username" value="<%=db.getusername()%>"/>
param dengan nama "username" value=" diambil dari instan db yaitu username
- <jsp:param name="password" value="<%=db.getpassword()%>"/>
param dengan nama "password" value=" diambil dari instan db yaitu password
3.Sintaks selamatdatang.jsp
Gambar15
selamatdatang.jsp
Analisa selamatdatang.jsp
if(session.getAttribute("username")!=null && session.getAttribute("username")!=""){
String user=session.getAttribute("username").toString();
%>
Tanda <% %> menyatakan salah satu tag JSP yang dikenal dengan sebutan tag scriplet. Tag tersebut mengisyaratkan bahwa kode yang ada didalamnya adalah kode JSP. Di dalam tag tersebut sebenarnya anda bisa menuliskan pernyataan-pernyataan Java. Dalam hal ini setiap pernyataan diakhiri dengan titik koma (;). Pernyataan adalah satu instruksi lengkap yang akan diproses oleh Java.
- if(session.getAttribute("username")!=null && session.getAttribute("username")!=""){
pengkondisian session username
- String user=session.getAttribute("username").toString();
Pembuatan variabel dengan nama user yang merupakan data yang diambil dari inputan
- <tr><td align="center"><h1>Selamat Datang <b><%=user%></b></h1></td></tr>
Akan dtampilkan tulisan “Selamat Datang” + nama user (berdasarkan hasil dari inputan username)
- <tr><td align="center"><a href="logout.jsp">Logout</a></td></tr>
Selanjutnya ketika logout diklik maka akan link ke logout.jsp
response.sendRedirect("login.jsp");
Jika tidak, maka response akan mengirim ke login.jsp
Gambar16
logout.jsp
Analisa logout.jsp
- · session.removeAttribute("username");
session.removeAttribute("password");
Untuk menghapus session username dan password
untuk mendelete dari memori
- · response.sendRedirect("index.jsp");
selanjutnya response akan dihubungkan ke index.jsp
Gambar17
login.java
Analisa login.java
- public class login extends HttpServlet {
class dengan nama login yang menginduk ke HttpServlet
- public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
- response.setContentType("text/html");
response akan di setting dengan type text/html
- PrintWriter out = response.getWriter();
- System.out.println("MySQL Connect Example.");
Connection conn = null;
String url = "jdbc:mysql://localhost:3306/";
String dbName = "session";
String driver = "com.mysql.jdbc.Driver";
String userName = "root";
String pass = "";
String username = "";
String password = "";
String strQuery = "";
Statement st = null;
ResultSet rs = null;
HttpSession session = request.getSession(true);
pembuatan variabel-variabel
Class.forName(driver).newInstance();
conn = DriverManager.getConnection(url + dbName, userName, pass);
if (request.getParameter("username") != null
&& request.getParameter("username") != "" && request.getParameter("password") != null
&& request.getParameter("password") != "") {
username = request.getParameter("username").toString();
password = request.getParameter("password").toString();
strQuery = "select * from users where user='" + username + "'and password='" + password + "'";
System.out.println(strQuery);
st= (Statement) conn.createStatement();
rs=st.executeQuery(strQuery);
int count = 0;
while (rs.next()) {
session.setAttribute("username", rs.getString("user"));
count++;
}
if (count > 0) {
response.sendRedirect("selamatdatang.jsp");
} else {
response.sendRedirect("login.jsp");
}
} else
{
response.sendRedirect("login.jsp");
}
System.out.println("terkoneksi ke database");
conn.close ();
System.out.println ("koneksi terputus dari database");
}catch(Exception e){
e.printStackTrace();
}
}
}
jika ada pertanyaan silahkan comment karena tidak semuanya dijelaskan secara detail
PERBEDAAN DARI 2 PERCOBAAN: