galera estou com uma duvida em concatenação. segue o codigo a baixo
preparedStatement.setString(1, nome.concat("%"));
então conforme codigo abaixo a busca sera realizada com a string que eu passar e qualquer outra coisa que tiver para frente! blz
mas como faco um concat ele buscando das duas formas no sql eu sei montar porem em java estou apanhando um pouco no sql ficaria assim
SELECT * FROM cliente WHERE nome LIKE '%capistrano%';
alguem pode me ajudar como faco esse tipo de buscar utilizando JDBC em java
você ja tentou usar uma String normal sem usar o metodo concat?
sei lah kra se eu fosse escrever faria assim
preparedStatement.setString(+"'%"+nome+"%'");
//não to testando o código aqui mas acho que não deve fugir muito disso
Faça o Simples
preparedStatement.setString(1, "%" + nome + "%");
Não tem nenhum problema em fazer dessa forma
Não sei se é o caso, mas . . .
Lembrem-se: para muitas concatenações use as classes StringBuffer, StringBuilder . . .
E Comforme os posts acima, usar PreparedStatement.
flw…
Só faz sentido para concatenações feitas dentro de um loop.
Para as fora, um código como:
String x = "Funcionário: " + titulo + " " + nome + " " + sobrenome;
É automaticamente substituido pelo compilador para:
String x = new StringBuilder("Funcionario").append(titulo).append(" ").append(nome).append(" ").append(sobrenome);
Você pode até observar isso usando um decompilador, como o cavaj.
ViniGodoy
Realmente, nas versões mais recentes do java isso ocorre. . . Esqueci de comentar isso…
Mas mal não faz em deixar todas a concatenações como StringBuffer, desse jeito não ficamos viciados em fazer códigos não otimizados.
De qualquer forma foi bom ter lembrado desse pequeno detalhe.
flw…