Constante String com várias linhas de texto

Caros Amigos,

tenho a seguinte instrução abaixo que declara uma constanta em C#, gostaria de saber se existe algo similar em java? Notem que o “@” permite eu escrever várias linhas no texto, mas no valor da String eles ficam sem os (CR).

    public const string SQL_MEMBER_FULL_PROFILE_ID = @"
        SELECT *
        FROM members_main a 
        WHERE a.member_id = @MemberID     
    ";

Abraços,
Ricardo

String resposta = "nao existe "+ "nada parecido " + "na linguagem Java "+ "mas se vc nao consegue "+ "fazer sua String caber "+ "numa linha soh, vc pode "+ "concatenar varias Strings "+ "em multiplas linhas, que o "+ "compilador se vira pra "+ "colocar tudo numa String soh.";

obrigado!

E isso é uma das coisas mais chatas de manter em um código Java. Se seus SQLs tiverem mais de 10 linhas, pense seriamente em um modo de tirá-los do código Java e colocar em algum arquivo externo (XML ou Properties, por exemplo).

É uma boa idéia ZehOliveira, ficar concatenando String num dá. Vlw!

Existem certas coisas que são “bad smells” (coisas que em um programa Java são suspeitas e merecem reformulação:)

  • switch / case com muitas opções;
  • uso excessivo do instanceof;
  • strings constantes muito grandes.

No primeiro caso e no segundo, provavelmente você está precisando de um esquema de “subclassing”.
No terceiro caso, provavelmente a tal string constante muito grande é um SQL ou XML que deveria estar em um arquivo separado.