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

  • AverageBroTV

    AverageBroTV

    20 Mart 2013
  • Droid Life

    Droid Life

    17 Kasım 2009
  • Theodore Leaf

    Theodore Lea

    29 AĞUSTOS 2006