Facebook

Powered By Blogger

Selasa, 16 April 2013

Modul 2- Membangun Web Server sederhana dengan Java

Nah,setelah banyak mempelajari routing dengan UML pada postingan lalu, sekarang saya coba berbagi tentang membuat Web server dengan Java Programminng. Konsep pembuatan web server dengan Java Pogramming ini tak jauh beda dengab Java Socket Programming namun bertindak sebagai server untuk melayani request.


/*masukkan source code di sini*/

/*
 * 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;

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(9999);
            //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 response = "HTTP/1.0 200 OK\r\n" + "Content-Type: text/html\r\n" + "\r\n" ;
                String answer = "";
                
                BufferedReader br = new BufferedReader (new FileReader("E:\\Kuliah\\qaqa.html"));
                while((answer = br.readLine()) != null)
                {
                    response += answer;
                }
                
                
                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);
        }
    }
}


Tidak ada komentar:

Posting Komentar