ZK Spreadsheet is an AJAX component that delivers Excel-like experience for your Java web application. It has a grid-like user interface with toolbar, formula bar, and sheet bar and it provides necessary features such as editing text and styles, merging, sorting cells and inserting, deleting, and freezing rows and columns. Spreadsheet not only supports over 75% of Excel formulas and you can even add your own ones. Some handy features like "auto fill", "auto filter", and protection are also included in Spreadsheet.
Being able to import and export Excel files are just the top of the features iceberg. Unlike other online spreadsheet such as Google Docs or Microsoft Office 2010 online suite, you can integrate ZK Spreadsheet with your enterprise back-end systems seamlessly and create collaborative and dynamic enterprise applications at minimal cost. You can call versatile Java APIs to control and configure the ZK Spreadsheet component(s). You can register event listeners so an action can be automatically triggered if any specified cell, range, or name changes. You can make cells reference to the backend Java beans, so any changes on the backend data can automatically reflect on ZK Spreadsheet. You can create your own customized formulas in Java and use them in the spreadsheet like other built-in formulas. You can even create an online spreadsheet service with ZK Spreadsheet component.
ZK Spreadsheet is an extensible, customizable, and integrable Java AJAX web spreadsheet solution, with both built-in browser AJAX user interface and back-end server side Excel-like data and logic. No ActiveX or other plug-ins are required.
ZK Spreadsheet component consists of three major parts -- the client-side UI , the server-side component, and the book data model with the formula evaluation engine. The UI is a grid like widget that you can in-place edit the content of each cell. The component is a server-side instance which your controller usually works with. The data model stores the actual Spreadsheet data. The formula evaluation engine is responsible for formula parsing and calculations.
Using in JSP or JSF
Difference from 2.5.0
In 3.0.0, we have made some significant changes including new APIs for accessing book model, event name change, and the new way to customize toolbar handling. For complete details, please refer to upgrade note.
Difference from 3.0.0
In 3.5.0, we introduce a brand new model implementation. This enhancement doesn't change the way you use the Spreadsheet's public API mostly, but reduces Spreadsheet's memory consumption. Also we have established a new theme mechanism that you can design your own theme with CSS and change it dynamically. We have as well designed a new Skyline theme as the default theme for the version 3.5. There are other enhancements; please refer to upgrade note for details.
Example Source Code
The complete source code of this book can be accessed from Github. You can also download the whole project zip file which contains a maven project or a WAR file for deployment, and there are several Excel files under /src/main/webapp/WEB-INF/books/ of the project.
All source code listed in this book is at Github.