I'm doing a small card-playing website, more to update my
Java skills than making money, etc., but it will be used as a portfolio item to show employers, so I want to do best practices.
I wanted to ask what people use these days to communicate between the front end and back end? Years ago, I used JSPs, so Struts/Spring/JSF naturally had that communication going. However, the jQuery and AJAX/javascript stuff that lets me communicate with the server without refreshing the page has me confused. Does it use JSON? If so, is there a library in
JEE or open-source library I should be installing to make that happen? By the way, I've never used jQuery or JSON, so only read about it on Wikipedia, etc. What's the best practice here, or at least, the set of mainstream practices currently used in the industry?
Lastly, I want to integrate possibly an iOS app to the same Java app server back end so a user can play with a native iOS app and another user could play in the same game on the website, and it would be seamless.
For context, my tentative tech stack will be:
Front-end HTML/CSS, maybe JSPs,
JSF, or some such thing (TBD)
JBOSS App Server
Hibernate
MySQL or similarly simple-yet-robust, open DB
Thanks!