Play! Framework has been used for almost half a year, and tomacat has been used. However, the biggest problem with play is that native SQL cannot be executed, and the most common way is to return a data source for its own iteration.
If the result of renderjson execution is not encapsulated, you need to create a model for the SQL statement to operate. If the SQL statement is complex, you need to consider the view.
So that at the beginning of the design, we designed a lot of scattered tables. In actual work, we needed a lot of Join Operations, so we had to create a lot of views.
In addition to view, the other method is to execute the stored procedure. This requires more powerful SQL technology.
As for other aspects, play is indeed very powerful. dynamic compilation has saved all kinds of routing ing template systems, such as JPA.
When you use it, skip the pitfall and play is still beautiful.