Escrever dados em um banco de dados usando um serviço de web totalmente RESTO

votos
3

Como se poderia criar um serviço REST web para escrever uma linha em uma tabela databse. Use o cenário follwoing:

A tabela é chamado de Cliente - os dados a serem inseridos na linha seria o nome, addresss, número de telefone, e-mail.

Eu acho que é impossível descrever todo o final coisa para terminar em Java ou C #, e eu nunca esperaria isso, mas aqui estão as perguntas que eu surgindo em minha cabeça enquanto eu me preparo para a codificação:

  • Como o URI ficaria (por exemplo, se você usar este URL -. Http://www.example.com/ )?
  • Que informação seria ir para o envelope HTTP?
  • Eu utilizar POST quando se escreve para o banco de dados dessa maneira?
  • Eu uso um recurso para armazenar os dados postados a partir do cliente? É isso mesmo necessário se os dados estão sendo gravados em um banco de dados de qualquer maneira?
  • Quando os dados a serem writeen no db é recebido pelo servidor - como faço para inseri-lo fisicamente no banco de dados - que eu chamo algum método no servidor para realmente escrever os dados (em Java)? - isso não parece enquadrar-se com a arquitetura RESTO verdadeiramente - evitando chamadas RPC.
  • Devo mesmo estar incomodando escrevendo para um DB - eu deveria estar armazenando os meus dados como um recurso?

Como você pode ver eu preciso de algumas questões de compensação na minha cabeça. Qualquer ajuda muito apreciada.

Publicado 10/12/2008 em 12:22
fonte usuário
Em outras línguas...                            


2 respostas

votos
5

Primeiro de tudo, eu não sou qualquer java nem c # perito e eu não sei exatamente o que significa que essas línguas têm para apoiar projeto REST, mas em geral:

  1. http://www.example.com/customers - clientes é uma coleção de recursos e você deseja adicionar um novo recurso para esta coleção

  2. Depende de várias coisas - você provavelmente deve definir o cabeçalho do tipo de conteúdo (de acordo com o formato de dados em que você está enviando a representação) e definir alguns cabeçalhos de autenticação se você precisar dele.

  3. Sim, você sempre use POST para criar uma nova entrada em uma coleção de recursos.

  4. Eu não entendo plenamente esta questão, para ser honesto. O que você quer dizer com "escrita inmediately dados no banco de dados"?

  5. REST é principalmente apenas um estilo de comunicação entre o servidor e um cliente. Ela não diz nada sobre como você deve lidar com os dados recebidos usando-o. A maneira usual como moderno web se aproxima (estruturas de estilo MVC) resolvê-lo, é pelo encaminhamento cada ação REST para um método de alguma classe (geralmente uma instância do controlador), onde você lida com os parâmetros recebidos (por exemplo. Guardá-las para o banco de dados) e gerar uma resposta a ser enviado de volta.

Para uma introdução muito breve e muito clara para descansar ter um olhar para este pequeno vídeo .

Respondeu 10/12/2008 em 12:59
fonte usuário

votos
3

RESTful Web Services , publicado pela O'Reilly and Associates, parece caber a conta que você está procurando.

Tanto quanto fazê-lo em Java, a Sun tem uma página sobre ele.

Respondeu 10/12/2008 em 12:39
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more