Enterprise متوسط

استبدل نقاط نهاية SOAP/WSDL الثقيلة بموارد Jakarta REST نظيفة تُرجع JSON.

✕ Java EE
@WebService
public class UserWebService {
    @WebMethod
    public UserResponse getUser(
            @WebParam(name = "id") String id) {
        User user = findUser(id);
        UserResponse res = new UserResponse();
        res.setId(user.getId());
        res.setName(user.getName());
        return res;
    }
}
✓ Jakarta EE 8+
@Path("/users")
@Produces(MediaType.APPLICATION_JSON)
public class UserResource {
    @Inject
    UserService userService;

    @GET
    @Path("/{id}")
    public User getUser(@PathParam("id") String id) {
        return userService.findById(id);
    }
}
هل ترى مشكلة في هذا الكود؟ أخبرنا.
🪶

حمولات أخف

JSON أكثر إيجازاً من مظاريف SOAP XML مما يقلل النطاق الترددي وتكلفة التحليل.

📐

تعليقات توضيحية بسيطة

@GET و @Path و @Produces تستبدل طقوس WSDL و @WebService و @WebMethod.

🔌

جاهز للخدمات المصغّرة

REST/JSON هو المعيار للتواصل بين الخدمات في البنى السحابية الأصلية.

الأسلوب القديم
JAX-WS / SOAP
الأسلوب الحديث
Jakarta REST / JSON
منذ JDK
11
الصعوبة
متوسط
خدمات الويب SOAP مقابل Jakarta REST
متاح

متاح على نطاق واسع منذ Jakarta EE 8 / Java 11

تعتمد خدمات الويب القائمة على SOAP على عقود WSDL وتسلسل XML وتعليقات JAX-WS التوضيحية التي تضيف تكلفة كبيرة. تستخدم Jakarta REST تعليقات توضيحية بديهية مثل @GET و @Path و @Produces لكشف واجهات برمجية RESTful بـ JSON. نموذج البرمجة أبسط والحمولات أصغر والنهج يتوافق مع كيفية تواصل الخدمات المصغّرة الحديثة.

مشاركة 𝕏 🦋 in