Embedded Web Server Tutorial: วิธีเริ่ม Embedded HTTP Jersey server ระหว่าง Java Application Startup

เผยแพร่แล้ว: 2014-07-01

เมื่อก่อนฉันได้เขียนบทช่วยสอนเกี่ยวกับวิธีการสร้าง RESTful Service ด้วย Java โดยใช้ JAX-RS และ Jersey หลังจากขั้นตอนโดยละเอียดทั้งหมด คุณต้องปรับใช้โครงการของคุณกับ Tomcat Web Server และคุณน่าจะทำได้ดี ด้วยบทช่วยสอนนั้น คุณจะสามารถสร้างบริการ RESTFul ได้ง่ายๆ ในเวลาประมาณ 20 นาที

แต่จะทำอย่างไรใน ~5 mins ? นอกจากนี้ บางครั้งก็เป็นเรื่องยากมากที่จะตั้งค่า Tomcat สำหรับเว็บแอปพลิเคชันของคุณ

มีหลายสาเหตุ:

  1. คุณอาจจำเป็นต้องคัดลอกไบนารีของ Tomcat ไปยังสภาพแวดล้อมการพัฒนา
  2. หากคุณไม่ได้ตั้งค่าทั้งหมดอย่างถูกต้อง แอปพลิเคชัน Tomcat ของคุณอาจไม่ทำงาน
  3. คุณต้องส่งออกโครงการของคุณเป็น .war โครงการ
  4. จะเกิดอะไรขึ้นถ้าคุณไม่ต้องการที่จะปรับใช้แอปพลิเคชันของคุณบน Tomcat และเรียกใช้ .jar อย่างง่าย
  5. ด้วยโปรเจ็กต์ .jar คุณจะเริ่มเซิร์ฟเวอร์ http ได้อย่างไร ใบสมัครของคุณจะรับสายเรียกเข้า REST หรือไม่

พิเศษ: จะเพิ่ม CORS Filter ให้กับ Jersey Web Application ได้อย่างไร?

คุณต้องเพิ่ม Cross-origin resource sharing ไปยังแอปพลิเคชัน Web Jersey โปรดปฏิบัติตามบทช่วยสอนนี้เช่นเดียวกัน:

Cross-Origin Resource Sharing (CORS) คืออะไร – จะเพิ่มลงใน Java Jersey Web Server ได้อย่างไร

มีวิธีแก้ปัญหาง่ายๆ มี วิธีสร้างเซิร์ฟเวอร์ HTTP พื้นฐาน (รองรับเฉพาะ GET/POST) ใน Java โดยใช้ Java SE API เพียงอย่างเดียว โดยไม่ต้องเขียนโค้ดเพื่อแยกวิเคราะห์คำขอ HTTP ด้วยตนเองและจัดรูปแบบการตอบกลับ HTTP ด้วยตนเอง

การใช้ com.sun.net.httpserver.HttpServer เราควรจะสามารถทำได้ทั้งหมดข้างต้น

มาเริ่มกันเลย:

ขั้นตอนที่ 1:

สร้างโปรเจ็กต์ Java ใหม่ “ CrunchifyJerseyEmbeddedHTTPServer

Java-Project-CrunchifyJerseyEmbeddedHTTPServer

ขั้นตอนที่ 2:

แปลงเป็นโครงการ Maven สิ่งนี้จะทำให้ชีวิตของเราง่ายขึ้นสำหรับการเพิ่มการพึ่งพา โปรดทำตามบทช่วยสอนนี้เพื่อแปลง Java Project ที่มีอยู่เป็น Maven Project

ขั้นตอนที่ 3:

ในโปรเจ็กต์นี้ เราเพียงแค่ต้องพึ่งพา jersey-server เดียว

Jersey Server - Maven Dependency

ขั้นตอนที่ 4:

สร้าง JerseyEmbeddedHTTPServerCrunchify.java ภายใต้แพ็คเกจ com.crunchify.tutorial

ขั้นตอนที่ 5:

สร้าง REST API ของคุณ สร้างคลาส java CrunchifyAPI.java ภายใต้แพ็คเกจเดียวกัน “ com.crunchify.tutorial

ขั้นตอนที่ 6:

และนั่นแหล่ะ ตอนนี้ให้คลิกขวาที่ JerseyEmbeddedHTTPServerCrunchify.java และ “ Run it as Java Application

ขั้นตอนที่ 7:

ตรวจสอบผลลัพธ์ ไปที่ URL นี้: http://localhost:8085/api และคุณควรเห็นผลลัพธ์บนเบราว์เซอร์

Jersey HTTP Server การตอบสนองของเบราว์เซอร์

หวังว่าคุณจะสนุกกับการกวดวิชานี้ ต้องการแบ่งปันความคิดเห็นใด ๆ

ฉันมาที่นี่เพื่อฟัง ขอบคุณ.