TypeHandlers are at the lowest level of db4o. A typehandler is responsible to turn a object or parts of an object into a byte stream. db4o brings are whole set of type handlers for different types of object to store them.
For special cases it can make sense to write your own type handler. This allows you to control the persistence details down to the byte level. However keep in mind that type handlers have following problems and limitations:
EmbeddedConfiguration configuration = Db4oEmbedded.newConfiguration(); configuration.common().registerTypeHandler( new SingleClassTypeHandlerPredicate(StringBuilder.class), new StringBuilderHandler());
Note that type handler are a low level API which doesn't protect you from any mistakes. If you make a mistake in a typehandler you can lose data.
Type handler functionality is best explained on a working example.