Manipulação de arquivo :: Gravando nome da foto no banco e arquivo em pasta específica

Olá pessoal do GUJ.
Em uma aplicação que estou desenvolvendo, realizo o cadastro de clientes no sistema, só que neste cadastro tem uma opção para gravar a foto do individuo, eu não estou interessado em gravar a foto diretamente no banco de dados, em vez disso, quero gravar apenas o nome do arquivo no banco de dados como “fulano.jpg” e o arquivo em si, desejo copia-lo para uma determinada pasta previamente criada dentro do projeto.
As fotos já estarão no PC, batidas em momento anterior ao cadastro. Pensei no JFileChooser para a implementação, mas não tenho noção de como posso implementar este procedimento.
Minha intenção é fazer exatamente o mesmo procedimento de quando realizamos o upload de arquivos através do input tipo “FILE” do HTML, só que para este caso, seria para Desktop mesmo. Obrigado …

Sua dúvida é com o uso do JFileChooser?
Ou seria com a cópia da imagem para o diretório especificado?
Ou ainda seria com a gravação no banco de dados?

Para copiar arquivos, eu geralmente uso a seguinte função:

[code]
public void copyFile(String srcFileName, String dstFileName) {
try {
// Create channel on the source
FileChannel srcChannel =
new FileInputStream(srcFilename).getChannel();

    // Create channel on the destination
    FileChannel dstChannel = 
      new FileOutputStream(dstFilename).getChannel();

    // Copy file contents from source to destination
    dstChannel.transferFrom(srcChannel, 0, srcChannel.size());

    // Close the channels
    srcChannel.close();
    dstChannel.close();
    
} catch (IOException e) {
    throw new RuntimeException("Unable to copy file.", e);
}

}[/code]

O uso do JFileChooser é bem documentado. Você pode dar uma olhada na internet, na página da sun:
http://java.sun.com/docs/books/tutorial/uiswing/components/filechooser.html

Ou pode olhar um exemplo nesse tópico do GUJ:
http://www.guj.com.br/posts/list/50412.java