Comecei a pouco a aprender Java, completamente iniciante.
Estou tentando fazer um sistema simples onde eu realizo um cadastro de curriculo. Na pagina de cadastro existe dois grupos de checkbox onde faço um select no banco por tanto tem o mesmo nome.
Um para linguagem de programação e outro de banco de dados.
Até ai OK.
Estou usando JSP e servlet;
Eu travei na seguinte parte, no meu servlet to recuperando os valores do checkbox dessa forma ("String[] valorlinguagem = request.getParameterValues("linguagem");" , assim ele me retorna um array de string com os meus checkbox que foram habilitados.
- @servelet
- for (String valorling : valorlinguagem){
- inserelinguagem.setId_curriculoLinguagem(request.getParameter(valorling));
- }
Acontece que na minha classe o metodo "setId_curriculoLinguagem"ele ta me retornando um Long porque irei pegar somente o valor ID da linguagem para gravar na tabela. E ta dando erro nessa linha.
Gostaria que alguem com mais experiencia que eu me desse uma orientação nesse caso, se eu to fazendo da forma correta ou não.
Segue os meus codigos
Classe CurriculoLinguagem
- public class CurriculoLinguagem {
- private long id_curriculoLinguagem;
- private long id_curriculo;
- private long id_linguagem;
- public CurriculoLinguagem(){
- this.id_curriculoLinguagem = id_curriculoLinguagem;
- this.id_curriculo = id_curriculo;
- this.id_linguagem = id_linguagem;
- }
- public long getId_curriculoLinguagem() {
- return id_curriculoLinguagem;
- }
- public void setId_curriculoLinguagem(long id_curriculoLinguagem) {
- this.id_curriculoLinguagem = id_curriculoLinguagem;
- }
- public long getId_curriculo() {
- return id_curriculo;
- }
- public void setId_curriculo(long id_curriculo) {
- this.id_curriculo = id_curriculo;
- }
- public long getId_linguagem() {
- return id_linguagem;
- }
- public void setId_linguagem(long id_linguagem) {
- this.id_linguagem = id_linguagem;
- }
- }
O meu DAO onde to inserindo os dados.
- public class InsereCheckLinguagemDao {
- public void SalvaLinguagem(CurriculoLinguagem linguagem){
- String ultimo = ("SELECT MAX(i_cdcurriculo) FROM curriculo");
- StringBuilder sql = new StringBuilder();
- sql.append("insert into");
- sql.append(" curriculoLinguagem(i_cdcurriculo, i_cdlinguagem)");
- sql.append(" values(?,?)");
- try(Connection connection = FabricaConexao.getConnection();
- PreparedStatement ps = connection.prepareStatement(sql.toString())){
- ps.setNString(1, ultimo);
- ps.setLong(2, linguagem.getId_curriculoLinguagem());
- ps.execute();
- }catch(SQLException e){
- e.printStackTrace();
- }
- }
- }
Se alguem puder me ajugar nisso ai ficarei grato.