miércoles, 28 de agosto de 2019
CSS
* {
margin: 0px;
padding: 0px;
}
body {
background: url(../imagen/fondo-header.jpg);
}
#cuadro {
width: 330px;
background: #090909;
color: #ffffff;
margin: auto;
margin-top: 120px;
padding: 5px 5px 30px 5px;
border-top: 35px solid #141414;
border-right: 35px solid #141414;
border-left: 35px solid #141414;
border-radius: 6px;
opacity: 0.7;
}
.entrada {
width: 320px;
height: 35px;
border-radius: 6px;
font-family: Verdana;
font-weight: 900;
}
#boton {
width: 324px;
height: 45px;
border-radius: 6px;
background: blue;
color: #ffffff;
font-size: 15px;
}
#titulo {
font-size: 30px;
font-family: fantasy;
}
#subtitulo1 {
padding-left: 80px;
}
#subtitulo2 {
padding-left: 115px;
}
#marca {
font-size: 30px;
padding-left: 190px;
font-weight: 900;
}
margin: 0px;
padding: 0px;
}
body {
background: url(../imagen/fondo-header.jpg);
}
#cuadro {
width: 330px;
background: #090909;
color: #ffffff;
margin: auto;
margin-top: 120px;
padding: 5px 5px 30px 5px;
border-top: 35px solid #141414;
border-right: 35px solid #141414;
border-left: 35px solid #141414;
border-radius: 6px;
opacity: 0.7;
}
.entrada {
width: 320px;
height: 35px;
border-radius: 6px;
font-family: Verdana;
font-weight: 900;
}
#boton {
width: 324px;
height: 45px;
border-radius: 6px;
background: blue;
color: #ffffff;
font-size: 15px;
}
#titulo {
font-size: 30px;
font-family: fantasy;
}
#subtitulo1 {
padding-left: 80px;
}
#subtitulo2 {
padding-left: 115px;
}
#marca {
font-size: 30px;
padding-left: 190px;
font-weight: 900;
}
JSP Page 2
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page session="true" %>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Bienvenido</title>
</head>
<body>
<%
HttpSession sesion = request.getSession();
String usuario;
String nivel;
if (session.getAttribute("user") != null && session.getAttribute("nivel") != null) {
usuario = session.getAttribute("user").toString();
nivel = session.getAttribute("nivel").toString();
out.print("<a href='login.jsp?cerrar=true'><h5>Cerrar Sesion " + usuario + "</h5></a>");
} else {
out.print("<script>location.replace('login.jsp');</script>");
}
%>
<h1>Bienvenido!!!</h1>
</body>
</html>
<%@page session="true" %>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Bienvenido</title>
</head>
<body>
<%
HttpSession sesion = request.getSession();
String usuario;
String nivel;
if (session.getAttribute("user") != null && session.getAttribute("nivel") != null) {
usuario = session.getAttribute("user").toString();
nivel = session.getAttribute("nivel").toString();
out.print("<a href='login.jsp?cerrar=true'><h5>Cerrar Sesion " + usuario + "</h5></a>");
} else {
out.print("<script>location.replace('login.jsp');</script>");
}
%>
<h1>Bienvenido!!!</h1>
</body>
</html>
Login JSP
<%@page import="pqSecurity.SecurityInterface"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page session="true" %>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Login</title>
<link href="css/estilo.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="cuadro">
<form action="index.jsp" method="POST">
<p id="titulo">INICIAR SESIÓN</p>
<hr>
<br/><br/>
<label id="subtitulo1" for="user">NOMBRE DE USUARIO</label>
<br/><br/>
<input type="text" class="entrada" id="user" name="txtUsuario"/>
<br/><br/>
<label id="subtitulo2" for="pass">PASSWORD</label>
<br/><br/>
<input type="password" class="entrada" id="pass" name="txtPassword"/>
<br/><br/>
<input type="submit" name = "btnIngresar" value="Ingresar" id="boton"/>
</form>
<%
SecurityInterface op = new SecurityInterface();
HttpSession sesion = request.getSession();
if (request.getParameter("btnIngresar") != null) {
String usuario = request.getParameter("txtUsuario");
String password = request.getParameter("txtPassword");
boolean acceso = op.logear(usuario, password);
if (acceso) {
sesion.setAttribute("user", usuario);
session.setAttribute("nivel", "1");
response.sendRedirect("indexMain.jsp");
} else {
out.write("El usuario o la contraseña es incorrecta.");
}
}
if (request.getParameter("cerrar") != null) {
sesion.invalidate();
}
%>
<br/><br/>
<p id="marca">Jorge Pérez</p>
</div>
</body>
</html>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page session="true" %>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Login</title>
<link href="css/estilo.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="cuadro">
<form action="index.jsp" method="POST">
<p id="titulo">INICIAR SESIÓN</p>
<hr>
<br/><br/>
<label id="subtitulo1" for="user">NOMBRE DE USUARIO</label>
<br/><br/>
<input type="text" class="entrada" id="user" name="txtUsuario"/>
<br/><br/>
<label id="subtitulo2" for="pass">PASSWORD</label>
<br/><br/>
<input type="password" class="entrada" id="pass" name="txtPassword"/>
<br/><br/>
<input type="submit" name = "btnIngresar" value="Ingresar" id="boton"/>
</form>
<%
SecurityInterface op = new SecurityInterface();
HttpSession sesion = request.getSession();
if (request.getParameter("btnIngresar") != null) {
String usuario = request.getParameter("txtUsuario");
String password = request.getParameter("txtPassword");
boolean acceso = op.logear(usuario, password);
if (acceso) {
sesion.setAttribute("user", usuario);
session.setAttribute("nivel", "1");
response.sendRedirect("indexMain.jsp");
} else {
out.write("El usuario o la contraseña es incorrecta.");
}
}
if (request.getParameter("cerrar") != null) {
sesion.invalidate();
}
%>
<br/><br/>
<p id="marca">Jorge Pérez</p>
</div>
</body>
</html>
XML Java
package Main;
import java.io.File;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import pqConexion.*;
public class MainXMLdb {
public static void main(String args[]) {
String tabla = "USUARIOS";
String id="", nombre="", apellido="", login="", password="", sessionid="";
System.out.println("EJECUCION SQL");
Transactions jlpc = new Transactions();
System.out.println("\nCONSULTAR TODOS LOS DATOS");
jlpc.buscar(tabla);
System.out.println("Realizar una conexion a la base de datos");
jlpc.conectar();
System.out.println(System.getProperty("user.dir"));
try {
File archivo = new File(System.getProperty("user.dir") + "\\src\\java\\Main\\datos.xml");
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder documentBuilder = dbf.newDocumentBuilder();
Document document = documentBuilder.parse(archivo);
document.getDocumentElement().normalize();
System.out.println("Elemento raiz:" + document.getDocumentElement().getNodeName());
NodeList listaEmpleados = document.getElementsByTagName("usuario");
for (int temp = 0; temp < listaEmpleados.getLength(); temp++) {
Node nodo = listaEmpleados.item(temp);
System.out.println("\nElemento:" + nodo.getNodeName());
if (nodo.getNodeType() == Node.ELEMENT_NODE) {
Element element = (Element) nodo;
id = element.getElementsByTagName("id").item(0).getTextContent();
nombre = element.getElementsByTagName("nombre").item(0).getTextContent();
apellido = element.getElementsByTagName("apellido").item(0).getTextContent();
login = element.getElementsByTagName("login").item(0).getTextContent();
password = element.getElementsByTagName("password").item(0).getTextContent();
sessionid = element.getElementsByTagName("sessionid").item(0).getTextContent();
System.out.println("id: " + id);
System.out.println("Nombre: " + nombre);
System.out.println("Apellido: " + apellido);
System.out.println("Login: " + login);
System.out.println("Password: " + password);
System.out.println("SessionId: " + sessionid);
System.out.println("\nINSERCION DE DATOS");
jlpc.insertarUsuario(tabla, id, nombre, apellido, login, password, sessionid);
}
}
System.out.println("\nCONSULTAR DE DATOS");
jlpc.buscar(tabla, "1");
System.out.println("\nACTUALIZACION DE DATOS");
jlpc.modificarUsuario(tabla, "1", "Juana", "de Perez", "juan", "x765", "CT3435DGVFN");
System.out.println("\nELIMINACION DE DATOS");
jlpc.eliminarUsuario(tabla, "1");
} catch (Exception e) {
e.printStackTrace();
}
}
}
import java.io.File;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import pqConexion.*;
public class MainXMLdb {
public static void main(String args[]) {
String tabla = "USUARIOS";
String id="", nombre="", apellido="", login="", password="", sessionid="";
System.out.println("EJECUCION SQL");
Transactions jlpc = new Transactions();
System.out.println("\nCONSULTAR TODOS LOS DATOS");
jlpc.buscar(tabla);
System.out.println("Realizar una conexion a la base de datos");
jlpc.conectar();
System.out.println(System.getProperty("user.dir"));
try {
File archivo = new File(System.getProperty("user.dir") + "\\src\\java\\Main\\datos.xml");
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder documentBuilder = dbf.newDocumentBuilder();
Document document = documentBuilder.parse(archivo);
document.getDocumentElement().normalize();
System.out.println("Elemento raiz:" + document.getDocumentElement().getNodeName());
NodeList listaEmpleados = document.getElementsByTagName("usuario");
for (int temp = 0; temp < listaEmpleados.getLength(); temp++) {
Node nodo = listaEmpleados.item(temp);
System.out.println("\nElemento:" + nodo.getNodeName());
if (nodo.getNodeType() == Node.ELEMENT_NODE) {
Element element = (Element) nodo;
id = element.getElementsByTagName("id").item(0).getTextContent();
nombre = element.getElementsByTagName("nombre").item(0).getTextContent();
apellido = element.getElementsByTagName("apellido").item(0).getTextContent();
login = element.getElementsByTagName("login").item(0).getTextContent();
password = element.getElementsByTagName("password").item(0).getTextContent();
sessionid = element.getElementsByTagName("sessionid").item(0).getTextContent();
System.out.println("id: " + id);
System.out.println("Nombre: " + nombre);
System.out.println("Apellido: " + apellido);
System.out.println("Login: " + login);
System.out.println("Password: " + password);
System.out.println("SessionId: " + sessionid);
System.out.println("\nINSERCION DE DATOS");
jlpc.insertarUsuario(tabla, id, nombre, apellido, login, password, sessionid);
}
}
System.out.println("\nCONSULTAR DE DATOS");
jlpc.buscar(tabla, "1");
System.out.println("\nACTUALIZACION DE DATOS");
jlpc.modificarUsuario(tabla, "1", "Juana", "de Perez", "juan", "x765", "CT3435DGVFN");
System.out.println("\nELIMINACION DE DATOS");
jlpc.eliminarUsuario(tabla, "1");
} catch (Exception e) {
e.printStackTrace();
}
}
}
XML
<?xml version="1.0" encoding="UTF-8"?>
<usuarios>
<usuario>
<id>1</id>
<nombre>Juan</nombre>
<apellido>Perez</apellido>
<login>juan</login>
<password>p1234</password>
<sessionid>HT3435DGVFG</sessionid>
</usuario>
<usuario>
<id>2</id>
<nombre>Ernesto</nombre>
<apellido>Lopez</apellido>
<login>lopez</login>
<password>edfvd</password>
<sessionid>ML3895DGVTY</sessionid>
</usuario>
<usuario>
<id>3</id>
<nombre>Jilio</nombre>
<apellido>Sorto</apellido>
<login>Sorto</login>
<password>edfvd</password>
<sessionid>ML5825DGPQY</sessionid>
</usuario>
</usuarios>
<usuarios>
<usuario>
<id>1</id>
<nombre>Juan</nombre>
<apellido>Perez</apellido>
<login>juan</login>
<password>p1234</password>
<sessionid>HT3435DGVFG</sessionid>
</usuario>
<usuario>
<id>2</id>
<nombre>Ernesto</nombre>
<apellido>Lopez</apellido>
<login>lopez</login>
<password>edfvd</password>
<sessionid>ML3895DGVTY</sessionid>
</usuario>
<usuario>
<id>3</id>
<nombre>Jilio</nombre>
<apellido>Sorto</apellido>
<login>Sorto</login>
<password>edfvd</password>
<sessionid>ML5825DGPQY</sessionid>
</usuario>
</usuarios>
Login BD Java
package pqSecurity;
import java.util.List;
import java.util.Map;
import pqConexion.Transactions;
public class SecurityInterface {
private String user;
private String pass;
private String id;
private boolean acceso;
public SecurityInterface() {
this.acceso = false;
}
public boolean logear(String user, String pass) {
this.acceso = false;
this.user = user;
this.pass = pass;
Transactions tr = new Transactions();
try {
List<Map<String, Object>> registro = null;
registro = tr.sesion("USUARIOS", this.user, this.pass);
if ((registro != null) && (registro.size() > 0)) {
this.acceso = true;
} else {
this.acceso = false;
}
} catch (Exception e) {
System.out.println(e.toString());
}
return this.acceso;
}
public String getId_user() {
return this.id;
}
public void logout() {
this.acceso = false;
}
public boolean isLogged() {
return this.acceso;
}
}
import java.util.List;
import java.util.Map;
import pqConexion.Transactions;
public class SecurityInterface {
private String user;
private String pass;
private String id;
private boolean acceso;
public SecurityInterface() {
this.acceso = false;
}
public boolean logear(String user, String pass) {
this.acceso = false;
this.user = user;
this.pass = pass;
Transactions tr = new Transactions();
try {
List<Map<String, Object>> registro = null;
registro = tr.sesion("USUARIOS", this.user, this.pass);
if ((registro != null) && (registro.size() > 0)) {
this.acceso = true;
} else {
this.acceso = false;
}
} catch (Exception e) {
System.out.println(e.toString());
}
return this.acceso;
}
public String getId_user() {
return this.id;
}
public void logout() {
this.acceso = false;
}
public boolean isLogged() {
return this.acceso;
}
}
Test BD Java
package pqConexion;
public class TestBD {
public static void main(String[] args) {
System.out.println("EJECUCION SQL");
Transactions jlpc = new Transactions();
System.out.println("Realizar una conexion a la base de datos");
jlpc.conectar();
System.out.println("\nINSERCION DE DATOS");
jlpc.insertarUsuario("USUARIOS", "11", "Juan", "Perez", "juan", "p1234", "HT3435DGVFG");
System.out.println("\nCONSULTAR DE DATOS");
//jlpc.buscar("USUARIOS", "11");
System.out.println("\nACTUALIZACION DE DATOS");
jlpc.modificarUsuario("USUARIOS", "11", "Juana", "de Perez", "juan", "x765", "CT3435DGVFN");
System.out.println("\nELIMINACION DE DATOS");
//jlpc.eliminarUsuario("USUARIOS", "9");
}
}
public class TestBD {
public static void main(String[] args) {
System.out.println("EJECUCION SQL");
Transactions jlpc = new Transactions();
System.out.println("Realizar una conexion a la base de datos");
jlpc.conectar();
System.out.println("\nINSERCION DE DATOS");
jlpc.insertarUsuario("USUARIOS", "11", "Juan", "Perez", "juan", "p1234", "HT3435DGVFG");
System.out.println("\nCONSULTAR DE DATOS");
//jlpc.buscar("USUARIOS", "11");
System.out.println("\nACTUALIZACION DE DATOS");
jlpc.modificarUsuario("USUARIOS", "11", "Juana", "de Perez", "juan", "x765", "CT3435DGVFN");
System.out.println("\nELIMINACION DE DATOS");
//jlpc.eliminarUsuario("USUARIOS", "9");
}
}
Operaciones BD Java
package pqConexion;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.sql.*;
/**
*
* @author Jorge Luis Perez Canto
*/
import pqSecurity.SecurityInterface;
public class Transactions {
private Conexion conexionClass;
private Connection conexion;
private Statement sentencia;
private String cadenaSQL;
private SecurityInterface sI = new SecurityInterface();
public Transactions() {
this.conexionClass = new Conexion();
sentencia = null;
}
public void conectar() {
try {
this.conexion = this.conexionClass.getConexion();
if (sentencia != null) {
sentencia.close();
sentencia = null;
}
} catch (SQLException e) {
System.out.println("SQLException: No se puede establecer conección con el servidor");
System.out.println(e.getMessage());
e.printStackTrace();
} catch (Exception e) {
System.out.println("Exception: No se puede establecer conección con el servidor");
System.out.println(e.toString());
e.printStackTrace();
}
}
public void buscar(String tabla) {
conectar();
boolean r = false;
Statement miStatement = null;
ResultSet rs = null;
try {
System.out.println("Iniciando la busqueda de datos...");
miStatement = this.conexionClass.getConexion().createStatement();
String cadena = "SELECT * FROM " + tabla + "";
System.out.println(cadena);
rs = miStatement.executeQuery(cadena);
if (rs != null) {
while (rs.next()) {
System.out.println("ID: " + rs.getString("id") + " NOMBRE: " + rs.getString("nombre") + " APELLIDO: " + rs.getString("apellido") + "");
}
}
} catch (SQLException e) {
System.out.println("Ocurrio un error al intentar realizar la operación.");
System.out.println(e.getMessage());
e.printStackTrace();
} finally {
cerrarResultSet(rs);
cerrarPstmt(miStatement);
closeConnection();
}
}
public boolean buscar(String tabla, String id) {
conectar();
boolean r = false;
Statement miStatement = null;
ResultSet rs = null;
try {
System.out.println("Iniciando la busqueda de datos...");
miStatement = this.conexionClass.getConexion().createStatement();
String cadena = "SELECT * FROM " + tabla + " WHERE id='" + id + "'";
System.out.println(cadena);
rs = miStatement.executeQuery(cadena);
if (rs != null) {
if (rs.next()) {
r = true;
System.out.println("ID: " + rs.getString("id") + " NOMBRE: " + rs.getString("nombre") + " APELLIDO: " + rs.getString("apellido") + "");
} else {
System.out.println("Los datos solicitados no existen en la tabla: " + tabla);
r = false;
}
}
} catch (SQLException e) {
System.out.println("Ocurrio un error al intentar realizar la operación.");
System.out.println(e.getMessage());
e.printStackTrace();
} finally {
cerrarResultSet(rs);
cerrarPstmt(miStatement);
closeConnection();
}
return r;
}
// INSERTAR:
public void insertarUsuario(String tabla, String id, String nombre, String apellido, String login, String password, String sessionid) {
conectar();
String estado = "";
Statement miStatement = null;
if (buscar(tabla, id) == false) {
System.out.println("Procediendo el proceso de inserción...");
try {
System.out.println("Iniciando la inserción...");
miStatement = this.conexionClass.getConexion().createStatement();
String cadena = "INSERT INTO " + tabla + " (ID, NOMBRE, APELLIDO, LOGIN, SESSIONID, PASSWORD) VALUES ('" + id + "', '" + nombre + "', '" + apellido + "', '" + login + "', '" + sessionid + "', '" + password + "')";
System.out.println(cadena);
miStatement.executeUpdate(cadena);
System.out.println("Datos insertados correctamente.");
} catch (SQLException e) {
System.out.println(e.getMessage());
} catch (Exception e) {
System.out.println(e.getMessage());
} finally {
cerrarPstmt(miStatement);
closeConnection();
}
} else {
System.out.println("No se puede realizar la inserción porque ya existe un registro con el mismo ID");
}
}
// ACTUALIZAR:
public void modificarUsuario(String tabla, String id, String nombre, String apellido, String login, String password, String sessionid) {
conectar();
Statement miStatement = null;
if (buscar(tabla, id)) {
conectar();
String cadena = "UPDATE " + tabla + " SET nombre='" + nombre + "', apellido='" + apellido + "', login='" + login + "', password='" + password + "', sessionid='" + sessionid + "' WHERE id='" + id + "'";
System.out.println(cadena);
try {
System.out.println("Iniciando el proceso de actualización...");
miStatement = this.conexionClass.getConexion().createStatement();
miStatement.executeUpdate(cadena);
System.out.println("Datos actualizados correctamente.");
} catch (SQLException e) {
System.out.println(e.getMessage());;
} finally {
cerrarPstmt(miStatement);
closeConnection();
}
} else {
System.out.println("No se puede realizar la actualización porque no existe ningún registro con ese número de ID.");
}
}
// ELIMINAR:
public String eliminarUsuario(String tabla, String id) {
String estado = null;
if (buscar(tabla, id)) {
conectar();
PreparedStatement pstmt = null;
Statement miStatement = null;
String cadena = "DELETE FROM " + tabla + " WHERE id='" + id + "'";
try {
System.out.println("Iniciando el proceso de eliminación...");
miStatement = this.conexionClass.getConexion().createStatement();
miStatement.executeUpdate(cadena);
System.out.println("Datos eliminados exitosamente.");
} catch (SQLException e) {
estado = e.getMessage();
} finally {
cerrarPstmt(miStatement);
closeConnection();
}
} else {
System.out.println("No se puede realizar la eliminación porque no existe ningún registro con ese número de ID.");
}
return estado;
}
// OTROS MÉTODOS
private void cerrarSentencia(Statement sentencia) {
if (sentencia != null) {
try {
sentencia.close();
} catch (SQLException e) {
System.out.println(e.getMessage());
}
sentencia = null;
}
}
private void cerrarResultSet(ResultSet rs) {
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
System.out.println(e.getMessage());
}
}
}
private void cerrarPstmt(PreparedStatement pstmt) {
if (pstmt != null) {
try {
pstmt.close();
pstmt = null;
} catch (SQLException e) {
System.out.println(e.getMessage());
}
}
}
private void cerrarPstmt(Statement pstmt) {
if (pstmt != null) {
try {
pstmt.close();
pstmt = null;
} catch (SQLException e) {
System.out.println(e.getMessage());
}
}
}
public void cerrarConexion() {
if (this.conexion != null) {
try {
//this.conexion.close();
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
}
protected void closeConnection() {
try {
if (this.conexion != null) {
//this.conexion.close();
}
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
public List<Map<String, Object>> obtenerArregloResultados(ResultSet rs) {
List<Map<String, Object>> rows = new ArrayList<Map<String, Object>>();
ResultSetMetaData metaData = null;
int columnCount = 0;
try {
metaData = rs.getMetaData();
columnCount = metaData.getColumnCount();
while (rs.next()) {
Map<String, Object> columns = new LinkedHashMap<String, Object>();
for (int i = 1; i <= columnCount; i++) {
columns.put(metaData.getColumnLabel(i), rs.getObject(i));
}
rows.add(columns);
}
} catch (SQLException e) {
System.out.println("Error al intentar convertir un ResultSet a un Arreglo.");
System.out.println(e.getMessage());
} finally {
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
return rows;
}
public List<Map<String, Object>> sesion(String tabla, String usuario, String password) {
conectar();
Statement miStatement = null;
ResultSet result = null;
List<Map<String, Object>> rs = null;
String cadena = "SELECT id, login, password FROM " + tabla + " WHERE login="+usuario+" AND password="+password+"";
try {
System.out.println("Iniciando la verificación de credenciales...");
miStatement = this.conexionClass.getConexion().createStatement();
System.out.println(cadena);
result = miStatement.executeQuery(cadena);
if (result != null) {
rs = obtenerArregloResultados(result);
}
if (result != null) {
if (result.next()) {
System.out.println("ID: " + result.getString("id") + " NOMBRE: " + result.getString("nombre") + " APELLIDO: " + result.getString("apellido") + "");
} else {
System.out.println("Los datos solicitados no existen en la tabla: " + tabla);
}
}
} catch (SQLException e) {
System.out.println("Ocurrio un error al intentar comprobar credenciales.");
System.out.println(e.getMessage());
e.printStackTrace();
} catch (Exception e) {
System.out.println("Ocurrio un error al intentar comprobar credenciales.");
System.out.println(e.getMessage());
e.printStackTrace();
} finally {
cerrarResultSet(result);
cerrarPstmt(miStatement);
closeConnection();
}
return rs;
}
}
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.sql.*;
/**
*
* @author Jorge Luis Perez Canto
*/
import pqSecurity.SecurityInterface;
public class Transactions {
private Conexion conexionClass;
private Connection conexion;
private Statement sentencia;
private String cadenaSQL;
private SecurityInterface sI = new SecurityInterface();
public Transactions() {
this.conexionClass = new Conexion();
sentencia = null;
}
public void conectar() {
try {
this.conexion = this.conexionClass.getConexion();
if (sentencia != null) {
sentencia.close();
sentencia = null;
}
} catch (SQLException e) {
System.out.println("SQLException: No se puede establecer conección con el servidor");
System.out.println(e.getMessage());
e.printStackTrace();
} catch (Exception e) {
System.out.println("Exception: No se puede establecer conección con el servidor");
System.out.println(e.toString());
e.printStackTrace();
}
}
public void buscar(String tabla) {
conectar();
boolean r = false;
Statement miStatement = null;
ResultSet rs = null;
try {
System.out.println("Iniciando la busqueda de datos...");
miStatement = this.conexionClass.getConexion().createStatement();
String cadena = "SELECT * FROM " + tabla + "";
System.out.println(cadena);
rs = miStatement.executeQuery(cadena);
if (rs != null) {
while (rs.next()) {
System.out.println("ID: " + rs.getString("id") + " NOMBRE: " + rs.getString("nombre") + " APELLIDO: " + rs.getString("apellido") + "");
}
}
} catch (SQLException e) {
System.out.println("Ocurrio un error al intentar realizar la operación.");
System.out.println(e.getMessage());
e.printStackTrace();
} finally {
cerrarResultSet(rs);
cerrarPstmt(miStatement);
closeConnection();
}
}
public boolean buscar(String tabla, String id) {
conectar();
boolean r = false;
Statement miStatement = null;
ResultSet rs = null;
try {
System.out.println("Iniciando la busqueda de datos...");
miStatement = this.conexionClass.getConexion().createStatement();
String cadena = "SELECT * FROM " + tabla + " WHERE id='" + id + "'";
System.out.println(cadena);
rs = miStatement.executeQuery(cadena);
if (rs != null) {
if (rs.next()) {
r = true;
System.out.println("ID: " + rs.getString("id") + " NOMBRE: " + rs.getString("nombre") + " APELLIDO: " + rs.getString("apellido") + "");
} else {
System.out.println("Los datos solicitados no existen en la tabla: " + tabla);
r = false;
}
}
} catch (SQLException e) {
System.out.println("Ocurrio un error al intentar realizar la operación.");
System.out.println(e.getMessage());
e.printStackTrace();
} finally {
cerrarResultSet(rs);
cerrarPstmt(miStatement);
closeConnection();
}
return r;
}
// INSERTAR:
public void insertarUsuario(String tabla, String id, String nombre, String apellido, String login, String password, String sessionid) {
conectar();
String estado = "";
Statement miStatement = null;
if (buscar(tabla, id) == false) {
System.out.println("Procediendo el proceso de inserción...");
try {
System.out.println("Iniciando la inserción...");
miStatement = this.conexionClass.getConexion().createStatement();
String cadena = "INSERT INTO " + tabla + " (ID, NOMBRE, APELLIDO, LOGIN, SESSIONID, PASSWORD) VALUES ('" + id + "', '" + nombre + "', '" + apellido + "', '" + login + "', '" + sessionid + "', '" + password + "')";
System.out.println(cadena);
miStatement.executeUpdate(cadena);
System.out.println("Datos insertados correctamente.");
} catch (SQLException e) {
System.out.println(e.getMessage());
} catch (Exception e) {
System.out.println(e.getMessage());
} finally {
cerrarPstmt(miStatement);
closeConnection();
}
} else {
System.out.println("No se puede realizar la inserción porque ya existe un registro con el mismo ID");
}
}
// ACTUALIZAR:
public void modificarUsuario(String tabla, String id, String nombre, String apellido, String login, String password, String sessionid) {
conectar();
Statement miStatement = null;
if (buscar(tabla, id)) {
conectar();
String cadena = "UPDATE " + tabla + " SET nombre='" + nombre + "', apellido='" + apellido + "', login='" + login + "', password='" + password + "', sessionid='" + sessionid + "' WHERE id='" + id + "'";
System.out.println(cadena);
try {
System.out.println("Iniciando el proceso de actualización...");
miStatement = this.conexionClass.getConexion().createStatement();
miStatement.executeUpdate(cadena);
System.out.println("Datos actualizados correctamente.");
} catch (SQLException e) {
System.out.println(e.getMessage());;
} finally {
cerrarPstmt(miStatement);
closeConnection();
}
} else {
System.out.println("No se puede realizar la actualización porque no existe ningún registro con ese número de ID.");
}
}
// ELIMINAR:
public String eliminarUsuario(String tabla, String id) {
String estado = null;
if (buscar(tabla, id)) {
conectar();
PreparedStatement pstmt = null;
Statement miStatement = null;
String cadena = "DELETE FROM " + tabla + " WHERE id='" + id + "'";
try {
System.out.println("Iniciando el proceso de eliminación...");
miStatement = this.conexionClass.getConexion().createStatement();
miStatement.executeUpdate(cadena);
System.out.println("Datos eliminados exitosamente.");
} catch (SQLException e) {
estado = e.getMessage();
} finally {
cerrarPstmt(miStatement);
closeConnection();
}
} else {
System.out.println("No se puede realizar la eliminación porque no existe ningún registro con ese número de ID.");
}
return estado;
}
// OTROS MÉTODOS
private void cerrarSentencia(Statement sentencia) {
if (sentencia != null) {
try {
sentencia.close();
} catch (SQLException e) {
System.out.println(e.getMessage());
}
sentencia = null;
}
}
private void cerrarResultSet(ResultSet rs) {
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
System.out.println(e.getMessage());
}
}
}
private void cerrarPstmt(PreparedStatement pstmt) {
if (pstmt != null) {
try {
pstmt.close();
pstmt = null;
} catch (SQLException e) {
System.out.println(e.getMessage());
}
}
}
private void cerrarPstmt(Statement pstmt) {
if (pstmt != null) {
try {
pstmt.close();
pstmt = null;
} catch (SQLException e) {
System.out.println(e.getMessage());
}
}
}
public void cerrarConexion() {
if (this.conexion != null) {
try {
//this.conexion.close();
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
}
protected void closeConnection() {
try {
if (this.conexion != null) {
//this.conexion.close();
}
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
public List<Map<String, Object>> obtenerArregloResultados(ResultSet rs) {
List<Map<String, Object>> rows = new ArrayList<Map<String, Object>>();
ResultSetMetaData metaData = null;
int columnCount = 0;
try {
metaData = rs.getMetaData();
columnCount = metaData.getColumnCount();
while (rs.next()) {
Map<String, Object> columns = new LinkedHashMap<String, Object>();
for (int i = 1; i <= columnCount; i++) {
columns.put(metaData.getColumnLabel(i), rs.getObject(i));
}
rows.add(columns);
}
} catch (SQLException e) {
System.out.println("Error al intentar convertir un ResultSet a un Arreglo.");
System.out.println(e.getMessage());
} finally {
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
return rows;
}
public List<Map<String, Object>> sesion(String tabla, String usuario, String password) {
conectar();
Statement miStatement = null;
ResultSet result = null;
List<Map<String, Object>> rs = null;
String cadena = "SELECT id, login, password FROM " + tabla + " WHERE login="+usuario+" AND password="+password+"";
try {
System.out.println("Iniciando la verificación de credenciales...");
miStatement = this.conexionClass.getConexion().createStatement();
System.out.println(cadena);
result = miStatement.executeQuery(cadena);
if (result != null) {
rs = obtenerArregloResultados(result);
}
if (result != null) {
if (result.next()) {
System.out.println("ID: " + result.getString("id") + " NOMBRE: " + result.getString("nombre") + " APELLIDO: " + result.getString("apellido") + "");
} else {
System.out.println("Los datos solicitados no existen en la tabla: " + tabla);
}
}
} catch (SQLException e) {
System.out.println("Ocurrio un error al intentar comprobar credenciales.");
System.out.println(e.getMessage());
e.printStackTrace();
} catch (Exception e) {
System.out.println("Ocurrio un error al intentar comprobar credenciales.");
System.out.println(e.getMessage());
e.printStackTrace();
} finally {
cerrarResultSet(result);
cerrarPstmt(miStatement);
closeConnection();
}
return rs;
}
}
Conexión BD Java
package pqConexion;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Conexion {
private Connection conexion;
public Conexion() {
this.conexion = conecta();
}
protected Connection conecta() {
if (this.conexion != null) {
try {
this.conexion.close();
} catch (SQLException e) {
System.out.println("Error al cerrar la conexion");
System.out.println(e.getMessage());
}
}
conexion = null;
if (this.conexion == null) {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:xe";
//String user = "prueba";
String user = "SYSTEM";
String pass = "prueba";
this.conexion = DriverManager.getConnection(url, user, pass);
System.out.println("Conexion establecida!!!");
} catch (SQLException | ClassNotFoundException e) {
System.out.println("Error en la conexión de la base de datos");
System.out.println(e.getMessage());
}
}
return conexion;
}
public Connection getConexion() {
//this.conexion = conecta();
return this.conexion;
}
}
Suscribirse a:
Entradas (Atom)