Latest web development tutorials

แพคเกจ servlet

เกี่ยวกับโครงสร้างของแอพลิเคชันเว็บไดเรกทอรีย่อย WEB-INF เป็นมาตรฐานสำหรับทุกการใช้งานเว็บ Java ระบุโดยข้อกำหนด Servlet API ได้ กำหนดระดับบนสุดชื่อไดเรกทอรี MyApp โครงสร้างไดเรกทอรีเป็นดังนี้:

/ MyApp
    / images
    / WEB-INF
        / คลาส
        / lib

WEB-INF ไดเรกทอรีย่อยมีคำอธิบายถึงการใช้งานโปรแกรมที่เรียกว่า web.xml HTML ไฟล์ทั้งหมดจะอยู่ในMyAppไดเรกทอรีระดับบนสุด สำหรับผู้ใช้ผู้ดูแลระบบคุณจะพบไดเรกทอรีรากเป็นไดเรกทอรีแม่ MyApp

สร้าง Servlet แพคเกจ

WEB-INF / directory เรียนมีทั้งหมดของระดับ Servlet และประเภทอื่น ๆ ของเอกสารแฟ้มระดับการแข่งขันโครงสร้างไดเรกทอรีที่มีชื่อแพคเกจของพวกเขา ตัวอย่างเช่นถ้าคุณมีcom.myorg.MyServlet ชื่อชั้นที่มีคุณสมบัติครบถ้วนแล้วระดับ Servlet จะต้องอยู่ในไดเรกทอรีต่อไปนี้:

/myapp/WEB-INF/classes/com/myorg/MyServlet.class

ตัวอย่างต่อไปนี้สร้างแพคเกจระดับ MyServlet เรียกcom.myorgของ

// สำหรับแพคเกจชื่อแพคเกจ com.myorg;  

// นำเข้าจำเป็น Java ห้องสมุดนำเข้า java.io. *;
นำเข้า javax.servlet * .;
นำเข้า javax.servlet.http * .;
 
เรียนสาธารณะ MyServlet ขยาย HttpServlet {
 
  ข้อความ String เอกชน
 
  โมฆะสาธารณะ init () พ่น ServletException
  {
      // ดำเนินข้อความเริ่มต้นที่จำเป็น = "Hello World";
  }
 
  โมฆะสาธารณะ doGet (HttpServletRequest ร้องขอ
                    HttpServletResponse การตอบสนอง)
            พ่น ServletException, IOException
  {
      // ตั้งค่าชนิดเนื้อหาของการตอบสนอง response.setContentType ( "text / html; charset = UTF-8");
 
      // ตรรกะที่เกิดขึ้นจริงที่นี่ PrintWriter ออก = response.getWriter ();
      out.println ( "<h1>" + ข้อความ + "</ h1>");
  }
  
  โมฆะสาธารณะทำลาย ()
  {
      // ไม่ทำอะไร}
}

รวบรวม Servlet แพคเกจ

รวบรวมแพคเกจการเรียนและการเรียนอื่น ๆ รวบรวมไม่มีความแตกต่างใหญ่ วิธีที่ง่ายที่สุดคือการได้รับไฟล์ Java ของคุณยังคงอยู่ในเส้นทางที่มีคุณสมบัติครบถ้วนในชั้นเรียนดังกล่าวข้างต้นจะได้รับการเก็บรักษาไว้ใน com.myorg นอกจากนี้คุณยังต้องเพิ่มไดเรกทอรีคลาสพา ธ

สมมติว่าสภาพแวดล้อมของคุณตั้งค่าอย่างถูกต้องป้อน<Tomcat ติดตั้งไดเรกทอรี> / webapps / ราก / WEB-INF / คลาส ไดเรกทอรีและรวบรวม MyServlet.java ดังต่อไปนี้:

$ Javac MyServlet.java

หาก Servlet พึ่งพาห้องสมุดอื่น ๆ คุณยังต้องอ้างอิงไฟล์ JAR ผู้ที่อยู่ในคลาสพา ธ ฉันเป็นเพียง quoting ไฟล์ JAR servlet-api.jar เพราะผมไม่ได้ใช้ห้องสมุดอื่น ๆ ในโปรแกรม Hello World

บรรทัดคำสั่งที่ใช้ในตัวคอมไพเลอร์ javac ซึ่งเป็นชุด Sun Microsystems Java การพัฒนาซอฟต์แวร์ (JDK, ชื่อเต็มของ Java Development Kit Software) ที่มาพร้อม ไมโคร 'Java ชุดพัฒนาซอฟต์แวร์ (JDK) เพื่อให้คำสั่งในการทำงานอย่างถูกต้องก็จะต้องมีสถานที่ตั้งของ Java SDK ที่คุณกำลังใช้ตัวแปรสภาพแวดล้อมของเส้นทาง

หากทุกอย่างไปคอมไพเลอร์นี้จะสร้างไฟล์MyServlet.class ในไดเรกทอรีเดียวกันส่วนต่อไปจะอธิบายวิธี Servlet รวบรวมนำไปใช้ในการผลิต

แพคเกจการปรับใช้ Servlet

โดยค่าเริ่มต้นการประยุกต์ใช้ Servlet ในเส้นทางภายใต้ <Tomcat ติดตั้งไดเรกทอรี> / webapps / รากและไฟล์ชั้นใน <Tomcat ติดตั้งไดเรกทอรี> / webapps / ราก / WEB-INF / ชั้นเรียนใน

หากคุณมีcom.myorg.MyServlet ชื่อชั้นที่มีคุณสมบัติครบถ้วนแล้วระดับ Servlet จะต้องอยู่ใน WEB-INF / คลาส / COM / myorg / MyServlet.class คุณต้องอยู่ใน <Tomcat ติดตั้งไดเรกทอรี> / webapps / สร้างรากรายการต่อไปนี้ / WEB-INF / ไฟล์ web.xml:

    <Servlet>
        <Servlet ชื่อ> MyServlet </ servlet-name>
        <Servlet ชั้น> com.myorg.MyServlet </ servlet ระดับ>
    </ Servlet>
 
    <Servlet ทำแผนที่>
        <Servlet ชื่อ> MyServlet </ servlet-name>
        <url รูปแบบ> / MyServlet </ url รูปแบบ>
    </ Servlet ทำแผนที่>

รายการดังกล่าวข้างต้นจะได้รับการสร้างขึ้นในไฟล์ web.xml ก <เว็บแอป> ภายใน ... </ เว็บแอป> แท็ก ในแฟ้มนี้คุณอาจจะมีความหลากหลายของรายการที่มีอยู่ แต่ไม่สนใจ

ที่นี่คุณจะทำเกือบตอนนี้ขอใช้ <Tomcat ติดตั้งไดเรกทอรี> \ bin \ startup.bat (Windows) หรือ <Tomcat ติดตั้งไดเรกทอรี> /bin/startup.sh (ใน Linux / Solaris และอื่น ๆ ) ไปเริ่มต้นเซิร์ฟเวอร์ Tomcat และในที่สุดก็เข้าสู่http ในแถบที่อยู่ของเบราเซอร์: // localhost: 8080 / MyServletหากทุกอย่างไปคุณจะเห็นผลลัพธ์ต่อไปนี้:

สวัสดีชาวโลก