Spring lets you define property editors that convert from a text representation to an object representation. We can hook into this feature to automate directory creation like this:
public class DirectoryEditor extends PropertyEditorSupport {

 public void setAsText(String textValue) {
  File f = new File(textValue);
  if (!f.exists()) {
   if (!f.mkdirs()) {
    throw new ConfigurationException("Unable To Create Directory: [" + textValue + "]");
  } else if (!f.isDirectory()) {
   throw new ConfigurationException("File Is Not a Directory: [" + textValue + "]");
  setValue(new Directory(textValue));
Then create a bean definition so that Spring knows about it:
  <bean id="customEditorConfigurer"
    <property name="customEditors">
        <entry key="com.twintechs.spring.Directory">
          <bean id="directoryEditor" class="com.twintechs.spring.DirectoryEditor" />
Then create a Directory class:
public class Directory {

 private String name;

 public Directory(String _name) {
  this.name = _name;

 public String getName() {
  return name;

 public void setName(String name) {
  this.name = name;
The last step is to use the Directory class in place of the String class in any Java objects.