I suggest "Thinking in Java", "Effective Java" and to get OCJP training material and start doing that.
Can you implement the 10 guesses game? You know, computer picks a number between 1-100 and asks you to guess, then it tells you if its higher or lower. Do this in a simple Java class, static main, play from console.
Then do that same program but this time as a web page and using JSP, for this step itll require a lot. You have to make a Java project in Maven and deploy it in tomcat. THere should be a button to "enter" the guess.
Now when youve done the above exercises, redo it and this time secure it, and use ajax, no page refresh.
Now for the last exercise ask for the users name before gamae begins, and save every game the user plays to a database of your choice, I suggest PostgreSQL, and let any user see what other users played, like a replay of the game.
Make it as ugly and as wrong as you can think, dont care, just do this.
Now when you have done the above and have a webapp made with Java, JSP and simple JDBC, where user can play in its browser, see historical games and so on, add a counter "This many users are playing right now".
Next month, make a computer play the game you made. First code it to play against the console version, then against the web one, you can make an API or WebService to play it.
Now when youre done, come back in a month or two and ask again.
https://news.ycombinator.com/item?id=7573141
I suggest "Thinking in Java", "Effective Java" and to get OCJP training material and start doing that.