动机: 我非常喜欢 playframework v1 但对v2不太感冒 v1中哪些特性应该保留:
哪些应该改变或者提高的:
Proposed Controller API:
public class Orders extends Controller {
// --- Parameters used in action handling methods
@Bind(method = Bind.ByID)
protected Order order; // will bind to http request params with Order.findById(params.get("orderId"))
@Bind(method = Bind.ById)
protected User user;
// -- eof Parameters
// this use new return style API
@Required("orderId")
public Result show() {
return new Render(order);
}
// this use old style API
@Required("orderId")
public void saveUpdate() {
notFoundIfNull(user);
order.save();
render(order, user);
}
// this action method will be executed in a separate thread
@Async
public Result report() {
order.save();
List<Order> orders = ...
return new RenderPDF(orders);
}
}
Sample route file:
GET /orders/{orderId} Orders.show
POST /orders/{orderId} Orders.saveUpdate
GET /orderReport Orders.report