Pessoal,tenho uma tabela de produtos com um campo varchar e gostaria que ele armazenasse o valor da chave primaria mais “000000000”,tipo,se o id do produto é 1 então ficaria “000000001”,o problema é que o campo id é integer e o campo código do produto é varchar,como faço para o java pegar esses 9 zeros e incrementar o valor inteiro neles?Tentei aqui mas ele só adiciona,ai ficam 10 caracteres 
Olá, utilize este código. Independente do número de caracteres do id (5, 10, 500, …), sempre será incrementado zeros à esquerda até completar 10 caracteres para o código. O valor 5 setado para o idProduto é somente um exemplo. No lugar dele você coloca o id que vem do banco.
[code] Integer idProduto = new Integer(5);
StringBuffer sb = new StringBuffer(idProduto.toString());
while (sb.length() < 10) {
sb.insert(0, "0");
}
String codigoProduto = sb.toString();[/code]
Bom dia.
Então, estou com uma pressa daquelas! Mas vai a dica.
Você pode dizer o tamanho fixo do seu dia, supondo, 10 caracteres. Se tens um int de tamanho 3 então precisaria completar com 7 zeros, correto?
Se este for o caso, pode usar o String Util´s da apacha, o common. Se não me engano não tem necessidade de baixar nenhum .jar, mas se precisar e quiser faça isso. Nele, contém um método chamado leftpad() e rightpad() que completa espaços a esquerda e a direita e se não me falha a memória acho que ele aceita que complete com 0´s, enfim, da uma olhada nessa api que talvez ajude você.
Abraços!
System.out.println(new DecimalFormat("0000000000").format(15));
System.out.println(new DecimalFormat("0000000000").format(1500));
System.out.println(new DecimalFormat("0000000000").format(150000));
Mais fácil.
[quote=fre_d]System.out.println(new DecimalFormat("0000000000").format(15));
System.out.println(new DecimalFormat("0000000000").format(1500));
System.out.println(new DecimalFormat("0000000000").format(150000));
Mais fácil.[/quote]
Cara,valeu mesmo,muito mais facil 