Como de costume: Use PreparedStatement para evitar problemas com aspas e outras porcarias. Imagine se um usuário põe a seguinte senha:
senha ' ; TRUNCATE TABLE USUARIOS ; --
O cara, ao cadastrar uma senha, vai acabar detonando o seu sistema inteirinho (se ele chutar que existe uma tabela “usuários”, o que não é muito incomum.
Se usar PreparedStatement e “?”, não é preciso ficar duplicando aspas e outras coisas chatas.