18 ส.ค. 2556

Example Servlet

Java Servlet Example

http://localhost:8080/yourwebsiteHelloForm?first_name

การสร้างโปรเจคใน Tomcat จะใช้รูปแบบโครงสร้างตามนี้

path "To tomcat folder -> apache-tomcat-x.x/webapps/yourwebsite"

 

ภายใน WEB-INF 

1. classes ที่อยู่ของ class file java

2. lib ที่ใช้งาน

3. web.xml ไฟล์ config ของ servlet

 

ด้านล่างนี้เป็น class com.example.HelloServlet สำหรับรับค่า Input จาก Browser 

โดยใช้ getParameter() ในการรับค่า

package com.example;

// Import required java libraries
import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

// Extend HttpServlet class
public class HelloServlet extends HttpServlet {

 // Method to handle GET method request.
 public void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
  // Set response content type
  response.setContentType("text/html");

  PrintWriter out = response.getWriter();
  String title = "Using GET Method to Read Form Data";
  String docType = "<!doctype html public \"-//w3c//dtd html 4.0 "
    + "transitional//en\">\n";
  out.println(docType + "<html>\n" + "<head><title>" + title
    + "</title></head>\n" + "<body bgcolor=\"#f0f0f0\">\n"
    + "<h1 align=\"center\">" + title + "</h1>\n" + "<ul>\n"
    + "  <li><b>First Name</b>: "
    + request.getParameter("first_name") + "\n"
    + "  <li><b>Last Name</b>: "
    + request.getParameter("last_name") + "\n" + "</ul>\n"
    + "</body></html>");
 }

 public void doPost(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
  doGet(request, response);
 }
}


ไฟล์ web.xml 

ใช้สำหรับ การอ้าง class ที่เราจะทำการ Mapping กับ Url


  <servlet>
       <servlet-name>HelloServlet</servlet-name>
       <servlet-class>com.example.HelloServlet</servlet-class>
  </servlet>
  <servlet-mapping>
       <servlet-name>HelloServlet</servlet-name>
       <url-pattern>/HelloServlet</url-pattern>
  </servlet-mapping> 
 
 
 
 
 

hello.jsp หน้าเว็บ Html ใช้ Get Method ในการ เรียก

 

<html> <body>  
<form action="HelloServlet" method="GET">
      First Name: <input type="text" name="first_name"> <br />
      Last Name: <input type="text" name="last_name" />
      <input type="submit" value="Submit" />  
</form>  
</body></html>

3 เม.ย. 2556

Java Read File


import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.nio.ByteBuffer;
import java.nio.channels.FileChannel;
 
public class ReadFiles {
    public static void main(String[] args) throws IOException {
        ReadFiles re = new ReadFiles();
        long a = System.currentTimeMillis();
        System.out.println("Start");
        for (int i = 0; i < 10000; i++) {
            String data = re.readFileChannel("test.txt");     
        }
        System.out.println("Finish "+(System.currentTimeMillis()-a)+" Millsec");
    }
    public String readFile(String fileName) throws IOException {
           File f = new File(fileName);
           FileInputStream fstream = new FileInputStream(f);
           byte[] bytes = new byte[(int) f.length()];
           fstream.read(bytes);
           fstream.close();
           return new String(bytes);
        }
    public String readFileBuffer(String fileName) throws IOException{
        FileInputStream in = new FileInputStream(new File(fileName));
        BufferedReader re = new BufferedReader(new InputStreamReader(in));
        String line = "";
        StringBuffer buf = new StringBuffer();
        while((line=re.readLine())!=null){
            buf.append(line+"\n");
        }
        return buf.toString();
    }
    public String readFileChannel(String file) throws IOException {
           FileChannel channel = new FileInputStream(new File(file)).getChannel();
           ByteBuffer buffer = ByteBuffer.allocate((int) channel.size());
           channel.read(buffer);
           channel.close();
           return new String(buffer.array());
        }
}

9 ม.ค. 2556

นโยบายการใช้ Thai IT News

นโยบายการใช้ Thai IT News 1. ใช้งานฟรีไม่มีค่าโฆษณา 2. ข้อมูลที่ได้มาจากกาน Feed ในแบบ RSS 3. ขอให้มีความสุขในการอ่าน