JMortgage is a java library for calculating amortization schedules. It is highly configurable and makes it easy to calculate extra payments and accelerated payment schedules like biweekly and weekly.