Ads 468x60px

Rabu, 25 Mei 2011

Apa itu Session

Pengertian Session
  • Interaksi antara pengguna web dan aplikasi web HTTP non statefull stateful(masuk secara bersama-sama).
  • Request yang baru berarti cara pandang baru dari pihak http
  • Session secara umum adalah untuk menyimpan informasi 

Obyek HttpSession bisa digunakan untuk memegang conversational state dengan sebuah client tertentu. Di dalam obyek HttpSession bisa disimpan user information, shopping cart dll. Untuk mendapatkan obyek HttpSession, Anda memanggil method getSession() dari obyek HttpServletRequest.

  •  Untuk menyimpan obyek di HttpSession Anda bisa meng-invoke method setAttribute().
  •  Untuk membaca obyek di HttpSession Anda bisa meng-invoke method getAttribute()
  • Untuk me-remove obyek dari HttpSession Anda bisa meng-invoke method removeAttribute().
  • Dan Anda bisa meng-invalidate obyek HttpSession dengan method invalidate().

Memeriksa keberadaan session
  •  Gunakan obyek HttpServletRequest yaitu dengan method getSession(false) untuk memeriksa apakah obyek HttpSession bernilai null.

Fungsi session suatu obyek
  •  Jika session sudah ada, getSession(), getSession(true), and getSession(false) akan mengembalikan session yang sudah ada.
  • Jika session belum ada, getSession() dan getSession(true) akan membuatkan satu yang baru dan getSession(false) akan mengembalikan nilai null.
Reade more >>

Senin, 23 Mei 2011

MVC itu Apa ?

MVC adalah sebuah pola/pattern dari sebuah struktur penulisan/pembuatan aplikasi dan tidak terpaku pada satu bahasa pemprograman, jadi semua bahasa pemprograman bisa menggunakan pola MVC ini dalam pembuatan aplikasinya. dari sini kita ketahui, bahwa MVC bukan sebuah framework… itu hanya sebuah pola, pola yang bagaimana…?? pola yang memisahkan antara bisnis logic dengan interface serta controller dari sebuah aplikasi… loh apa lagi itu…??
nah, maksudnya begini… MVC terdiri dari Model-View-Controller, dimana Model ini adalah bagian pemisah yang didalam Model ini terdapat bisnis logic atau perintah-perintah yang berhubugan dengan sintax sql atau berhubungan dengan database, contohnya seperti bagian untuk penginputan ke databasenya, itu di handle agar orang yang mengerjakan sintax2 sql ini tidak ribet karena sudah di pisahkan dari bagian viewnya.. kemudian View adalah bagian yang menghandle interaksi antara user dan aplikasi.. istilah kerennya interface.. contoh dari interface ini seperti yahoo messanger yang di install di komp kita.. nah bagian interface itu yang tombol2 layar2 yang bisa di close dan di add teman.. itu contoh interface.. klw di toko2 itu aplikasi kasir nya..
terakhir adalah bagian Controller… sesuai dengan artinya adalah pengaturnya. apa yang di aturnya..?? maksudnya adalah bagian yang menghandle alur dan aturan dari aplikasi yang dibuat. contohnya adalah button di web saat kita click dia akan menuju kemana dan kemana.. nah yang mengatur tentang kepergian atau pergantian halaman itu adalah controller… pada bahasa pemprograman php, MVC ini dapat di handle oleh satu framework saja dan sudah cukup… untuk bahasa pemprograman java, untuk mengimplementasikan MVC ini belum cukup dengan hanya satu framework… di bilang bisa sih bisa.. tapi kurang terstruktur..
Di java memiliki banyak framework yang memiliki keunggulan dan fungsi yang berbeda-beda. Seperti yang saya ketahui itu misalnya, framework hibernate yang terkenal dalam dunia java itu bertugas atau memiliki fungsi yaitu menghandle bagian Model atau yang berhubungan dengan database. Karena hibernate ini memiliki fungsi ORM(Object Relational Management: CMIIW)…yang maksudnya adalah table2 dan field2 yang ada pada db kita diwakilkan oleh object2 yang ada pada program java. Sehingga aplikasi tidak langsung berhubungan dengan database. Di bagian Model ini terdapat beberapa framework lain yang sama fungsinya seperti EJB,Ibatis dan lainnya.
Kemudian adalah bagian View, di java untuk interface dapat menggunakan Swing,Awt yang interaktifnya itu berupa desktop atau swt yang terdapat pada eclipse dan pada aplikasi java webbase itu terdapat jsp dan velocity atau freemaker. dari bagian yang menghandle interface ini terdapat kelebihan dan kekurangan masing2, contoh untuk Swing dengan swt. jika dibandingkan dari kecepatan, maka swt lah pemenangnya, itu dikarenakan swing memiliki beberapa layer untuk sampai ke tampilan user jika dijalankan beda dengan swt yang melewati layer2 yang ada pada swing. tapi swt ini ternyata jarang atau belum banyak digunakan . itu dikarenakan ada perbedaan antara swt di windows dengan di os lain, jadi untuk pindah terdapat konfigurasi tertentu.
Reade more >>

Session Login


PERCOBAAN 1. 
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:

  
 1. Pembuatan Database
             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

  • ·         session.invalidate();
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

  • else{
                    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

  • ·         session.invalidate();
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
  •         try {
            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:

 
Reade more >>

Sabtu, 21 Mei 2011

JAva Itu Apa !


Java itu Apa!
  • Java adalah bahasa pemrograman yang awalnya dikembangkan oleh James Gosling di Sun Microsystems
           ( yang sekarang merupakan anak peusahaan dari oracle Corporation)
  • Java mempunyai kemiripan sintaks dengan C dan C++
  • Java lebih sederhana dan simple
  • Java berbasis kelas dan OOP
  • Berjalan di berbagai platform sistem operasi:
     
     
     
     Sumber : Elex Media Komputindo (All About Java Application)
    Reade more >>