我不会在Netbeans中收到任何错误,但除了" Hola之外它什么都不会执行?"我投入测试, 我认为主要的错误是在Printwriter命令中,它没有在我的显示器中生成任何东西,
<%@page import="java.io.*"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Página Nacho</title>
</head>
<%@page import="ejemplo.BaseDatos" %>
<% out.println("Hola?");
out.println("<body>");
BaseDatos b = new BaseDatos();
PrintWriter salida = response.getWriter();
if (request.getParameter("Agregar")!= null){
boolean inserto = b.inserta (
request.getParameter("nombre"),
request.getParameter("apellido_p"),
request.getParameter("apellido_m"),
request.getParameter("direccion"),
request.getParameter("telefono"),
request.getParameter("email")
);
if(inserto){
salida.println("<br>Usuario agregado");
}else{
salida.println("<br>No fue posible agregar el usuario");
}
}else{
//Agrega la funcionalidad de consultar todos los usuarios
}
out.println("</body>");
%>
</html>
这是这段代码的java文件,以西班牙语命名,但我认为没什么太难的:
package ejemplo;
import java.sql.*;
public class BaseDatos {
Connection conexion = null;
public BaseDatos(){
conexion = null;
}
private boolean conecta(){
try {
String urlBD = "jdbc:mysql://localhost/practica2?user=root&password=";
Class.forName("com.mysql.jdbc.Driver").newInstance();
conexion = DriverManager.getConnection(urlBD);
} catch (Exception e) {
System.out.println(e);
return false;
}
return true;
}
public boolean inserta(String nom, String ap_p, String ap_m, String dir, String tel, String email){
try {
if (conecta()){
String q = "insert into personas (nombre,apellido_p,apellido_m,direccion,telefono,email) values(?,?,?,?,?,?)";
PreparedStatement i = conexion.prepareStatement(q);
i.setString(1, nom);
i.setString(2, ap_p);
i.setString(3, ap_m);
i.setString(4, dir);
i.setString(5, tel);
i.setString(6, email);
i.executeUpdate();
i.close();
conexion.close();
return true;
}else{
return false;
}
} catch (Exception e){
System.out.println(e);
return false;
}
}
public String tablaUsuarios(){
try{
if(conecta()){
String q="select * from personas";
PreparedStatement p=conexion.prepareStatement(q);
ResultSet r=p.executeQuery();
String tabla="<table border=\"3\" align=\"center\">";
tabla+="<tr bgcolor=blue><th align=center><font color=white>Nombre</font></th>";
tabla+="<th align=center><font color=white>Apellido</font></th></tr>";
while(r.next()){
tabla+="<tr><td>"+r.getString("nombre")+"</td><td>"+r.getString("apellido_p")+" </td></tr>";
}
r.close();
p.close();
conexion.close();
return tabla;
}else{
return "";
}
}catch(Exception e) {
System.out.println(e);
return "";
}
}
}
感谢先进的所有帮助。
答案 0 :(得分:0)
JSP期望有一大堆URL参数,最少的是名为“Agregar”的参数。您需要将这些参数传递给页面,以便进行进一步处理。
if (request.getParameter("Agregar")!= null){
boolean inserto = b.inserta (
request.getParameter("nombre"),
request.getParameter("apellido_p"),
request.getParameter("apellido_m"),
request.getParameter("direccion"),
request.getParameter("telefono"),
request.getParameter("email")
);
if(inserto){
salida.println("<br>Usuario agregado");
}else{
salida.println("<br>No fue posible agregar el usuario");
}
}else{
//Agrega la funcionalidad de consultar todos los usuarios
}