ExperShop is based on Java Servlets and JDBC, and has its own HTML template expansion technology (DynHtml) to easily make database-aware web pages.
ExperShop's architecture makes it highly portable: we recommend Linux, Apache Tomcat and MySQL ; but if you prefer Windows or AIX, IBM WebSphere or BEA WebLogic, Oracle, PostgreSQL or SQLServer, just do it.
Java is an object-oriented programming language, developed by Sun (see the Java home page), and supported by most hardware and software vendors.
A java program is portable and may be used on many systems (including Unix, Windows and MacOs), and java is highly adapted to network computing (this is more than client/server: java programs may be moved across a network).
Specified and promoted by JavaSoft, Servlets are becoming a new standard for dynamic HTML generation and server-side scripting on web servers.
Servlets are java programs that are executed on a Web server: for those familiar with server-side scripting, a servlet looks like a CGI script.
For example, a servlet can read data from a database, format them, and return them in an HTML page so you can see the results in your Web Browser.
Some reasons why servlets should replace CGI scripts in the future:
JDBC (Java DataBase Connectivity) allows Java programs to deal with relational databases. JDBC is part of the Java language. Its architecture looks like ODBC, for those who know it (but the APIs are much cleaner).
JDBC allow programmers to write database-independent programs: interfacing the database itself is done through a JDBC Driver, and drivers exist for most databases available on the market (like Oracle, Informix, Sybase, SQL Server, for example).
Some JDBC drivers are client/server, this means the database can be on the same server as the Java application, or not.
ExperShop DynHtml Technology
DynHtml is an ExperLog technology: the ExperShop user writes HTML templates, that include HTML tags and specific ExperShop tags.
DynHtml allows to generate dynamic HTML content without writing any java code.
The specific ExperShop tags allow to query a database, loop on the results and display them, handle errors...
They also allow to deal with HTTP parameters, such as values entered by users in HTML input forms.