views:

5

answers:

1

Hi All,

Am creating a very customizable web application in j2ee. The application has some configurations that are specific to each client supported and the client can have multiple users.

The way I am thinking of doing this is storing the configuration in a db table having the columns client_id , property_name, property_value and associating each user with a client id. So when a user logs in we check the client id of that user and load the configurations for that client from the db.

Please let me know your suggestions/opinions.

A: 

Many JEE apps use some form of externalised configuration such as property files or databases. In general JEE app servers may run across a cluster of machines, hence externalising to a single sharable repositiory (database) works pretty well.

You need to consider how that database will be maintained, you may need to write a UI, or a mechanism for refreshing the Db by importing from an editable file.

You may also want to consider some kind of versioning in the DB, so that if the configuration gets fouled up you can easily revert to a previous working configuration.

djna