gpt4 book ai didi

java - ReSTLet,带参数的 get 示例

转载 作者:行者123 更新时间:2023-12-04 05:13:27 25 4
gpt4 key购买 nike

刚开始在 java 中使用 reSTLet,并惊讶地发现它是如此简单。然而,这是看跌期权。然后我开始使用 get 但无法弄清楚如何使用 get 传递信息。

使用 put 很容易,因为:

@Put
public Boolean store(Contact contact);

但是当我尝试使用 get 执行此操作时,它不起作用。通过阅读,我认为我不必传递任何参数,只需要有这个:
@Get
public Contact retrieve();

然后在 url 或其他东西中传递参数?
但我找不到有关如何执行此操作的任何信息。与 put 一样,我可以使用:
resource.store(user1);

请问有什么帮助吗?

我很确定这是那种我只需要看到一个例子然后就可以轻松完成的事情。如何从另一端的 url 中获取信息的示例也将非常有帮助。

谢谢

我现在在我的客户端:
String username = "tom";
ClientResource cr2 = new ClientResource("http://.../ContactManager/contacts/" + username);
ContactResource resource2 = cr2.wrap(ContactResource.class);
resource2.logIn();

在服务器端,我有:
@Get
public Contact logIn(){
System.out.println("name is " + resource.getAttributes().get("contactId"));
return null;
}

但我不确定什么是资源?它在我的程序中不存在,并且不确定它需要是什么类型或在哪里声明它。

最佳答案

REST 的一个好方法是在 URI 中指定此联系人 ID。类似的东西:/contacts/mycontactid。

在应用程序类中附加您的资源时,您可以将此段定义为一个属性(在您的情况下为联系人 ID)。

public class ContactsApplication extends Application {
public Restlet createInboundRoot() {
Router router = new Router(getContext());
router.attach("/contacts/", ContactsServerResource.class);
router.attach("/contacts/{contactId}", ContactServerResource.class);
return router;
}
}

然后你可以在他的回答中获得理查德提供的代码。

希望对你有帮助。
蒂埃里

关于java - ReSTLet,带参数的 get 示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14608932/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com