The techniques that are essential to any web developer are the following.
The technology for developing Web applications has become more mature and more complex. Now, building a Web application requires more than just simple HTML technology. Database access, scripting language, and management are all technologies that a web programmer needs to have. Let's see what skills are needed to become a popular web developer on the market.
Since CERN (European Particle Physics Institute), near Geneva, the High Energy Physics Research Center, published the Web in 1991, Web technology has been from static content and common Gateway Interface (CGI) developed into servlet technology and JavaServer pages. However, in this more competitive society, a web programmer needs more knowledge. For example, if you mention in an interview that you are familiar with XML and have some experience with jndi (these two techniques seem to have no close relationship to Web programming at first glance), you will give your future boss a deeper impression. Imagine that you already know the Java programming language and object-oriented programming, and there are two sets of technologies that are needed for a web developer's day-to-day work. The first group includes the technologies that each Web programmer must have. The second group contains the techniques that you should master in order to be a senior programmer.
Basic Skills
If you want to call yourself a Web developer, the following are the technologies you must have.
HTML (hypertext Markup Language)
HTML is almost the language of all content displayed on the browser. No wonder HTML is like a Web programmer's survival instinct. If you still need to find <tr> or <b> in your HTML, then you really need to improve your HTML technology. The current version of HTML is 4.01, and you can learn more about it from http://www.w3.org/TR/1999/REC-html401-19991224/.
Servlets and JSP
Java servlet Technology is the primary technology for developing Java Web applications. It was developed by Sun Microsystems in 1996 and the current version is 2.3, but people are preparing for version 2.4.
JSP is the extension of the servlet technology, now the version is 1.2 (2.0 version will soon be set up). Some people think that JSP is the substitution of servlets, but the reality is not the case. Servlets and JSPs are used together for complex web applications.
A good starting point for Web programming in Java is learning about servlet technology. Even if you plan to use only JSP pages in your Web application, you still need to learn the servlet technology. In more complex Web applications, JSP pages are used only for display, while JavaBeans and custom tag libraries are used to embed business logic. That is: You must also be proficient in JavaBeans and custom tag libraries.
Javascript
JavaScript is the scripting language that runs in all the major browsers. You use JavaScript for client programming. The most important task in client programming is to confirm user input. The benefit of using client input validation is to reduce server workload and increase response time. In addition, JavaScript can be used for redirection (redirection), cookie processing, controlling applets, creating a navigation tree, opening a new instance of a browser, and so on.
SQL (strutured Query Language) and JDBC (Java Database connectivity)
Today, most Web applications include accessing data in a relational database. As a web programmer, you need to know how to store, get, and manipulate data in a database. Sometimes, you also need to design databases, build tables and other structures in your database. SQL is the language used to manipulate the data in the database. You usually need to write SQL statements (often dynamic), pass them to the database server, and get the returned data (if any).
Using the Java language, you need to use JDBC to help the Web application and the database server communicate. JDBC has two parts: the JDBC Core API (Application programming Interface) and the JDBC Optional Package API. The first group is used to perform basic data operations, such as creating a connection or reading, updating, and deleting records from a table. The second group provides more advanced database connectivity features, such as connection pooling, transactions, and rowset. The current version of JDBC is 3.0,API contained in J2SE v. 1.4.
WEB container Management and application deployment
Your servlets and JSP pages run in an engine called servlet/jsp container or Web container. You need to know at least how to deploy your Web resources for testing and production operations. For example, if you use Tomcat, one of the things you need to know is how to map the application in the configuration file (Server.xml) so that Tomcat knows how to call your JSP page. In addition, you need to know where to save your library and how to create an application deployment descriptor.
XML (extensible Markup Language)
XML is a successful Up-and-comer in the computer field. Developed by the World Wide Web Consortium in the 1996, XML is now a broad, recognized standard for data interchange and extensible structure. XML plays an important role in Java Web development. For example, the deployment descriptor for each application is in XML format. And, if you're developing Web servies, you'll use soap (simple Object Access Protocol), which is primarily based on HTTP and XML.
In addition, in Web applications, XML can also be used to store hierarchical data.
Model 2 Structure
This technology is the most advanced in this category. This structure is recommended for building rather complex Java Web applications. Model 2 structure is based on the Model-view-controller design paradigm.
Advanced Technology
Here are some techniques you can use to differentiate yourself from beginners.
JSTL (JSP Standard Tag libraries), Jakarta Taglibs project, and other libraries
To speed up application development, you should always reuse code. Simply put, code reuse is that if someone has written code to perform some function, you'd better use that code instead of writing it yourself. Therefore, JSP allows you to use custom tags. You can use a few libraries, most popular is the Apache Jakarta taglibs project in the library. You can download this package from http://jakarta.apache.org/taglibs/index.html, and you can use whatever is available in this package before you start creating new classes.
Jstl has recently become a standard. Other tag libraries can be obtained free of charge or in a commercial manner.
The Apache Struts Project
Struts is an Apache-sponsored public resource project that provides a framework for building Model 2 Java Web applications. Struts provides its own controller components for the MVC structure, uses EJBS, JDBC, and Jndi for model, and uses JSP and other technologies for view. You can find more detailed information about this project from its website: http://jakarta.apache.org/struts/index.html.
XHTML (extensible hypertext Markup Language)
XHTML is a technology that strives to combine HTML and XML. You can think of XHTML as the next generation of HTML. Its current version is 1.0 (the second edition was released on August 1, 2002), and XHTML is not as popular as HTML, but it will play a more important role in the future. According to Molly Holzschlag, a web design expert, the main reason for moving companies to XHTML is the U.S. Law on Public Access (accessibility). For more information on XHTML, refer to the Holzschlag interview.
DHTML (Dynamic HTML)
DHTML allows people to have more interaction on your site. For example, using DHTML, when a user moves the mouse over a link, you can easily create and display submenus. The biggest challenge in using DHTML is to create a Cross-browser Web page. Indeed, in theory, page design should be handled by the artist, where dynamic HTML is generated by using a tool. However, a web programmer is usually responsible for integrating all the parts, and if the generated code in the page is corrupted, you need to understand DHTML to fix it.
Applet programming
Applets was once important in providing interactivity, especially before the advent of DHTML. Now, applets's role has been cut, and more programmers are not applets. Microsoft's decision not to provide default support for applets in its new browser greatly reduces the role of applets in Web applications. However, applets did not die. For some tasks, such as displaying news headlines, applets is still irreplaceable, and applets does not create a cross browser compatibility problem with another headache.
HTTP protocol
Java Web programmers typically use protocols that are higher than HTTP, such as using servlet and JSP APIs. These APIs hide the complexity of the HTTP protocol. As a result, you can still build important applications without having to know much about the HTTP protocol. You need more knowledge of the protocol only if you need to process raw data, such as uploading or transferring files as attachments.
EJB (Enterprise JavaBeans)
EJB is part of Java EE, and EJB is important when scalability and power are the main requirements of your Web application. There are three types of EJBs in the current specification (EJB 2.0): Session EJBs, Entity (entity) EJBs, and message-driven driven. The new specification, version 2.1, is in the process of being designed.
JNDI (Java naming and Directory Interface)
Jndi is important when you are developing enterprise beans, because access to an EJB is done through the Jndi naming service. Use a naming service to find an object that is related to a particular name. In the EJB context, a naming service finds an enterprise bean, given the name of the bean. Therefore, understanding Jndi is critical in developing an EJB application. In addition, JDBC can use Jndi to access a relational database.
Other tools
Learn where you can find specific support tools that usually contribute to your career development. For example, if you happen to be assigned to work on benchmarks, you'll be happy if you know you can download jmeter from Apache's Jakarta project. In addition, if you need to send the output in PDF format, it is recommended that you use the Java-pdf library which is free to download from http://www.lowagie.com/iText/. Internet technology is wide and fast. That is to say, as a web programmer, you should always be mindful of what new technologies are emerging in the industry and what is happening. In this respect, there is no greater resource than the Internet itself.
About the Author:
Java for the Web
With Servlet, JSP, and EJB
Budi Kurniawan is an IT consultant who specializes in internet and object-oriented programming, and teaches Java and Microsoft technologies. He is the author of a well sold Java for the Web with Servlets, JSP, and Ejb:a Developer's Guide to scalable Solutions (New riders), and he has also developed the most popular Java Upload Bean, you can get it from brainysoftware.com, and many important companies are licensed and used in the project. Budi's contact is budi@brainysoftware.com.