The UserManager

Once offices are set up, the next logical step is to deal with Forethought users. Users are crucial to any application, which makes the UserManager component a critical part of the Forethought application. This particular manager component will also illustrate some of the important reasons for using managers at all. Chief among those reasons are data source transparency and data format transparency. Both offer advantages to the manager clients and provide many of the security and ease-of-use benefits discussed earlier with regard to the OfficeManager.

Data Source Transparency

In the case of Forethought offices, all information related to an office is stored in a single table, in a single data source: the Forethought RDBMS OFFICES table, which we set up in Chapter 3. While extremely convenient, this is most often not the case. It’s a lot more common to find that a single logical entity (like a user) has its information stored in multiple tables (like the USERS and USER_TYPES tables), and even in multiple data sources (like the Forethought database and the Forethought directory server). As a result, working with one logical piece of data often requires operating upon multiple physical pieces of data. This can become quite a pain for application clients: they must use JDBC to connect to a database, SQL to select from and join together tables, and then JNDI to operate upon a directory server; finally, the resultant information has to be spliced together in some meaningful ...

Get Building Java Enterprise Applications now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.