The DBExplorer application is an example of two things. It is a full featured Sybase database browser (or any database for which a JDBC driver is available.) It is also an example of a novel application architecture that allows a developer to deploy web applications to a desktop and leverage the portablity and simplicity of web applications without the need for any backend server install or configuration. More about this later in this post.
DBExplorer is a multi-architecture shell that hosts the jSQL database browser web app developed in Java and available as an Applet, Eclipse IDE plugin and now Microsoft Windows and Apple Macintosh standalone binaries. The jSQL application presents the objects in a database as a web site leveraging the ability to insert links to browse between objects and data, view the status of the server graphically and enter interactive SQL using a simple web form.
Advanced features of jSQL include the ability to completely parse a Sybase or SQLServer database to find dependancies between objects, monitor server load and optimise stored procedures and SQL by presenting showplan results in a user friendly format. If referential constraints are defined, jSQL cal also display data linked so it can be browsed as easilly as clicking on a link. For more examples of how to use DBExplorer (in it's DBEclipse incarnation) consult the user guide.
Perhaps DBExplorer's most unqiue feature however is it's novel architecture. Developed entirely in Java for portability the jSQL web application based around JDBC is hosted entirely on the client with the web server started when the application is run automatically. In this way it is possible to write a portable application in Java but with the rich graphical UI avoiding the complexity of Java awt development.
When, for example the Windows standalone DBExplorer.exe starts it spawns a java process to run the "jhtppd" web server on local host browsing to the address of the jSQL web application. The OSX version also takes this approach while the eclipse plugin runs the web server as a thread inside the eclipse IDE itself. The final variant, the dbexplorer.com site itself is also able to run the jSQL application as a Java applet inside the browser itself.
If this still seemsa round about way to develop an appplication cosider the advantages: portable cross platform deployment of of rich client application without the complexity of a server side install, ability to leverage the high level constructs such as CSS, forms, frames, hypertext linking without wrestling with varying even models and having to support multiple architectures and IDEs.
jSQL itself is developed using the jhttpd web server available at jhttpd.org under Linux. The jhttpd web server has a number of advantages. All modifed Java code autocompiles when a page reloads leading to very rapid web appplication devlopment. The application is then packaged along with the web server as jars and can be run by the standalone clients or even as an Applet in a web page as used by the original version at dbexplorer.com.
I hope you enjoy using DBExplorer. I and my collegues use it every day in my work as a Sybase consultant. If you have an suggestions drop us a line using the contact email address at dbexplorer.com.
John H.
Monday, 7 April 2008
Subscribe to:
Posts (Atom)