Kamis, 15 Desember 2011

Web Programming UTS Semester 5

Pertemuan 1

Introduction of Internet

Sebuah jaringan global komputer ini dikembangkan 4 dekade yang lalu dengan dana yang diberikan oleh US Department of Defends
Awalnya dirancang untuk menghubungkan sistem komputer utama dari belasan universitas dan lembaga penelitian.

Introduction of Web

Web adalah saluran yang kuat untuk pengiriman konten
- Mudah untuk mengakses, tidak perlu klien khusus, hanya browser

Banyak perusahaan menginginkan "pasar" produk dan perusahaan mereka hidup di Web

Berdasarkan tren, aplikasi web meningkat secara signifikan

History of the World Wide Web

WWW
- Memungkinkan pengguna komputer untuk mencari dan melihat dokumen berbasis multimedia

- Diperkenalkan pada tahun 1990 oleh Tim Berners-Lee

Internet saat ini
- Mencampur komputasi dan teknologi komunikasi
- Membuat informasi terus-menerus dan langsung tersedia bagi siapa saja dengan sambungan

Web Evolution

Web seperti halaman statis: profil perusahaan, produk, nomor kontak

Dynamic Web untuk mendukung Query Produk, personalisasi

Hotmail diperkenalkan

e-Shopping diperkenalkan -> B2C, B2B

Layanan Web memperkenalkan paradigma baru untuk Web Programming

Web Technologies

Web Server,Database Server,Application Server,Firewall,SSL,HTTPS,FTP,Domain

Web Application

One stop shopping à Amazon.com

Web Portal à yahoo.com

Entertainments (games), finance, Email, Collaborations (groups), Search engine

B2B Portal

Banking: online banking, payment gateway

eCommerce

eEducation

Programming Language

Web Design 1 .HTML, XHTML 2. Style Sheet (CSS) 3.XML, XSL, XSLT

Language Choice: 1.Client Side Scripting: VBScript, Java script 2.Server Side Scripting: PHP, ASP, JSP 3.Java (J2EE) 4.Visual Studio.NET

Development Tools

Content Authoring 1.Notepad 2.Ms Frontpage 2003 3.Macromedia Dreamweaver 8.0

Programming (IDE)

Java:

Eclipse, Netbeans 5.5 , JDeveloper, JBuilder X

.NET:

Visual Studio .NET

Design Pattern and Framework

Design Pattern dapat memberi kita latihan bagaimana cara membangun aplikasi yang baik

Design Pattern sebagai “proven recipe” untuk bagaimana cara mendesain program

Framework secara sederhana mempercepat pengembangan jaringan yang menyediakan kerangka

Struts Framework

Pertemuan 2

Web Design Fundamental

Important about designing web :

Desain Informasi

Desain antarmuka pengguna

Desain Grafis

Tools for Web Design:

Authoring konten (HTML Editor)

Adobe Photoshop, Illustrator

HTML Basic

HTML

HyperText Markup Language

Tidak prosedural

Markup language

Mengidentifikasi elemen halaman browser sehingga dapat ditampilkan pada layar komp

Digunakan untuk memformat teks dan informasi

Ditandai dengan elements, digambarkan oleh tag

Tags: kata kunci yang terdapat dalam tanda kurung sudut “[]"

HTML tags

Not case sensitive

Baik untuk menyimpan semua surat dalam satu kasus

Lupa untuk menutup tag adalah kesalahan sintaks

Simple HTML Pages

Web Programming

Saya Mahasiswa UBinus


Selamat Datang di Web Saya

Font Formatting

color=blue size=5>

Saya Mahasiswa UBinus<br>

Selamat Datang di Web Saya

Marquee

UBinus Cute HomePage

Ordered List

  1. Sayangilah Ibumu melebihi sayangmu dengan do’i mu

  2. Hormatilah dosenmu melebihi hormatmu pada Pak Polisi

  3. Jangan malas belajar text book dan internet

Unordered List

  • Training
  • Konsultasi

Hyperlink and Images

Kita dapat menggunakan Hyperlink untuk membuat user berpindah ke lokasi yang lain

Hyperlink dapat digunakan secara internal (within same page) or eksternal

Syntax:


Advanced Formatting

Table

Frame

Cascade Style Sheet (CSS)

XSL (XML Style Sheet)

Table

-> baris

-> kolom

no nama

Inputbox and Password

Inputbox and password berguna untuk memasukkan data

Masukkan nama Anda :


dan Password :


Check and Radio Button

Negara mana yang ingin anda kunjungi:

<input type="Checkbox" name="cb value="1">Asia

Afrika

North Amerika

Europe

Jenis kelamin Anda ?

<input type="radio" name="cb value="pria">Laki-Laki

Wanita

Text Area

TextArea sangat berguna untuk memasukkan data yang lengkap

Mohon masukkan alamat lengkap Anda:

name="address" rows=5 cols=50>

Reset and Submit Button

Reset Button untuk membersihkan pesan, submit button untuk mengsubmit data

<input type=submit value="Kirim">

Frame

UBinus Homepage

Pertemuan 3

Client-Side Programming

HTML is good for developing static pages

Dapat menentukan teks / gambar tata letak, presentasi, link..

Halaman web tampak sama setiap kali diakses

Dalam rangka untuk mengembangkan interaktif / halaman reaktif, harus mengintegrasika pemrograman dalam beberapa bentuk atau lain

client-side programming

§ Program yang ditulis dalam pemrograman terpisah (or scripting) language

contoh : JavaScript, JScript, VBScript

    • Program-program HTML tertanam di halaman web dengan tag untuk mengidetifikasi komponen program

Contoh :

    • Browser mengeksekusi program seperti load halaman, mengintregasikan output dinamis, program seperti halaman load, mengintegrasikan output dinamis program dengan konten statis HTML
    • Dapat memungkinkan user untuk masukan informasi dan proses itu, mungkin akan menggunakannya memvalidkan input sebelum dikirim dari server jauh

User-Defined Functions in JAVA SCRIPT

Definisi fungsi sama dengan C++/java, kecuali :

Tidak return type untu fungsi (since variables are loosely typed)

Tidak ada penulisan variable untuk tiap parameter(since variables are loosely typed)

by-value parameter passing only (parameter gets copy of argument)

Pertemuan 4

OnLoad & OnUnload

Peristiwa-peristiwa paling sederhana adalah ketika halaman dibuka atau diturunkan

Atribut pada onload tag menentukan kode javascript yang secara otomatis dijalankan ketika halaman di-load

Yang membongkar juga atribut kode javascript yang ditetapkan secara otomatis dijalankan ketika meninggalkan halaman browser

Radio buttons

Radio buttons sama seperti check boxes, tetapi hanya 1 yang bisa di pilih dari pemilihan yang ada.

JavaScript & Timeouts

Untuk menset fungsi timeout dapat di gunakan untuk mengeksekusi code di waktu yang lain

setTimeout(JavaScriptCodeToBeExecuted, MillisecondsUntilExecution)

Cookies & JavaScript

Ingat bahwa cookies adalah file data yang tersimpan pada komputer klien

Dapat diakses dan / atau dimodifikasi oleh server

Juga dapat di akses dan / atau dimodifikasi secara langsung oleh javascript dalam halaman

potential applications:

e-commerce: mengingat nama konsumer, terakhir datang / pembayaran, password, …

tutorials: Ingat pengalaman masa lalu, kinerja pada kuis, …

games: mengingat nilai terbaik, waktu terbaik, …

Setiap halaman web mempunyai cookies sendiri masing-masing

document.cookie is a string of attribute=value pairs, separated by ;

"userName=Dave;score=100;expires=Mon, 21-Feb-01 00:00:01 GMT"

Pertemuan 5

Web Fundamental

Web browsers and servers

Internet adalah “hanya” satu set jaringan saling berhubungan secara longgar

Satu set area lokal jaringan yang terhubung melalui wide area network

Tidak ada kontrol terpusat melalui wide area network

Segmen jaringan interkoneksi melalui router

Router adalah komputer khusus yang mengelola data paket

TCP/IP adalah protokol data universal pada jaringan

Format yang sebenarnya, konten kiri ke tingkat lebih tinggi protokol, seperti web (HTTP)

Web Server Basic

Tugas

Mendengarkan Port

Ketika seorang klien tersambung, membaca, http request

Menjalankan beberapa fungsi lookup

HTTP mengirim respon dan data yang di minta

HTTP Protocol Definitions

HTTP is…

Designed for document transfer

Generic

not tied to web browsers exclusively

can serve any data type

Stateless

no persistant client/server connection

TCP/IP

IP menyediakan metode mendistribusika data dalam paket, dapat mendistribusikan paket-paket ke tujuan melalui router yang berbeda, dan dapat mengatasi kemacetan dengan cara ini

TCP menyediakan virtual circuit, deteksi error dan koreksi, ulangi permintaan otomatis, dan terpercaya lainnya end-to-end komunikasi, menggunakan protokol IP untuk transmisi (TCP dirancang untuk akurat, tidak selalu tepat waktu, komunikasi)

TCP menangani paket data di tempat tujuan karena mereka dapat tiba rusak karena skema routing IP untuk menghindari kemacetan

TCP/IP bersama-sama menyediakan untuk fungsi yang paling umum digunakan di internet yaitu e-mail, transfer file, dan dasar dari protokol HTTP untuk dokumen halaman web

World Wide Web

Web adalah terbesar di dunia klien / server sistem

Komunikasi terjadi melalui pesan lewat

Dalam browser, pilih URL halaman yang diinginkan

Browser meminta halaman dari server

Server menjawab dengan pesan yang berisi

Jenis halaman (HTML, gif, pdf, zip, …)

Halaman isi

Browser menggunakan info untuk jenis halaman ditampilkan dengan benar

Jika halaman berisi item lain (images, applets, …),

Browser harus meminta masing-masing secara terpisah

HTTP

Hypertext transfer protocol (HTTP):

Protokol tingkat aplikasi untuk didistribusikan, kolaboratif, sistem informasi hypermedia

Generik, tanpa kewarganegaraan, berorientasi objek

Dapat digunakan untuk banyak tugas, seperti nama server & system manajemen objek terdistribusi

Bahasa dasar web

HTTP/1.0 hanya memperbolehkan pesan koneksi yang kurang

§ Setiap request / response memerlukan sambungan baru

§ Untuk mendownload halaman dengan gambar memerlukan beberapa sambungan

Dapat membebani server, membutuhkan banyak biaya overhead

HTTP/1.1 menyediakan koneksi terus-menerus secara default

§ Sekali klien & server terhubung, tetap buka sampai diperintahkan untuk menutupnya (or timeout)

Mengurangi jumlah koneksi, menghemat overhead

    • Klien dapat mengirimkan beberapa permintaan tanpa menunggu jawaban

e.g., can request all images in a page at once

Response Header Fields

Baris pertama dari respon server berisi kode status

200 OK

Permintaan berhasil di proses

301 Pindah secara permanen

Dokumen sudah dipindahkan

304 Tidak di ubah

Dari versi cache up-to-date

400 Permintaan buruk

Syntax kesalahan dalam permintaan klien

403 dilarang

Klien tidak di perbolehkan mengakses(e.g., protected)

404 tidak ditemukan

Berkas tidak dapat ditemukan

500 kesalahan server internal

Server gagal

503 layanan tidak tersedia

kelebihan beban server

Request Header Fields

di samping kode status, respon server dapat mencakup

klien dapat menentukan informasi tambahan dalam permohonan
User-Agent menentukan versi browser

Referer memberitahu server di mana pengguna berasal dari
berguna bagi pelanggan liar dan pelacakan

Form Berisi alamat email dari pengguna
biasanya tidak digunakan untuk alasan privasi

Otorisasi dapat mengirim username & password
digunakan dengan dokumen-dokumen yang memerlukan otorisasi

Jika-Diubah-Sejak hanya mengirim dokumen jika lebih baru dari tanggal tertentu
digunakan untuk caching

Other Request Methods

HEADàmirip dengan GET, tetapi hanya permintaan informasi header berguna untuk memeriksa untuk melihat apakah sebuah dokumen ada, bagaimana baru-baru ini

POSTàmirip dengan GET, tapi encode input berbeda berguna untuk mengirimkan isi pada formulir program CGI, dan juga sering digunakan dalam naskah PHP untuk mengirimkan informasi

PUTàmeng-upload dokumen ke server baru dalam HTTP/1.1

DELETEàmenghapus sebuah dokumen dari server baru dalam HTTP/1.1

Caching

cache browser halaman untuk menyimpan download

mempertahankan penyimpanan sementara (cache) untuk halaman terakhir

saat halaman diminta, periksa untuk melihat apakah sudah ada di cache

jika tidak dalam cache, isu permintaan GET

ketika pesan respons tiba,

halaman tampilan dan simpan dalam cache (bersama dengan header info)

jika sudah disimpan dalam cache, kirimkan permintaan GET dengan Jika-Diubah-Sejak header set ke data pada halaman yang di-cache

ketika pesan respons tiba,

jika kode status 200, kemudian menampilkan dan simpan dalam cache

jika kode status 304, kemudian menampilkan versi tersimpan dan bukan

Cookies

Message HTTP lewat adalah berbasis transaksi, tanpa negara

banyak aplikasi e-commerce memerlukan memori gigih interaksi pelanggan

e.g., amazon.com
mengingat nama Anda, kartu kredit, pembelian masa lalu, kepentingan
Situs lain menggunakan "shopping cart" untuk pembelian, login untuk akses, dll

Netscape solusi: cookie

cookie adalah kumpulan informasi tentang pengguna, dan browser dapat menyimpan beberapa informasi tentang mesin yang dapat kemudian meminta

Server dapat men-download sebuah cookie pada komputer klien dengan menggunakan "Set-cookie" Header tanggapan
Set-Cookie: CUSTOMER = Alex_Thompson; PATH = /; expires = Kamis, 29-Jan-2010 12:00:00

ketika pengguna kembali ke URL di jalan tertentu, browser mengembalikan data cookie sebagai bagian dari permintaan
Cookie: CUSTOMER = Alex_Thompson

Pertemuan 6

Client-Server Relationship
Revisited

Dalam hubungan client-server, permintaan klien bahwa beberapa tindakan dilakukan dan server melakukan aksi dan merespon ke klien.

Model komunikasi meminta-merespons model merupakan dasar untuk tampilan tingkat tertinggi dari jaringan di Jawa - servlets dan JavaServer Pages (JSP).

Sebuah servlet memperluas fungsionalitas dari sebuah server, seperti web server yang melayani halaman web ke browser pengguna menggunakan protokol HTTP. Sebuah servlet hampir bisa dianggap sebagai sebuah applet yang berjalan di sisi server - tanpa wajah. Java servlets membuat banyak aplikasi web mungkin.

Paket javax.servlet dan javax.servlet.http menyediakan kelas-kelas dan interface untuk mendefinisikan servlets. Paket javax.servlet.jsp dan javax.servlet.jsp.tagext menyediakan kelas-kelas dan interface yang servlet memperluas kemampuan untuk JSP.

Menggunakan sintaks khusus, JSP memungkinkan halaman Web pelaksana untuk membuat halaman yang merangkum fungsi Java dan bahkan scriplets menulis kode Java aktual langsung ke halaman.

Pelaksanaan umum permintaan-model respons antara Web browser dan Web server. Ketika seorang pengguna memilih situs Web untuk melihat-lihat melalui browser (aplikasi client), permintaan dikirim ke server Web yang sesuai (aplikasi server). Server biasanya merespon klien dengan mengirimkan halaman Web sesuai XHTML.

Servlets yang efektif untuk mengembangkan solusi berbasis web yang membantu menyediakan akses yang aman ke sebuah situs Web, berinteraksi dengan database atas nama klien, secara dinamis menghasilkan dokumen XHTML kustom untuk ditampilkan oleh browser dan memelihara informasi sesi yang unik untuk setiap klien.

Static and Dynamic
Web Content

Pertimbangkan bagaimana sebuah halaman web yang ditampilkan oleh browser.

Biasanya, halaman web dibuat menggunakan HTML dan disimpan sebagai sebuah file di web server. Seorang pengguna memasukkan URL untuk file dari web browser. Kontak browser web server dan permintaan file. Server menemukan file dan kembali ke browser. Browser kemudian menampilkan file bagi pengguna.

Informasi statis disimpan dalam file HTML. HTML file dapat diperbarui, tetapi pada waktu tertentu, setiap permintaan file yang sama persis kembali konten yang sama. Isinya tidak berubah peduli siapa yang meminta file.

Tidak semua informasi, bagaimanapun, adalah statis di alam. Ingat, tugas pemrograman pertama. Halaman HTML yang dihasilkan informasi ini harus dihasilkan secara dinamis.

Halaman web dinamis yang dihasilkan oleh server web. Web server akan menjalankan program tertentu untuk memproses permintaan dari browser pengguna untuk menghasilkan respons yang disesuaikan.

Common Gateway Interface (CGI) telah diusulkan untuk menghasilkan konten web yang dinamis. Interface memberikan kerangka kerja standar untuk web server untuk berinteraksi dengan program eksternal yang dikenal sebagai program CGI.

CGI Programming

Ketika web server menerima permintaan dari browser lewat ke program CGI. Program CGI proses permintaan dan menghasilkan respon pada saat runtime. Program CGI dapat ditulis dalam bahasa apa pun, tapi Perl adalah pilihan yang paling populer.

The GET and POST Methods

Dua permintaan HTTP yang paling umum, juga dikenal sebagai metode, adalah GET & POST.

Isu browser web permintaan menggunakan URL atau HTML dari web untuk memicu server untuk mengeksekusi suatu program CGI. (Kami akan menangani bentuk nanti.) Ketika mengeluarkan permintaan CGI langsung dari URL, metode GET digunakan.

Bentuk URL dikenal sebagai query string. URL query string terdiri dari lokasi program CGI, parameter, dan nilai-nilai mereka.

Ketika mengeluarkan permintaan dari bentuk HTML, baik metode GET atau POST dapat digunakan.

Form secara eksplisit menentukan mana yang digunakan.

Jika digunakan metode GET, data dalam formulir adalah ditambahkan untuk string permintaan seakan-akan mereka diserahkan menggunakan URL.

Jika Metode POST digunakan, data dalam bentuk dikemas sebagai bagian dari permintaan berkas. Program server memperoleh data dengan membaca file.

Java Servlets

Java servlets dijalankan atas permintaan dari browser web.

Semua servlets mengeksekusi servlet dalam sebuah wadah (servlet container), juga disebut sebagai server (servlet server) atau servlet mesin servlet (servlet engine).

Sebuah kontainer servlet adalah sebuah proses tunggal yang menjalankan sebuah JVM (Java Virtual Machine). The JVM menciptakan thread untuk menangani setiap servlet (ingat bahwa thread kurang overhead dari proses meledak penuh). Semua benang berbagi memori yang sama dialokasikan ke JVM. Karena JVM tetap di luar siklus hidup satu eksekusi servlet, servlets dapat berbagi objek sudah dibuat dalam JVM.

Sebagai contoh, jika ada beberapa servlets mengakses database yang sama, mereka dapat berbagi sambungan objek.

Thin Clients

Servlets adalah solusi ideal untuk database-aplikasi yang intensif berkomunikasi dengan thin client.

Thin client adalah aplikasi yang memberikan presentasi tetapi tidak memproses data, sehingga membutuhkan beberapa sumber daya komputasi.

Server bertanggung jawab untuk akses database. Klien tersambung ke server dengan menggunakan protokol standar yang tersedia pada sebagian besar platform klien. Logika presentasi-kode untuk menghasilkan konten dinamis dapat ditulis sekali dan berada pada server untuk akses oleh klien, untuk memungkinkan para programmer untuk membuat thin client efisien.

Apache Tomcat Server

Sun Microsystems, melalui Java Community Process bertanggung jawab untuk pengembangan servlet dan spesifikasi JSP.

Untuk menjalankan Java servlets, Anda membutuhkan wadah servlet. Sementara banyak servlet wadah yang tersedia, referensi implementasi kedua standar ini dikembangkan oleh Apache Software Foundation (www.apache.org) sebagai bagian dari Jakarta Project.

The Jakarta Project berisi banyak proyek yang dirancang untuk membantu sisi server komersial pengembang.
The servlet dan JSP bagian dari Proyek Jakarta disebut Tomcat. Tomcat adalah referensi resmi pelaksanaan standar JSP dan servlet. Tomcat dapat digunakan sendiri sebagai web server atau terhubung ke sebuah server web seperti Apache, IIS, dll. Pelaksanaan stabil saat ini adalah Tomcat 5.5.7.

Servlet Overview and
Architecture

Internet menawarkan banyak protokol. HTTP (Hypertext Transfer Protocol) yang membentuk dasar dari WWW menggunakan URL (Uniform Resource Locators) untuk mencari sumber-sumber di Internet.

URL dapat mewakili file atau direktori dan dapat mewakili tugas-tugas kompleks seperti database pencarian dan Internet pencarian.

JSP teknologi, pada dasarnya merupakan perluasan dari teknologi servlet, menyederhanakan proses menciptakan halaman dengan memisahkan presentasi dari konten.

Biasanya, JSP digunakan ketika sebagian besar konten yang dikirimkan ke klien dan markup teks statis, dan hanya sebagian kecil dari konten yang dihasilkan secara dinamis dengan kode Java.

Servlets lebih sering digunakan ketika sebagian kecil dari isi dikirim ke klien adalah teks statis atau markup. Bahkan, beberapa servlets tidak menghasilkan konten. Sebaliknya, mereka melakukan tugas atas nama klien, kemudian meminta servlets atau JSP lain untuk memberikan tanggapan.

Perhatikan bahwa dalam kebanyakan kasus teknologi servlet dan JSP yang dipertukarkan.

Server yang menjalankan sebuah servlet ini disebut sebagai servlet container atau servlet engine.

Servlets dan JSP telah menjadi sangat populer sehingga mereka sekarang didukung secara langsung atau dengan pihak ketiga plug-in oleh sebagian besar Web server dan aplikasi server (server yang menjalankan aplikasi-aplikasi untuk menghasilkan halaman Web dinamis dalam menanggapi permintaan).

Kita akan melihat servlets yang melaksanakan upaya-ulang model respons antara klien dan server dengan menggunakan protokol HTTP. Arsitektur ini diperlihatkan dalam diagram di bawah ini.

Explanation of the architecture diagram on previous page

Penjelasan :

Sebuah aplikasi klien mengirimkan permintaan HTTP ke server.

Servlet kontainer yang menerima permintaan dan mengarahkan itu untuk diproses oleh servlet yang sesuai.

The servlet melakukan prosesnya, yang mungkin termasuk berinteraksi dengan database atau komponen sisi server, seperti servlets lain atau JSP.

The servlet mengembalikan hasil-hasilnya kepada klien - biasanya dalam bentuk HTML, XHTML, atau dokumen XML untuk menampilkan pada browser.

The Servlet Lifecycle

Setelah selesai init eksekusi, servlet dapat menanggapi permintaan pertama.

Semua permintaan akan ditangani oleh metode service servlet, yang menerima permintaan, proses dan mengirimkan respon kepada klien.

Selama siklus servlet, metode service dipanggil sekali per permintaan. Setiap permintaan baru biasanya ditangani dalam thread terpisah eksekusi (dikelola oleh servlet container) di mana metode service dijalankan.

Ketika mengakhiri kontainer servlet servlet (setiap kali membutuhkan lebih banyak memori servlet atau ketika shutdown), maka metode destroy servlet dipanggil untuk melepaskan sumber daya servlet.

A Tour of Tomcat (cont.)

logs

Direktori log berisi file-file log yang dibuat oleh Tomcat. File catalina.out berisi apa pun yang ditulis untuk System.out dan System.err, serta informasi yang relevan ke server secara keseluruhan.

Common

Direktori ini berisi tiga subdirektori - kelas, lib, dan disahkan - yang berisi kode yang digunakan oleh Tomcat. Direktori kelas secara efektif ditambahkan ke CLASSPATH, seperti juga semua file jar di lib dan disahkan. Jar file yang mungkin diperlukan di seluruh Tomcat, seperti JDBC driver, ditempatkan dalam direktori ini.

server

Direktori ini berisi tiga subdirektori - kelas, lib, dan disahkan - yang berisi kode yang digunakan oleh Tomcat. Direktori kelas secara efektif ditambahkan ke CLASSPATH, seperti juga semua file jar di lib dan disahkan. Kustom jar file yang mungkin diperlukan di seluruh Tomcat, seperti JDBC driver, ditempatkan dalam direktori ini.

shared

Ini adalah direktori lain yang berisi lib kelas dan subdirektori. Kelas dan JAR dalam direktori ini tersedia untuk semua aplikasi web, tetapi tidak akan tersedia untuk infrastruktur server.

webapps

Direktori ini berisi semua aplikasi web Tomcat dikonfigurasi untuk menjalankan, salah satu aplikasi web per subdirektori. Kami akan menempatkan aplikasi web yang kita kembangkan ke dalam subdirektori di direktori ini. Kita akan melihat lebih detail pada struktur subdirektori ini agak terlambat.

work

Direktori ini digunakan oleh Tomcat untuk menahan servlets yang dibangun dari halaman JSP. Pengguna akan biasanya tidak memerlukan apa-apa di direktori ini.

temp

Direktori ini digunakan secara internal oleh Tomcat dan dapat diabaikan.

Servlet Interface

Paket yang servlet mendefinisikan dua kelas abstrak yang mengimplementasikan antarmuka Servlet - GenericServlet kelas (dari paket javax.servlet) dan kelas HttpServlet (dari paket javax.servlet.http).

Kelas-kelas ini menyediakan implementasi default dari beberapa metode Servlet.

Kebanyakan servlets memperpanjang baik GenericServlet atau HttpServlet dan menimpa beberapa atau semua metode mereka.

The GenericServlet adalah sebuah protokol-indpendent servlet, sementara HttpServlet menggunakan protokol HTTP untuk bertukar informasi antara klien dan server.

Kami akan secara eksklusif memfokuskan pada HttpServlet digunakan di Web.

HttpServlet mendefinisikan kemampuan pemrosesan yang disempurnakan untuk layanan yang memperpanjang fungsi server Web.

Metode kunci dalam setiap servlet adalah service, yang menerima baik object ServletRequest dan objek ServletResponse. Objek ini menyediakan akses ke aliran input dan output yang memungkinkan servlet untuk membaca data dari dan mengirim data ke klien.

Jika terjadi masalah selama eksekusi servlet, baik ServletExceptions atau IOExceptions dilemparkan untuk menunjukkan masalah.

HTTPServlet Class

Servlets biasanya kelas memperpanjang HttpServlet, yang mengabaikan layanan metode untuk membedakan antara berbagai permintaan yang diterima dari klien browser web.

Kedua paling umum jenis permintaan HTTP (juga dikenal sebagai metode permintaan) adalah mendapatkan dan post. (Lihat juga servlets - Bagian 1 catatan.)

Sebuah permintaan GET mengambil informasi dari server. Biasanya, sebuah dokumen HTML atau gambar.

Sebuah permintaan POST mengirim data ke server. Biasanya, permintaan pasca digunakan untuk menyampaikan masukan pengguna untuk data-proses penanganan, toko atau memperbarui data pada server, atau mengirim pesan ke news group atau forum diskusi.

Mendefinisikan metode Kelas HttpServlet doGet dan doPost untuk merespon dan pasca mendapatkan permintaan dari klien.

Metode doGet dan doPost dipanggil oleh metode service, yang dipanggil oleh servlet container ketika permintaan tiba di server.

Metode pertama layanan menentukan jenis permintaan, yang akan memanggil metode yang tepat untuk menangani permintaan seperti itu.

Selain metode doGet dan doPost, metode-metode berikut ini didefinisikan di kelas HttpServlet:

doDelete (biasanya menghapus file dari server)

doHead (hanya diinginkan klien tidak ada tanggapan header seluruh tubuh)

doOptions (kembali pilihan HTTP didukung oleh server)

doPut (biasanya menyimpan suatu file di server)

doTrace (untuk keperluan debugging)

HTTPServletResponse Interface

Setiap doGet atau doPost untuk HttpServlet menerima sebuah obyek yang mengimplementasikan antarmuka HttpServletResponse.

Servlet Container yang membuat objek HttpServletResponse dan memberikannya ke metode service servlet, yang pada akhirnya, memberikan ke doGet atau doPost.

Objek ini menyediakan metode yang memungkinkan servlet untuk merumuskan respon terhadap klien.

Daftar lengkap dari metode HttpServletRequest tersedia di:

ww.java.sun.com/j2ee/1.4/docs/api/index.html

Namun, beberapa dari yang lebih umum akan ditampilkan pada halaman berikutnya. (Juga dapat diakses dari Tomcat.)

HTTPServletRequest Methods

Cookie [] getCookies () - mengembalikan sebuah array dari Cookie benda yang disimpan pada klien oleh server. Cookie digunakan untuk secara unik mengidentifikasi klien ke server.

String getLocalName () - mendapatkan nama host di mana permintaan itu diterima.

String getLocalAddr () - mendapatkan alamat IP di mana permintaan itu diterima.

int getLocalPort () - mendapat IP nomor port di mana permintaan itu diterima.

String getParameter (String name) - mendapat nilai parameter set ke servlet sebagai bagian dari get atau post.

void addCookie (Cookie cookie) - menambahkan sebuah Cookie ke header respon kepada klien.

ServletOutputStream getOutputStream () - mendapat byte output berbasis biner sungai untuk mengirimkan data ke klien.

PrintWriter getWriter () - mendapat karakter berbasis output stream untuk mengirimkan data teks (biasanya teks berformat HTML) kepada klien.

void SetContentType (String tipe) - menentukan jenis konten respon ke browser untuk membantu dalam menampilkan data.

void getContentType () - tipe konten mendapatkan respon.

Tidak ada komentar: