Web服务 - 传递参数

时间:2012-10-09 13:31:55

标签: java web-services

我在 DB 中有一个表:

id | name | surname | street

对于 WebService ,我想调用方法并将参数传递给写入数据库的方法。 但是,可以同时写几行,如:

1 | Jan | Nowak | Jasna

2 | Piotr | Kowalski | Ciemna

等...

我需要传递参数name,surname,street。我考虑过地图的转移,但是当我传递了两个key-value(名字 - 姓氏)值时,这里出现了第三个值。怎么做到最好?

1 个答案:

答案 0 :(得分:0)

为通用Web服务执行此操作的普遍接受的方法是执行HTTP POST,其主体包含描述要插入的值的XML或JSON。

例如,您可以POST资源"/people",如下所示:

<people>
  <person>
    <id>1</id>
    <name>Jan</name>
    <surname>Nowak</surname>
    <street>Jasna</street>
  </person>
  <person>
    <id>2</id>
    <name>Piotr</name>
    <surname>Kowalski</surname>
    <street>Ciemna</street>
  </person>
</people>

然后在处理POST的代码中,将XML(使用JAXB或课程)解析为Java对象,然后通过JDBC,Hibernate,MyBatis等将它们写入数据库。

在这里使用POST非常重要;通过GET传递太多参数是不可靠的,而不是HTTP的使用方式。