If you ever wondered why Java Server Pages (JSP) is a good business choice then
the first thing you need to know is that JSP makes very little fuss to get data
from a web server. You save on everything in the process! Is that all? Hang on,
it is just starting.
JSP is making waves in the development world. It will stay with us for the next
following years (although it will be updated several times), and every major
company will start and in several cases has already started using it.
Java Server Pages (JSP) technology provides an easy way to create dynamic web
pages and simplify the task of building web applications that work with a wide
variety of web servers, application servers, browsers and development tools.
This article provides an overview of JSP from a developer's perspective, and
includes examples of JSP in action.
Java Server Pages technology allows web developers and designers to easily
develop and maintain dynamic web pages that leverage existing business systems.
As part of the Java technology family, JSP enables rapid development of
web-based applications that are platform-independent. JSP separates user
interfaces from content generation, enabling designers to change the overall
page layout without altering the underlying dynamic content.
What exactly is a Java Server Page?
In its basic form, a JSP page is simply an HTML web page that contains
additional bits of code that execute application logic to generate dynamic
content. This application logic may involve JavaBeans, JDBC objects, Enterprise
Java Beans (EJB), and Remote Method Invocation (RMI) objects, all of which can
be easily accessed from a JSP page. For example, a JSP page may contain HTML
code that displays static text and graphics, as well as a method call to a JDBC
object that accesses a database; when the page is displayed in a user's browser,
it will contain both the static HTML content and dynamic information retrieved
from the database.
The separation of user interface and program logic in a JSP page allows for a
very convenient delegation of tasks between web content authors and developers.
It also allows developers to create flexible code that can easily be updated and
reused. Because JSP pages are automatically compiled as needed, web authors can
make changes to presentation code without recompiling application logic. This
makes JSP a more flexible method of generating dynamic web content than Java
servlets, whose functionality JavaServer Pages extend.
JSP and Servlets
If you've worked with Java servlets you know that servlets allow you to create
dynamically-generated web pages that include data from server-side Java objects.
But you also know that the servlet approach to generating web pages is to embed
HTML tags and presentation code within a Java class. This means that changes to
presentation code requires modification and recompilation of the servlet source
file. Because web authors who design HTML pages may not be the same folks as the
developers who write servlet code, updating servlet-based web applications can
be an involved process.
Enter Java Server Pages, which are an extension of the Servlet API. In fact, JSP
pages are compiled into servlets before they are used, so they have all of the
benefits of servlets, including access to Java APIs. Because JSP pages are
generally presentation code with application logic embedded in them, they can be
thought of as "inside-out" servlets.
While JSP pages mainly provide a higher-level method of creating servlets, they
bring other benefits as well. Even if you're already content writing servlets
for web applications, there are plenty advantages to using JSP:
JSP pages easily combine static templates, including HTML or XML fragments, with
code that generates dynamic content.
JSP pages are compiled dynamically into servlets when requested, so page authors
can easily make updates to presentation code. JSP pages can also be precompiled
if desired.
JSP tags for invoking JavaBeans components manage these components completely,
shielding the page author from the complexity of application logic.
Developers can offer customized JSP tag libraries that page authors access using
an XML-like syntax.
Web authors can change and edit the fixed template portions of pages without
affecting the application logic. Similarly, developers can make logic changes at
the component level without editing the individual pages that use the logic.
In general, JSP allows developers to easily distribute application functionality
to a wide range of page authors. These authors do not have to know the Java
programming language or know anything about writing servlet code, so they can
concentrate on writing their HTML code while you concentrate on creating your
objects and application logic.
What are the Advantages of JSP?
vs. Active Server Pages (ASP)
ASP is a similar technology from Microsoft. The advantages of JSP are twofold.
First, the dynamic part is written in Java, not Visual Basic or other
MS-specific language, so it is more powerful and easier to use. Second, it is
portable to other operating systems and non-Microsoft Web servers.
vs. Pure Servlets
JSP doesn't give you anything that you couldn't in principle do with a servlet.
But it is more convenient to write (and to modify!) regular HTML than to have a
zillion println statements that generate the HTML. Plus, by separating the look
from the content you can put different people on different tasks: your Web page
design experts can build the HTML, leaving places for your servlet programmers
to insert the dynamic content.
vs. Server-Side Includes (SSI)
SSI is a widely-supported technology for including externally-defined pieces
into a static Web page. JSP is better because it lets you use servlets instead
of a separate program to generate that dynamic part. Besides, SSI is really only
intended for simple inclusions, not for "real" programs that use form data, make
database connections, and the like.
vs. JavaScript
JavaScript can generate HTML dynamically on the client. This is a useful
capability, but only handles situations where the dynamic information is based
on the client's environment. With the exception of cookies, HTTP and form
submission data is not available to JavaScript. And, since it runs on the
client, JavaScript can't access server-side resources like databases, catalogs,
pricing information, and the like.
vs. Static HTML
Regular HTML, of course, cannot contain dynamic information. JSP is so easy and
convenient that it is quite feasible to augment HTML pages that only benefit
marginally by the insertion of small amounts of dynamic data. Previously, the
cost of using dynamic data would preclude its use in all but the most valuable
instances.
What are the basis of your pricing? Can you give me
examples?
Experts From UK offers a monthly rate card for UK JSP programmers who'll
work only on your project and complete the tasks in stipulated time. Hiring
programmers on full-time basis is highly flexible as in it can follow any
development life cycle. You'll be provided with a competent Project / IT manager
on his side and your involvement is high. This ensures that your outsourcing
venture is highly successful and meets all your business objectives.
This is a least cost option hence you'll have budget predictability and IP
ownership. Your Experts From UK IT team is highly flexible i.e. they can
start with any level of expertise on the application. This places a high amount
of control in your hands.
What is the difference in costs when I hire a
programmer from UK as compared to the US?
We have a lot of positions/departments involved in the application development.
You could work with a single programmer on all facets, including project design,
choosing the right database, testing and fixes. One programmer in the US is
currently paid about $80,000/year.
|