I a software engineering student who took a Java course last semseter.But currenlty I'm self-studying Java for expanding my Java knowledge.The problem is that Java is a very vast programming language and I'm confused where to head next. I would say I'm on the intermediate level with regards to Java; I know the basics and some advanced features like mulithreading and GUI app design. Recenlty, after surfing the web, I found that knowing XML to be a necessary aspect of a Java developer, however I also want to study Networking, JDBC and other advanced Java. So folks, what book or advice would you recommend for me? Thanks in advance.