Before you start
In this tutorial, you will begin to build a calendar and a reminder system that uses Apache Derby as the back-end of the database. In parts 2nd and 3rd of this series, two different user interfaces will be added to the application, but now we are committed to accessing the data and setting up appropriate reminders using email.
You will learn the following:
Basic Derby Concepts
Install Derby and interact with it in embedded mode
Using JDBC to connect to Derby
Adding data to Derby using JDBC
Use JDBC query and view Derby data
Updating existing Derby data by using JDBC
Use the Java language to send e-mail reminders
Prerequisite
This tutorial assumes that you are proficient in Java language programming, but do not understand JDBC and Apache Derby. Familiarity with SQL is useful, but not required.
System Requirements
To learn this tutorial, you need to:
Java 2 Platform, Standard Version (EE) 1.4.2 or later. You must have a Java Developer Kit (JDK), not just the Java Runtime Environment (JRE). Download Java code from the Sun Web site.
Apache Derby, which you can download from Apache Software Foundation.
JavaMail. To send an e-mail reminder, you need to have Mail.jar, which is now part of the Java package. You also need Activation.jar, which provides downloads as part of the JavaBeans activation framework. Make sure that the two files are included in your Classpath (class path).
A text editor or integrated development environment (integrated Development Environment, IDE). Using the IDE, such as Eclipse, you can easily create a Derby application, but I assume you use a simple text editor.
Calendar overview
Before we build the application, let's take a look at what our ultimate goal is.
Calendar and Reminder System
In this three-part series, you will build a system designed to allow users to enter events, such as meetings and birthdays, and to view existing events. The system also sends an e-mail reminder to the address specified by the event.
In this tutorial, you will create a basic Event, Calendar, and reminder class that has a title, description, date, and e-mail address to receive reminders. In parts 2nd and 3rd, you will incorporate these classes into your application.
Extended options
The first version of the user interface will be a Java GUI intended for personal use. It uses the EMBED mode of Derby-single-user mode, in which the database is distributed as part of the application.
Then we will migrate to a multiuser version. Still uses the Java GUI, but will use the network mode of Derby. In this mode, multiple clients can access the same database. You will embed the database in the Web application server and create a web-based interface for the calendar system. Finally, we'll look at some of the advanced features of Derby, such as locks and transactions.