Inserir dados no banco usando pagina jsp

10 respostas
A
Boa noite ha todos. estou com uma aplicação web porém consigo fazer com que os dados seja inserido no banco. Estou desenvolvendo um sistema de controle para o museu do computador, como voluntario. segue a minha DAO.
private Connection connection;
	public UsuarioDAO (){
		this.connection = new ConnectionFactory().getConnection();
	}
	public void inserirUsuario(usuarios usuariosdados){
		String sql = "insert into usuarios (bairro, cp, cidade, data, endereco, estado, funcao, log, nome, numero, permicao, senha," +
		" status, telefone, usuario, idusuario) values (?,?,?,?,?,?,?,?,?,?,?,?,?," +
		"?,?,?)";
		try {
			PreparedStatement stmt = this.connection.prepareStatement(sql);

			stmt.setString(1, usuariosdados.getBairroUsuario());
			stmt.setString(2, usuariosdados.getCepUsuario());
			stmt.setString(3, usuariosdados.getCidadeUsuario());
			stmt.setString(4, usuariosdados.getDataCadastroUsuario());
			stmt.setString(5, usuariosdados.getEnderecoUsuario());
			stmt.setString(6, usuariosdados.getEstadoUsuario());
			stmt.setString(7, usuariosdados.getFuncao());
			stmt.setString(8, usuariosdados.getLogUsuario());
			stmt.setString(9, usuariosdados.getNomeUsuario());
			stmt.setString(10, usuariosdados.getNumeroUsuario());
			stmt.setString(11, usuariosdados.getPermissaoUsuario());
			stmt.setString(12, usuariosdados.getSenhaUsuario());
			stmt.setString(13, usuariosdados.getStatusUsuario());
			stmt.setString(14, usuariosdados.getTelefone());
			stmt.setString(15, usuariosdados.getUsuario());
			stmt.setString(16, usuariosdados.getIdUsuario());

			stmt.execute();
			stmt.close();

		} catch (SQLException e) {
			throw new RuntimeException(e);
		}
	}
Segue a Action.
package br.com.Museu.dados.action;

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Result;

import com.sun.xml.internal.bind.v2.runtime.Name;

import br.com.Museu.Dao.Bancos.UsuarioDAO;
import br.com.Museu.dados.usuarios;

public class AdicionaUsuarioAction {
	private usuarios usuariodadosaction;

	@Action(value="adicionaUsuario",results={
			@Result(name="ok", location="/CadastroUsuarios.jsp")
	})
	public String execute(){
		new UsuarioDAO().inserirUsuario(usuariodadosaction);
		return "OK";
	}
	public usuarios getUsuarios(){
		return this.usuariodadosaction;
	}
	public void setUsuarios(usuarios usuariodadosaction){
		this.usuariodadosaction = usuariodadosaction;
	}
}
Segue a JSP.
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@taglib uri="/struts-tags" prefix="s"%>  

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>

<link href="cadastros.css" rel="stylesheet" type="text/css" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript">

</script>
</head>
<body>
<h3>Cadastra de Usuarios e de Funcionarios</h3>
<div>
<form action="adicionaUsuario" method="post" dir="ltr">
  <p>
    &lt;label for="textfield"&gt;&lt;/label&gt;
    N°:
    &lt;input name="usuariodadosaction.numero" type="text" id="textfield" size="10" /&gt;
  </p>
  <p>Nome:
    &lt;label for="nome"&gt;&lt;/label&gt;
    &lt;input name="usuariodadosaction.nome" type="text" id="nome" size="65" /&gt;
  </p>
  <p>
    &lt;label for="endereco"&gt;&lt;/label&gt;
    Endereço: 
    &lt;input name="usuariodadosaction.endereco" type="text" id="endereco" size="35" /&gt;
  N°:
  &lt;label for="numero"&gt;&lt;/label&gt;
  &lt;input name="usuariodadosaction.numero" type="text" id="numero" size="5" /&gt;
  Bairro:
  &lt;label for="bairro"&gt;&lt;/label&gt;
  &lt;input name="usuariodadosaction.bairro" type="text" id="bairro" size="20" /&gt;
  </p>
  <p>CEP:
    &lt;label for="cep"&gt;&lt;/label&gt;
    &lt;input name="usuariodadosaction.cep" type="text" id="cep" size="20" /&gt;
    Complemento:
    &lt;label for="complemento"&gt;&lt;/label&gt;
    &lt;input name="usuariodadosaction.complemento" type="text" id="complemento" size="25" /&gt;
    Estado:
&lt;select name="usuariodadosaction.estado" id="estado" onchange="MM_jumpMenu('parent',this,0)"&gt;
    &lt;option&gt;item1&lt;/option&gt;
    &lt;option&gt;item2&lt;/option&gt;
    &lt;option&gt;item3&lt;/option&gt;
    &lt;option&gt;item4&lt;/option&gt;
  &lt;/select&gt;
  </p>
  <p>Usuario: 
    &lt;label for="usuario"&gt;&lt;/label&gt;
    &lt;input name="usuariodadosaction.usuario" type="text" id="usuario" size="15" /&gt;
    Senha: 
    &lt;label for="senha"&gt;&lt;/label&gt;
    &lt;input name="usuariodadosaction.senha" type="password" id="senha" size="15" /&gt;
    Permição: 
    &lt;label for="textfield10"&gt;&lt;/label&gt;
    &lt;select name="usuariodadosaction.permicao" id="permicao" onchange="MM_jumpMenu('parent',this,0)"&gt;
      &lt;option&gt;Administrador&lt;/option&gt;
    &lt;/select&gt;
  Status: 
  &lt;select name="usuariodadosaction.status" id="status" onchange="MM_jumpMenu('parent',this,0)"&gt;
    &lt;option&gt;Adminitido&lt;/option&gt;
  &lt;/select&gt;
  </p>
  &lt;div id="botao"&gt;
  <p>
    &lt;input type="submit" name="usuariodadosaction.novo" id="novo" value="Salvar Novo" /&gt;
    &lt;input type="submit" name="usuariodadosaction.alterar" id="alterar" value="Alterar dados" /&gt;
    &lt;input type="submit" name="usuariodadosaction.deletar" id="deletar" value="Deletar Registro" /&gt;
</p>
  &lt;/div&gt;
&lt;/form&gt;
&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;

Desde ja muito agradecido.

10 Respostas

A
akiles:
Boa noite ha todos. estou com uma aplicação web porém consigo fazer com que os dados seja inserido no banco. Estou desenvolvendo um sistema de controle para o museu do computador, como voluntario. segue a minha DAO.
private Connection connection;
	public UsuarioDAO (){
		this.connection = new ConnectionFactory().getConnection();
	}
	public void inserirUsuario(usuarios usuariosdados){
		String sql = "insert into usuarios (bairro, cp, cidade, data, endereco, estado, funcao, log, nome, numero, permicao, senha," +
		" status, telefone, usuario, idusuario) values (?,?,?,?,?,?,?,?,?,?,?,?,?," +
		"?,?,?)";
		try {
			PreparedStatement stmt = this.connection.prepareStatement(sql);

			stmt.setString(1, usuariosdados.getBairroUsuario());
			stmt.setString(2, usuariosdados.getCepUsuario());
			stmt.setString(3, usuariosdados.getCidadeUsuario());
			stmt.setString(4, usuariosdados.getDataCadastroUsuario());
			stmt.setString(5, usuariosdados.getEnderecoUsuario());
			stmt.setString(6, usuariosdados.getEstadoUsuario());
			stmt.setString(7, usuariosdados.getFuncao());
			stmt.setString(8, usuariosdados.getLogUsuario());
			stmt.setString(9, usuariosdados.getNomeUsuario());
			stmt.setString(10, usuariosdados.getNumeroUsuario());
			stmt.setString(11, usuariosdados.getPermissaoUsuario());
			stmt.setString(12, usuariosdados.getSenhaUsuario());
			stmt.setString(13, usuariosdados.getStatusUsuario());
			stmt.setString(14, usuariosdados.getTelefone());
			stmt.setString(15, usuariosdados.getUsuario());
			stmt.setString(16, usuariosdados.getIdUsuario());

			stmt.execute();
			stmt.close();

		} catch (SQLException e) {
			throw new RuntimeException(e);
		}
	}
Segue a Action.
package br.com.Museu.dados.action;

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Result;

import com.sun.xml.internal.bind.v2.runtime.Name;

import br.com.Museu.Dao.Bancos.UsuarioDAO;
import br.com.Museu.dados.usuarios;

public class AdicionaUsuarioAction {
	private usuarios usuariodadosaction;

	@Action(value="adicionaUsuario",results={
			@Result(name="ok", location="/CadastroUsuarios.jsp")
	})
	public String execute(){
		new UsuarioDAO().inserirUsuario(usuariodadosaction);
		return "OK";
	}
	public usuarios getUsuarios(){
		return this.usuariodadosaction;
	}
	public void setUsuarios(usuarios usuariodadosaction){
		this.usuariodadosaction = usuariodadosaction;
	}
}
Segue a JSP.
&lt;%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %&gt;
&lt;%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %&gt;
&lt;%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %&gt;
&lt;%@taglib uri="/struts-tags" prefix="s"%&gt;  

&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;
&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;
&lt;head&gt;

&lt;link href="cadastros.css" rel="stylesheet" type="text/css" /&gt;
&lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8" /&gt;
&lt;title&gt;Untitled Document&lt;/title&gt;
&lt;script type="text/javascript"&gt;

&lt;/script&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;h3&gt;Cadastra de Usuarios e de Funcionarios&lt;/h3&gt;
&lt;div&gt;
&lt;form action="adicionaUsuario" method="post" dir="ltr"&gt;
  <p>
    &lt;label for="textfield"&gt;&lt;/label&gt;
    N°:
    &lt;input name="usuariodadosaction.numero" type="text" id="textfield" size="10" /&gt;
  </p>
  <p>Nome:
    &lt;label for="nome"&gt;&lt;/label&gt;
    &lt;input name="usuariodadosaction.nome" type="text" id="nome" size="65" /&gt;
  </p>
  <p>
    &lt;label for="endereco"&gt;&lt;/label&gt;
    Endereço: 
    &lt;input name="usuariodadosaction.endereco" type="text" id="endereco" size="35" /&gt;
  N°:
  &lt;label for="numero"&gt;&lt;/label&gt;
  &lt;input name="usuariodadosaction.numero" type="text" id="numero" size="5" /&gt;
  Bairro:
  &lt;label for="bairro"&gt;&lt;/label&gt;
  &lt;input name="usuariodadosaction.bairro" type="text" id="bairro" size="20" /&gt;
  </p>
  <p>CEP:
    &lt;label for="cep"&gt;&lt;/label&gt;
    &lt;input name="usuariodadosaction.cep" type="text" id="cep" size="20" /&gt;
    Complemento:
    &lt;label for="complemento"&gt;&lt;/label&gt;
    &lt;input name="usuariodadosaction.complemento" type="text" id="complemento" size="25" /&gt;
    Estado:
&lt;select name="usuariodadosaction.estado" id="estado" onchange="MM_jumpMenu('parent',this,0)"&gt;
    &lt;option&gt;item1&lt;/option&gt;
    &lt;option&gt;item2&lt;/option&gt;
    &lt;option&gt;item3&lt;/option&gt;
    &lt;option&gt;item4&lt;/option&gt;
  &lt;/select&gt;
  </p>
  <p>Usuario: 
    &lt;label for="usuario"&gt;&lt;/label&gt;
    &lt;input name="usuariodadosaction.usuario" type="text" id="usuario" size="15" /&gt;
    Senha: 
    &lt;label for="senha"&gt;&lt;/label&gt;
    &lt;input name="usuariodadosaction.senha" type="password" id="senha" size="15" /&gt;
    Permição: 
    &lt;label for="textfield10"&gt;&lt;/label&gt;
    &lt;select name="usuariodadosaction.permicao" id="permicao" onchange="MM_jumpMenu('parent',this,0)"&gt;
      &lt;option&gt;Administrador&lt;/option&gt;
    &lt;/select&gt;
  Status: 
  &lt;select name="usuariodadosaction.status" id="status" onchange="MM_jumpMenu('parent',this,0)"&gt;
    &lt;option&gt;Adminitido&lt;/option&gt;
  &lt;/select&gt;
  </p>
  &lt;div id="botao"&gt;
  <p>
    &lt;input type="submit" name="usuariodadosaction.novo" id="novo" value="Salvar Novo" /&gt;
    &lt;input type="submit" name="usuariodadosaction.alterar" id="alterar" value="Alterar dados" /&gt;
    &lt;input type="submit" name="usuariodadosaction.deletar" id="deletar" value="Deletar Registro" /&gt;
</p>
  &lt;/div&gt;
&lt;/form&gt;
&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;
Segue erro 500.
HTTP Status 500 - 

--------------------------------------------------------------------------------

type Exception report

message 

description The server encountered an internal error () that prevented it from fulfilling this request.

exception 

java.lang.NullPointerException
	br.com.Museu.Dao.Bancos.UsuarioDAO.inserirUsuario(UsuarioDAO.java:28)
	br.com.Museu.dados.action.AdicionaUsuarioAction.execute(AdicionaUsuarioAction.java:18)
	sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	java.lang.reflect.Method.invoke(Unknown Source)
	com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:441)
	com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:280)
	com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:243)
	com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:165)
	com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
	com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
	com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:252)
	org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
	com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
	com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
	com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:122)
	com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
	com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
	com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
	com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
	com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
	com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
	com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
	com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:179)
	com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
	org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)
	com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
	org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94)
	com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
	org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:235)
	com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
	com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:89)
	com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
	com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:130)
	com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
	org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267)
	com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
	com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:126)
	com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
	com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:138)
	com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
	com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
	com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:165)
	com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
	org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
	com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
	com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:179)
	com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
	com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:176)
	com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
	org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
	org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:488)
	org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)


note The full stack trace of the root cause is available in the Apache Tomcat/7.0.20 logs.


--------------------------------------------------------------------------------

Apache Tomcat/7.0.20

Desde ja muito agradecido.

L

tenta depurar o codigo, e ve se a chave primaria esta auto incremental ou manual

L

Nesse trecho aki

java.lang.NullPointerException br.com.Museu.Dao.Bancos.UsuarioDAO.inserirUsuario(UsuarioDAO.java:28)

o objeto UsuarioDAO está nulo, ou seja, nem criado foi…nesse próximo trecho faça assim:

private usuarios usuariodadosaction = new usuarios();

outra coisa na sua página JSP tem 3 botões de SUBMIT que eu saiba só pode 1 botão SUBMIT por form os demais tem q ser BUTTON msm, num tenho certeza…

A

Fia algumas alterações e o persebo que a minha Action estar null como fasso para ele receber os dados digitado.

L

vou anexar meu projeto pra v se ajuda…

http://www.4shared.com/file/DiAnUiUc/aulaweb18032011banco.html

A

Eu vo dar uma olha desde já muito grato

A

Bom dia luxu
O arquivo não tem fonte algum

A

Desculpa eu peguei o arquivo errado tem sim dados.

L

cabei de baixar e está td lá…reveja!

A

Ta correto foi erro meu.
Desculpa

Criado 13 de setembro de 2011
Ultima resposta 14 de set. de 2011
Respostas 10
Participantes 3