Hola,
Mi duda es como que me falta poner o a donde hacer referencia, tengo una hoja de registro sencillo con nombre, correo y contraseña; ahi mismo esta mis jsp:usebean y mi setProperty
<jsp:useBean class="usuario.Registro" id="registro" scope="page"> </jsp:useBean> <jsp:setProperty name="registro" property="*"></jsp:setProperty>
La hoja con las etiquetas html , tengo referenciado mi bean, mi text se llaman igual que en la clase en java, aqui esta la hoja:
<%@ page language="java" import="java.util.* , java.sql.*, usuario.Registro" pageEncoding="ISO-8859-1"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<jsp:useBean id="registro" class="usuario.Registro" scope="page">
<jsp:setProperty name="registro" property="*"></jsp:setProperty>
</jsp:useBean>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'registro.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<form method="POST" action="usuario/registro.jsp">
<p>Nombre</p><input type="text" name="nombre" /><br />
<p>Correo</p><input type="text" name="correo" /><br />
<p>Contraseña</p><input type="password" name="contrasenia" /><br />
<p><button type="submit">Enviar</button></p>
</form>
</body>
</html>
Aqui la clase de Java donde tengo un método que hace referencia a la clase de conexión.
La clase Registro.java
package usuario;
public class Registro {
private String nombre;
private String correo;
private String contrasenia;
ConexionBd conecta=new ConexionBd();
public Registro() {
}
public void setNombre(String Nombre){
nombre=Nombre;
}
public void setCorreo(String Correo){
correo=Correo;
}
public void setContrasenia(String Contrasenia){
contrasenia=Contrasenia;
}
public String getNombre(){
return nombre;
}
public String getCorreo(){
return correo;
}
public String getContrasenia(){
return contrasenia;
}
public void AgregaRegistro(){
int datos=this.conecta.Inserta("Insert into u_loggin(correo,clave,activacion,id_usuario) values("+"'"+this.getCorreo()+"'"+this.getContrasenia()+"'"+"n"+"1");
System.out.print(datos);
System.out.println(this.getNombre());
}
}
Y por último la clase que hace conexión a la base de datos, con el método que se supone tiene q ejecutar el insert
package usuario;
import java.sql.*;
public class ConexionBd {
public String error="";
public Connection con=null;
private Statement stt;
private ResultSet rSet;
public boolean conectaBd(){
boolean resp=false;
try{
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
this.con=DriverManager.getConnection("jdbc:mysql://localhost/bolsa_de_trabajo","root","23456789");
System.out.print("se conecto a la bd");
resp=true;
}catch(Exception e){
System.out.println("No se puede realizar la conexión");
System.out.println(e);
}
return resp;
}
public ConexionBd() {
super();
}
public int Inserta (String sentencia){
int dat=0;
if(conectaBd()){
try{
this.stt=this.con.createStatement();
dat=this.stt.executeUpdate(sentencia);
this.stt.close();
this.con.close();
}
catch(Exception e){
this.error="no se puedo realizar el insert a la bd";
}
}
return dat;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
ConexionBd c = new ConexionBd();
c.conectaBd();
}
}
La clase se conecta bien, pero cuando pongo en el navegador mi jsp no registra en la bd, he buscado ejemplos pero no me queda nada claro.
Si alguien me puede ayudar se lo agradecería mucho, o si conoce de algún link donde se encuentren ejemplos de jsp:usebean y un insert también lo agradeceria mucho.
Saludos.