Dúvida de banco de dados: Como tratar valores nulos

Galera, é o seguinte.
Estou trabalhando com MSSQL 2000

Meu sistema basicamente coleta alguns dados de um banco, trata essas informações e armazena o resultado em outro banco.
Quando coleto as informações utilizo o método getString().
Porém se o campo tiver um valor nulo, minha variável também ficará nula. Até esse momento nenhum problema.
Mee problema ocorre no momento em que vou inserir essa informação no banco destino. Quando for concatenar essa variável na minha string sql, ficará mais ou menos assim:

String sql = "INSERT INTO BANCO (CAMPO1, CAMPO2) VALUES ('" + var1 + "','" + var2 + "')";

Porém caso minha variáveis forem nulas, a string ficará assim:

sql = "INSERT INTO BANCO (CAMPO1, CAMPO2) VALUES ('null','null')";

Isso fará com que eu tenha nos campos de texto um valor “null”, o que é diferente de eu ter um campo nulo (IS NULL)!!!
Uma alternativa que encontrei foi de criar um IF nos setters da minha classe, onde caso a variavel receba um valor nulo, altere para “”.
Isso fará com que eu insira uma string vaiza no campo da tabela de destino.
Porém gostaria de saber se essa é a melhor alternativa. Existe um padrão que a galera costuma utilizar?

Por enquanto valeu galera!!!

[code]String sql = "INSERT INTO BANCO (CAMPO1, CAMPO2) VALUES (?,?)";

PreparedStatement stmt = conexao.prepareStatement(sql);

if(var1!=null){
stmt.setString(var1);
}else{
stmt.setNull(Types.VARCHAR);
}

if(var2!=null){
stmt.setString(var2);
}else{
stmt.setNull(Types.VARCHAR);
}

stmt.executeUpdate();[/code]