你没有提供足够的关于你的项目的信息来了解正在发生的事情,但是项目位于
https://github.com/jeffbrown/sfgroupsjsonbinding/tree/master
演示内置绑定材料的工作原理。请参阅此处的readme.md文件。
https://github.com/jeffbrown/sfgroupsjsonbinding/blob/3ff4e8b39ba5fda9956ebfc67cd0b9e5d940b8f2/src/main/groovy/sfgroupsjsonbinding/BookController.groovy
package sfgroupsjsonbinding
import io.micronaut.http.annotation.Controller
import io.micronaut.http.annotation.Get
import io.micronaut.http.annotation.Post
@Controller('/book')
class BookController {
private PersonService personService
BookController(PersonService personService) {
this.personService = personService
}
@Get('/')
List<Person> list() {
personService.list()
}
@Post('/')
Person save(Person person) {
personService.save person
}
@Get('/{id}')
Person get(long id) {
personService.get id
}
}
与应用程序交互
$ curl -H "Content-Type: application/json" -d '{"name":"Jeff"}' http:
{"name":"Jeff","id":1}
$
$ curl -H "Content-Type: application/json" -d '{"name":"Jake"}' http:
{"name":"Jake","id":2}
$
$ curl -H "Content-Type: application/json" -d '{"name":"Zack"}' http:
{"name":"Zack","id":3}
$
$ curl http:
[{"name":"Jeff","id":1},{"name":"Jake","id":2},{"name":"Zack","id":3}]
$
$ curl http:
{"name":"Jeff","id":1}
$
$ curl http:
{"name":"Jake","id":2}
$
$ curl http:
{"name":"Zack","id":3}
$