EJB User : @Table(User)

Set explicitly the table name.
It fixes the "Unknown table 'USER'" when accessing the DB through the userDAO
EJB User : Autoincrement userId

Enable userId autoincrement : it is more easy to insert a new User.
EJB UserDAO : getUserByMail return a list

As User.mail is not a primary key, it is safer (and more convenient)
to return a list instead of a unique User.

It also enable to check if a mail is already in use
EJB UserDAO : methode insert to insert a new User

The insert methode insert a new user, after cheking that the mail is
not already in use. It uses the autoincrement on User.userId.
ControllerUser : create an account and login
NavBar : Display mail when logged in