สร้าง RESTful Service ใน Java โดยใช้ JAX-RS และ Jersey (เซลเซียสถึงฟาเรนไฮต์ & ฟาเรนไฮต์เป็นเซลเซียส)

เผยแพร่แล้ว: 2020-03-25
สร้าง RESTFul Service โดยใช้ JAX-RS และ Jersey

คุณมีคำถาม / คำถามด้านล่างหรือไม่?

  • เขียนบริการ java REST เพื่อแปลงฟาเรนไฮต์เป็นเซลเซียสและเซลเซียสเป็นฟาเรนไฮต์
  • REST กับ Java (JAX-RS) โดยใช้ Jersey
  • การแปลงจากวิธีฟาเรนไฮต์เป็นเซลเซียสใน Java
  • ช่วยทำการบ้านด้วยการแปลงองศา (CtoF, FtoC)
  • Java API สำหรับ RESTful Web Services
  • บริการเว็บ – Java REST API ใดดีที่สุด
  • REST API สำหรับ Java?
  • ctof และ ftoc กวดวิชา ctof และ ftoc Java Tutorial
  • สร้าง RESTful Web services ด้วยเทคโนโลยี Java
  • เฟรมเวิร์ก API เว็บ RESTful สำหรับ Java

RESTful Service : Representational State Transfer (REST) ​​ได้รับการยอมรับอย่างกว้างขวางทั่วทั้งเว็บ โดยเป็นทางเลือกที่ง่ายกว่าสำหรับบริการบนเว็บที่ใช้ SOAP และ Web Services Description Language (WSDL)

REST กำหนดชุดของหลักการทางสถาปัตยกรรมโดยที่คุณสามารถออกแบบบริการเว็บที่เน้นทรัพยากรของระบบ รวมถึงวิธีการระบุสถานะทรัพยากรและถ่ายโอนผ่าน HTTP โดยไคลเอนต์ที่หลากหลายที่เขียนในภาษาต่างๆ หากวัดจากจำนวนเว็บเซอร์วิสที่ใช้งาน REST ได้กลายมาเป็นรูปแบบการออกแบบบริการเว็บที่โดดเด่นในช่วงไม่กี่ปีที่ผ่านมา อันที่จริง REST มีผลกระทบอย่างมากต่อเว็บ ซึ่งส่วนใหญ่แล้วจะแทนที่การออกแบบอินเทอร์เฟซที่ใช้ SOAP และ WSDL เนื่องจากเป็นรูปแบบที่ใช้ง่ายกว่ามาก

RESTFul เทียบกับ สบู่กวดวิชา

jax-rs-hello-world-example-crunchify

JAX-อาร์เอส:

Java API สำหรับ RESTful Web Services (JAX-RS) เป็นชุดหาก API ไปสู่บริการ REST ของนักพัฒนา JAX-RS เป็นส่วนหนึ่งของ Java EE6 และทำให้นักพัฒนาสามารถพัฒนาเว็บแอปพลิเคชัน REST ได้อย่างง่ายดาย

เจอร์ซีย์:

Jersey เป็นโอเพ่นซอร์ส คุณภาพการผลิต JAX-RS (JSR 311) Reference Implementation for building RESTful Web services แต่ยังเป็นมากกว่าการดำเนินการอ้างอิง Jersey มี API เพื่อให้นักพัฒนาสามารถขยาย Jersey เพื่อให้เหมาะกับความต้องการของพวกเขา

มาเริ่มสร้าง RESTful API ง่ายๆ ด้วยขั้นตอนด้านล่าง:

ขั้นตอนที่ 1

ใน Eclipse => File => New => Dynamic Web Project ตั้งชื่อเป็น “ CrunchifyRESTJerseyExample

สร้าง Crunchify Eclipse Dynamic Web Project

ตรวจสอบให้แน่ใจว่าคุณตั้งค่า:

  • รันไทม์เป้าหมาย: Apache Tomcat v9.0
  • เวอร์ชันเว็บโมดูลแบบไดนามิก: 4.0

ขั้นตอนที่ 2

หากคุณไม่เห็น web.xml (ตัวอธิบายการทำให้ใช้งานได้) ให้ทำตามขั้นตอนเหล่านี้ หรือ

  • คลิกขวาที่โครงการ
  • เลือก Java EE Tools
  • คลิกที่ Generate Deployment Descriptor Stub

สิ่งนี้จะสร้างไฟล์ web.xml ใต้ /WebContent/WEB-INF/

ขั้นตอนที่ 3

ตอนนี้แปลง Project เป็น Maven Project เพื่อให้เราสามารถเพิ่มไฟล์ .jar ที่จำเป็นเป็นการพึ่งพาได้

ขั้นตอน:

  • คลิกขวาที่โครงการ
  • คลิกที่ Configure
  • เลือกตัวเลือก Convert to Maven Project
คลิกขวาที่โครงการ
แปลงโปรเจ็กต์ใดก็ได้เป็นโปรเจ็กต์ Maven

เพียงคลิกที่ Finish button โดยไม่ต้องทำการเปลี่ยนแปลงใดๆ

สร้างไฟล์ POM สำหรับ Maven Project ใน Eclipse

ขั้นตอนที่ 4

เปิดไฟล์ pom.xml และเพิ่มการพึ่งพาด้านล่าง

  • asm.jar
  • jersey-bundle.jar
  • json.jar
  • jersey-server.jar
Maven Dependencies - Crunchify Jersey กวดวิชา - jersey-server.pom.xml

นี่คือไฟล์ pom.xml ของฉัน

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

อัปเดตไฟล์ web.xml ของคุณด้วยไฟล์นี้ นี่คือสำเนาไฟล์ web.xml ของฉัน:

ขั้นตอนที่ 6

  • ไปที่ Java Resources
  • คลิกที่ src
  • คลิกขวา -> ใหม่ -> คลาส
  • แพ็คเกจ: com.crunchify.restjersey
  • ชื่อ: CtoFService

CtoFService.java

ขั้นตอนที่ 7

วิธีเดียวกันสร้าง FtoCService.java

FtoCService.java

ขั้นตอนที่-8

ตอนนี้ มาทำความสะอาดพื้นที่ทำงาน eclipse และสร้างโปรเจ็กต์กัน

  • สำหรับ point 3 ข้างต้น ให้ใช้ these screenshots : Maven Build, ติดตั้งใหม่ทั้งหมด
  • คุณควรเห็นข้อความสร้างความสำเร็จ

ขั้นตอนที่ 9

ปรับใช้โครงการ CrunchifyRESTJerseyExample บน Tomcat ต่อไปนี้เป็นขั้นตอนโดยละเอียดเกี่ยวกับวิธีตั้งค่า Tomcat บน Eclipse หากคุณยังไม่ได้ดำเนินการ

  • ไปที่แท็บเซิร์ฟเวอร์
  • คลิกขวาที่เซิร์ฟเวอร์
  • คลิกที่ Add and Remove Projects
  • โครงการเลือกจากด้านซ้ายและคลิกที่ Add
  • คลิกเสร็จสิ้น
ปรับใช้ CrunchifyRESTJerseyExample บน Tomcat

ขั้นตอนที่ -10

  • เริ่ม Tomcat Server 9.0
เริ่ม Tomcat Server 9.0

โครงสร้างโครงการที่สมบูรณ์:

Crunchify REST Jersey Tutorial - โครงสร้างโครงการที่สมบูรณ์

นี่คือการพึ่งพา Java Build Path:

REST JAX-RS Jersey Build Path Dependencies

ตรวจสอบให้แน่ใจว่าคุณใช้ JDK 1.8 สำหรับโครงการนี้ การเริ่ม Java 9 – โมดูล JAXB, JAX-WS, JAF, JTA, CORBA จะถูกลบออก และคุณจำเป็นต้องเพิ่มโมดูลเหล่านั้นด้วยตนเองในไฟล์ Maven pom.xml ของคุณ

ทุกชุด.


ตอนนี้ มาทดสอบ RESTful Web Service ของคุณกัน

ทดสอบ 1: บริการเว็บเซลเซียสถึงฟาเรนไฮต์ without พารามิเตอร์

ลิงก์: http://localhost:8080/CrunchifyRESTJerseyExample/crunchify/ctofservice/

c ถึง f เว็บเซอร์วิส

ทดสอบ 2: บริการเว็บเซลเซียสถึงฟาเรนไฮต์ with พารามิเตอร์

c ถึง f เว็บเซอร์ด้วยพารามิเตอร์

ทดสอบ 3: บริการเว็บฟาเรนไฮต์ถึงเซลเซียส without พารามิเตอร์

f ถึง c เว็บเซอร์วิส

ทดสอบ 4: บริการเว็บฟาเรนไฮต์ถึงเซลเซียส with พารามิเตอร์

f ถึง c เว็บเซอร์พร้อมพารามิเตอร์

ตัวอย่างไคลเอ็นต์ RESTFul:

  • วิธีสร้าง RESTful Java Client โดยใช้ Apache HttpClient – ​​Example
  • วิธีสร้าง RESTful Java Client ด้วย Java.Net.URL – Example
  • วิธีสร้าง RESTful Java Client ด้วย Jersey Client – ​​Example

ต้องอ่านอีก:

  • CrunchifyJSONtoHTML.js – สคริปต์ตัวแปลงตาราง JSON เป็น HTML
  • วิธีสร้างหน่วยความจำไม่เพียงพอ (OOM) ใน Java โดยทางโปรแกรม
  • วิธีเรียกใช้อินสแตนซ์ Tomcat หลายตัวบนเซิร์ฟเวอร์เดียว
  • วิธีอ่านวัตถุ JSON จากไฟล์ใน Java – Crunchify Tutorial

มีปัญหาในการรันโค้ด?

ขั้นตอนการคัดแยกบางส่วน:

ตอนแรกฉันใช้การพึ่งพา jersey-core แต่เพิ่มการพึ่งพา jersey-server เพื่อหลีกเลี่ยงปัญหาด้านล่าง

หากคุณได้รับข้อผิดพลาดข้างต้น ให้ลองเพิ่มการพึ่งพา maven ด้านล่างลงในไฟล์ pom.xml ของคุณ