Sabtu, 13 April 2013

Web Server Menggunakan Java



Kali ini kita diberi tugas tentang penggunaan webserver melalui java.
Selanjutnya saya akan menjelaskan settingan menampilkan isi html lewat net beans.
Berikut code nya:
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package webserver;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author ahayamb
 */
public class Webserver {

   
    public static String readLine(InputStream is) throws IOException
    {
        String request = "";
        char c;
        while(true)
        {
            c = (char)is.read();
            request+=c;
           
            if(c == '\n')
                break;
        }
       
        return request;
    }
   
    public static void main(String[] args) {
        try
        {
            ServerSocket ss = new ServerSocket(10000);
            while(true)
            {
                Socket s = ss.accept();
                BufferedInputStream inputStream = new BufferedInputStream(s.getInputStream());
                BufferedOutputStream outputStream = new BufferedOutputStream(s.getOutputStream());
               
                String request;
                while(!(request = readLine(inputStream)).equals("\r\n"))
                    System.out.print(request);
                System.out.print(request);
               
                String currentLine;
                BufferedReader br;
                br = new BufferedReader(new FileReader("D:\\fileweb\\index.html"));
               
                String response = "HTTP/1.0 200 OK\r\n" + "Content-Type: text/html\r\n" + "\r\n";
                while((currentLine = br.readLine()) != null)
                    response+=currentLine;
               
                outputStream.write(response.getBytes());
                outputStream.flush();               
                
                inputStream.close();
                outputStream.close();
                s.close();
            }
        }
        catch (IOException ex)
        {
            Logger.getLogger(Webserver.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
}
Disini saya memberi port 10000. Sehingga ketika kita buka browser lalu mengetik localhost:10000, maka akan keluar isi htmlnya. Isi html nya terserah kita dan kita buat sendiri. Lalu path lokasi file html yang sudah kita buat dan kita masukkan ke script.
Selesai...

Tidak ada komentar:

Posting Komentar