1. you need to be proficient in object oriented analysis and design (OOA/OOD), J2EEDP (GOF), and integrated models. You should know about UML, especially class, object, interaction, and statediagrams.
You need to learn the basic knowledge of
2. Java language and its core libraries (collections, serialization, streams, networking, multithreading, reflection,? Event, handling, NIO, localization, and others).
3. you should know about JVM, classloaders, classreflect, and the basic working mechanisms of garbage collection. You should be able to decompile a class file and understand some basic assembly instructions.
4. if you’re going to write a client program, you need to learn Web’s small applications (applet), you must master the ideas and methods of GUI design, and the desktop program’s SWING, AWT, SWT. You should also have an understanding of the JavaBEAN component patterns of the UI components. JavaBEANS is also used in JSP to separate business logic from the presentation layer.
5. you need to learn Java database technology and use at least one persistence/ORM architecture, such as Hibernate, JDO, CocoBase, TopLink, InsideLiberator, JDO, or iBatis.
6. you should also understand the relationship between object impedance mismatch means, and how it affects the interaction of business object and relational database, and its operation results, but also need to have different products of database application, such as racle, mysql, mssqlserver.
7. you need to learn Servlets, JSP, and JSTL (StandardTagLibraries) and third party TagLibraries that can be selected.
8. you need to be familiar with mainstream web frameworks such as JSF, Struts, Tapestry, Cocoon, WebWork, and their underlying patterns, such as MVC/MODEL2.
9. you need to learn how to use and manage Web servers such as tomcat, resin, Jrun, and know how to extend and maintain Web programs based on them.
10. you need to learn distributed objects as well as remote AP>