Strings - caracters corigas - [RESOLVIDO] mas aceito sugestões melhores ^^

7 respostas
Lavieri

Bom, não sabia bem o titulo, mais como faz mesmo pra criar strings onde eu possa setar valores em lugares pre-definidos ??

algo como
//String para End Like
String string = "$var1 like '%$var2'";

String var1 = "nome";
String var2 = "joão";

//Depois preciso subistituir a string pra ficr assim,
String string = "nome like '%joão'";

como que faz isso mesmo ?

...........

Resolvi assim

public static void main(String[] args) {
		String endLike = "%s LIKE '%%%s'";
		String fieldName = "nome";
		String value = "joão";
		System.out.println(String.format(endLike, fieldName,value));
	}
	}

7 Respostas

T

Você quer uma solução como o Velocity ( http://velocity.apache.org/ ) ?

M

Acho que você que usar o método format da classe String ou de objetos PrintStream:

String nome = "João";
int idade = 25;

String s = String.format("Olá %s! Você tem %d anos.%n", nome, idade);

Mas isso que você postou me parece muito uma consulta SQL. Se for, procure por PreparedStatement.

xandevieira

replace da classe String não te resolve?

Lavieri
avsouza:
replace da classe String não te resolve?
deveria mas não esta...

format não ta funcionando, pq a string já contem % .... segue exemplo

public static void main(String[] args) {
		String endLike = "%s LIKE '%%s'";
		String fieldName = "nome";
		String value = "joão";
		System.out.println(String.format(endLike, fieldName, value));
	}

//console =
//nome LIKE '%s'
M

Você gostaria do resultado no console:
“nome LIKE %joão”?

Se for, use:

String endLike = "%s LIKE '%%%s'";
String fieldName = "nome";
String value = "joão";

System.out.format(endLike, fieldName, value);

// CONSOLE = 
// nome LIKE '%joão'

Mas afinal, isso é pra SQL?

Lavieri

marcobiscaro2112:
Você gostaria do resultado no console:
“nome LIKE %joão”?

Se for, use:

String endLike = "%s LIKE '%%%s'";
String fieldName = "nome";
String value = "joão";

System.out.format(endLike, fieldName, value);

// CONSOLE = 
// nome LIKE '%joão'

Mas afinal, isso é pra SQL?


é pra um QueryObject … entre outras coisas… ele transforma pra SQL sim ^^ essa é a primeira implementação dele… é que estou mudando meu SWITCH pra um ENUM e precisava remodelar a string…

alves.Felipe

ola…
ve se isso ajuda
http://www.guj.com.br/posts/list/35575.java#188956

Criado 6 de janeiro de 2009
Ultima resposta 6 de jan. de 2009
Respostas 7
Participantes 5