There must be a dozen different libraries out there that support reading and writing Excel documents. Some, like POI or OpenXLS, let you directly manipulate Excel files directly. These libraries don't use Microsoft Excel, so they work well in mixed OS environments. However, they don't support some key features of Excel, and their APIs don't correspond to Excel's COM API, so it can be difficult at times to figure out how use them to do even simple things.
http://www.rgagnon.com/javadetails/java-0516.html \\- various ways to read and write Excel documents
minimalistic framework, and syntax that corresponds directly to the Microsoft documentation