SORU
13 AĞUSTOS 2011, CUMARTESİ


Neden JAX-RS / Jersey?

Pardon, bu soru aptalca gelebilir, ama sonrasında gelişen bazı benim Dinlendirici hizmetleri kullanarak Jersey, sordum kendime bu soruyu ... Eğer GERİSİ sadece bir mimari ve bir protokol gibi SABUN, bu bir belirtimi gibi JAX-RS?

Aslında "Ne sunucu uygulamalarına ve Dinlendirici hizmetler arasındaki fark üzerinden HTTP" ve toplum cevapları özetle, var: . gibi sorular için Google'da

  1. Dinlendirici bir hizmet geliştirme (Jersey) doğal olarak sunucu uygulamalarını kullanan bir mimarisi vardır.
  2. Jersey gibi JAX-RS uyumlu araçlar kolay sıralanırken-unmarshalling XML/JSON veri, geliştiriciler yardımcı olur.
  3. GERİSİ bize normal sunucu uygulamalarını daha verimli/POST//moda SİLMEK KOYMAK için yardımcı olur.

Göre bu cevaplar sanırım yazarsam bir sunucu uygulaması kullanır JAXB (başa çıkmak için bazı otomatik hale getirme ve verimli bir şekilde kullanılması GET/POST/PUT/DELETE sunucu uygulaması benim kod, ben kullanmıyorum aracı gibi Jersey, ve bu yüzden JAX-RS.

Bu ifade, lütfen bana doğru geçerken çok yanlış olduğumu biliyorum.

PS: Bu şüphe aslında PHP bazı Dinlendirici hizmetler geliştirmek zorunda kaldım zaman geldi. Dinlendirici PHP kodlarının bazıları geçiyor sonra, aynı eski PHP betikleri, XML/JSON işlemek için bazı yardımcı yöntemler ile olduklarını fark ettim.

CEVAP
14 AĞUSTOS 2011, Pazar


Neden JAX-RS / Jersey?

Kısa Cevap

Dinlendirici hizmetlerin geliştirilmesi daha kolay hale getirir çünkü.

Uzun Cevap

JAX-RS kolay herhangi bir Java uygulama sunucusu için kullanılabilecek kaliteli bir hizmet oluşturmak için yapan bir standarttır: Önemli olan, Gidin, Eclipse, JBoss, vb.

JAX-RS Java EE parçasıdır, ve JAX-RS diğer Java EE teknolojileri ile kullanıldığında Dinlendirici bir hizmet oluşturmak için daha kolay hale geliyor

  • YEREL- Bir oturum fasulye servis uygulaması olarak kullanılan ve işlem mantığı işler.
  • JAX-RS- Dinlendirici bir hizmet olarak oturum fasulye ortaya çıkarmak için kullanılır
  • JPA- Veritabanı POJOs kalıcı olması için kullanılır. Bu EntityManager oturum fasulye üzerine enjekte edilir.
  • JAXB- XML/POJO dönüştürmek için kullanılan (Önemli olan da JSON dan/POJO dönüştürmek için kullanılabilir). JAX-RS varsayılan olarak JAXB uygulaması ile etkileşim işler.

Örnek JAX-RS Servis

package org.example;

import java.util.List;

import javax.ejb.*;
import javax.persistence.*;
import javax.ws.rs.*;
import javax.ws.rs.core.MediaType;

@Stateless
@LocalBean
@Path("/customers")
public class CustomerService {

    @PersistenceContext(unitName="CustomerService",
                        type=PersistenceContextType.TRANSACTION)
    EntityManager entityManager;

    @POST
    @Consumes(MediaType.APPLICATION_XML)
    public void create(Customer customer) {
        entityManager.persist(customer);
    }

    @GET
    @Produces(MediaType.APPLICATION_XML)
    @Path("{id}")
    public Customer read(@PathParam("id") long id) {
        return entityManager.find(Customer.class, id);
    }

    @PUT
    @Consumes(MediaType.APPLICATION_XML)
    public void update(Customer customer) {
        entityManager.merge(customer);
    }

    @DELETE
    @Path("{id}")
    public void delete(@PathParam("id") long id) {
        Customer customer = read(id);
        if(null != customer) {
            entityManager.remove(customer);
        }
    }

    @GET
    @Produces(MediaType.APPLICATION_XML)
    @Path("findCustomersByCity/{city}")
    public List<Customer> findCustomersByCity(@PathParam("city") String city) {
        Query query = entityManager.createNamedQuery("findCustomersByCity");
        query.setParameter("city", city);
        return query.getResultList();
    }

}

Daha Fazla Bilgi İçin:

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Adam Outler

    Adam Outler

    19 EKİM 2006
  • KliptOut KwazeeKilla

    KliptOut Kwa

    24 ŞUBAT 2010
  • LearnKey

    LearnKey

    19 AĞUSTOS 2008