Skip to main content


Showing posts from 2010

Spring Note: PropertyPlaceholderConfigurer

Often there are Spring-related configuration options which don't belong inside the final jar/war for a Java application. Either because the options are different for each deployment environment or because the value of the option is sensitive (passwords). The PropertyPlaceholderConfigurer class attempts to remedy the management and injection of the values for these options. It reads one or more property files, optionally using system properties for defaults, and uses the values found to fill property placeholders of the form ${property name} found in the ApplicationContext in which the configurer is defined.

Productivity Tools: Launchy

Launchy is a simple application indexer/launcher for Windows/Linux/Mac OS. It is an application which combines some of the features of the Spotlight and Dock tools in Mac OS. You set up Launchy with a set of folders and file extensions to scan, and it will create a catalog of the files found in those folders. Any of the cataloged files can then be opened quickly by pressing alt+space at any time and then typing some, or all, of the file's name. It is important to note that Launchy does not catalog the contents of the files, only the files' names.LightweightExcept for the times that Launchy is rebuilding its catalog, you will never see Launchy utilizing your CPU. The index does appear to take up some memory (mine's currently at around 8MB), but that should be expected for this sort of application.Filesystem IntegrationLaunchy integrates well with your filesystem. That is, you can start typing C:\Pro, hit tab, and then hit enter to open up an Explorer window for the Program …

Productivity Tools: Virtual Desktops

Virtual desktop systems allow me to set up multiple workspaces within my window manager, each of which contain a separate set of application windows which will only be shown when the workspace is activated. This is a powerful expansion of the idea of application switching (alt+tab) as I can now switch easily between groups of applications, instead of just a single application. By creating task-related workspaces, I am able to stay focused on only the one or two tools that matter for the task I am currently working on, while still having other tools open for access later.