import java.io.*;
import java.sql.*;
import javax.servlet.http.*;
public class Anyadir extends HttpServlet{
public void doPost(HttpServletRequest req, HttpServletResponse res){
int idautor = 0;
int idlibro = 0;
int idtema = 0;
int ideditorial = 0;
try{
Class.forName("com.mysql.jdbc.Driver");
}
}
try{
autor = req.getParameter("autor");
titulo = req.getParameter("titulo");
tema = req.getParameter("tema");
publicado = req.getParameter("publicado");
editorial = req.getParameter("editorial");
referencia = req.getParameter("referencia");
situacion = req.getParameter("situacion");
//CONEXION
con
= DriverManager.
getConnection("jdbc:mysql://localhost:3306/practica3",
"root",
""); st1 = con.createStatement();
st2 = con.createStatement();
out = res.getWriter();
res.setContentType("text/html");
out.println("<HTML><BODY>");
//Si uno de los campos esta vacío, la operación no podrá realizarse:
if(autor.equals("") || titulo.equals("") || tema.equals("") || publicado.equals("") || editorial.equals("") || referencia.equals("") || situacion.equals("")){
out.println("<h3>Operacion incorrecta: Debe rellenar todos los campos.</h3>");
out.println("<FORM METHOD = GET ACTION = http://localhost:8080/principal/inicio>");
out.println("<INPUT TYPE = SUBMIT VALUE = 'Volver a Inicio'></FORM>");
out.println("</BODY></HTML>");
st1.close();
st2.close();
con.close();
out.close();
}
else{
//LIBRO
SQL = "SELECT IdLibro FROM libros WHERE Titulo = '"+titulo+"'";
rs = st1.executeQuery(SQL);
if(rs.next()){
idlibro = rs.getInt("IdLibro");
out.println("idlibro ="+idlibro);
out.println("<h3>Este libro ya se encuentra en el registro.</h3>");
out.println("<FORM METHOD = GET ACTION = http://localhost:8080/principal/inicio>");
out.println("<INPUT TYPE = SUBMIT VALUE = 'Volver a Inicio'></FORM>");
out.println("</BODY></HTML>");
st1.close();
st2.close();
con.close();
out.close();
}
con.setAutoCommit(false);
//AUTOR
SQL = "SELECT IdAutores FROM autores WHERE Autor = '"+autor+"'";
rs = st1.executeQuery(SQL);
if(rs.next()){
idautor = rs.getInt("IdAutores");
out.println("idautor="+idautor);
}
//si no es porque no existe ese autor y habra que crearlo:
//INSERT INTO `admin`.`admin` (`Nombre`, `Contra`) VALUES ('sandra', 'sdsds');
SQL = "INSERT INTO autores (Autor) VALUES ('"+autor+"')";
st2.executeUpdate(SQL);
//st2.close();
SQL = "SELECT IdAutores FROM autores WHERE Autor = '"+autor+"'";
rs = st1.executeQuery(SQL);
idautor = rs.getInt("IdAutores");
out.println("idautor="+idautor);
//TEMA
SQL = "SELECT IdTema FROM tema WHERE Tema = '"+tema+"'";
rs = st1.executeQuery(SQL);
if(rs.next()){
idtema = rs.getInt("IdTema");
out.println("idtema="+idtema);
}
SQL = "INSERT INTO tema (Tema) VALUES ('"+tema+"')";
st2.executeUpdate(SQL);
//st2.close();
SQL = "SELECT IdTema FROM tema WHERE Tema = '"+tema+"'";
rs = st1.executeQuery(SQL);
idtema = rs.getInt("IdTema");
out.println("idtema="+idtema);
//EDITORIAL
SQL = "SELECT IdEditorial FROM editorial WHERE Editorial = '"+editorial+"'";
rs = st1.executeQuery(SQL);
if(rs.next()){
ideditorial = rs.getInt("IdEditorial");
out.println("ideditorial="+ideditorial);
}
SQL = "INSERT INTO editorial (Editorial) VALUES ('"+editorial+"')";
st2.executeUpdate(SQL);
//st2.close();
SQL = "SELECT IdEditorial FROM editorial WHERE Editorial = '"+editorial+"'";
rs = st1.executeQuery(SQL);
ideditorial = rs.getInt("IdEditorial");
out.println("ideditorial ="+ideditorial);
SQL = "INSERT INTO libros (Referencia,Titulo,IdAutor,Publicado,IdTema,IdEditorial,Situacion) VALUES ('"+referencia+"','"+titulo+"','"+idautor+"','"+publicado+"','"+idtema+"','"+ideditorial+"','"+situacion+"')";
st2.executeUpdate(SQL);
con.commit();
con.setAutoCommit(true);
st1.close();
st2.close();
out.close();
con.close();
}
out.println("<h3>prsdfdsfsfsa.</h3>");
out.println("<FORM METHOD = GET ACTION = http://localhost:8080/principal/inicio>");
out.println("<INPUT TYPE = SUBMIT VALUE = 'Volver a Inicio'></FORM>");
out.println("</BODY></HTML>");
}
return;
}
}
}