Includes
Archivo ejemplo18.html
<!DOCTYPE
html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<table border="0"
width="400" cellspacing="0"
cellpadding="0">
<tr>
<td height="150"
width="150"> </td> <td width="250"> </td>
</tr>
<tr>
<td width="250"> </td>
<td align="right"
width="350">
<img src="merlin.gif">
</td>
</tr>
</table> <br>
</body>
</html>
Archivo ejemplo18a.jsp
<%@
page language="java"
contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@
include file="ejemplo18.html"
%>
<!DOCTYPE
html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Página principal</title>
</head>
<body bgcolor="#ffffff" background="background.gif">
<table
border="0" width="700">
<tr>
<td width="150"> </td>
<td width="550">
<h1>Mi nombre es Merlin ¿el tuyo?</h1> </td>
</tr>
<tr>
<td width="150"> </td>
<td width="550">
<form method="get">
<input
type="text" name="usu"
size="25"> <br>
<input
type="submit" value="Enviar">
</form>
</td>
</tr>
</table>
<%if ( request.getParameter("usu") != null ) { %>
<%@
include file="ejemplo18c.jsp"
%>
<%}%>
</body>
</html>
Archivo ejemplo18c.jsp
<%@
page language="java" contentType="text/html;
charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE
html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<table
border="0" width="700"> <tr>
<td width="150"> </td>
<td width="550">
<jsp:useBean id="miclase" scope="page"
class="Beans.NombreUser" />
<jsp:setProperty name="miclase" property="*"/>
<h1>Hola, <jsp:getProperty name="miclase" property="usu"
/>! </h1>
</td> </tr> </table>
</body>
</html>
Sesiones
Ejemplo 1
<%@
page language="java"
contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"
import="java.util.*"%>
<!DOCTYPE
html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>trabajando con sesiones</title>
</head>
<body>
<%
//obtener la sesión
HttpSession sesion1 =request.getSession();
//muestra la identificación
out.println("Identificación: " + sesion1.getId() + "<br>
<br>");
//obtener y mostrar la fecha de creación
Date fecha = new Date(sesion1.getCreationTime());
out.println("Creacion: " + fecha + "<br> <br>");
//obtener y mostrar el tiempo de conexión
Long duracion = sesion1.getLastAccessedTime() -
sesion1.getCreationTime();
Date verDuracion = new Date(duracion);
out.println("Duración: " + verDuracion.getMinutes() + " minutos y
" +
verDuracion.getSeconds() + " segundos");
%>
</body>
</html>
Ejemplo 2
<%@
page language="java"
contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"
import="java.util.*"%>
<%
out.println("Identificación: " + session.getId() + "<br>
<br>");
//obtener y mostrar la fecha de creación
Date fecha = new Date(session.getCreationTime());
out.println("Creación: " + fecha + "<br> <br>");
//obtener y mostrar el tiempo de conexión
Long duracion = session.getLastAccessedTime() -
session.getCreationTime();
Date verDuracion = new Date(duracion);
out.println("Duración: " + verDuracion.getMinutes() + " minutos y
" +
verDuracion.getSeconds() + " segundos");
%>
Sesiones (Validación)
Archivo ejemplo23a.jsp
<%@
page language="java"
contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1" session="true"%>
<!DOCTYPE
html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Página de identificación</title>
</head>
<body>
<%
if (request.getParameter("error") != null) {
out.println(request.getParameter("error"));
}
%>
<form action="ejemplo23b.jsp" method="post">
usuario.....: <input
type ="text" name="usuario"
size="25"><br>
contraseña: <input
type="password" name="clave"
size="10"><br>
<input
type ="submit" value
="enviar">
</form>
</body>
</html>
Archivo ejemplo23b.jsp
<%@
page language="java"
contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1" session="true"%>
<!DOCTYPE
html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>proceso de validación</title>
</head>
<body>
<%
String usuario=null;
String clave=null; if (request.getParameter("usuario") !=null)
usuario=request.getParameter("usuario");
if (request.getParameter("clave") !=null)
clave=request.getParameter("clave");
if (usuario.equals("MERLIN")&&clave.equals("XXXX")) {
HttpSession sesion1=request.getSession();
sesion1.setAttribute("usuario",usuario);
%>
<jsp:forward page="ejemplo23c.jsp"></jsp:forward>
<%
}else {
%>
<jsp:forward page="ejemplo23a.jsp">
<jsp:param
name="error" value="Usuario y/o
clave incorrectos<br>Vuelve a teclearlos"/>
</jsp:forward>
<%
}
%>
</body>
</html>
Archivo ejemplo23c.jsp
<%@
page language="java"
contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1" session="true"%>
<!DOCTYPE
html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>El programa principal</title>
</head>
<body>
<%
String usuario=null;
HttpSession sesion1=request.getSession();
if (sesion1.getAttribute("usuario")==null) {
%>
<jsp:forward page="ejemplo23a.jsp">
<jsp:param
name="error" value="Hay que
identificarse"/>
</jsp:forward>
<%} else {
usuario=(String)sesion1.getAttribute("usuario");
}
%>
<b>Opciones de la aplicación</b><br>
<b>Usuario conectado</b>
<%=usuario%><p>
<li><a href="altas.jsp">Alta nuevo usuario<a/>
<li><a href="bajas.jsp">baja de un usuario<a/>
<li><a href="modificar.jsp">Modificar los datos
del usuario<a/>
<li><a href="ejemplo23d.jsp">Cerrar sesión<a/>
</body>
</html>
Archivo ejemplo23d.jsp
<%@
page language="java"
contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"
session="true"%>
<!DOCTYPE
html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>cierra la sesión y vuelve a la identificación</title>
</head>
<body>
<%
HttpSession sesion1=request.getSession();
if (sesion1!=null)
sesion1.invalidate();
%>
<jsp:forward page="ejemplo23a.jsp"></jsp:forward>
</body>
</html>
Cookies
Archivo ejemplo24a.jsp
<%@
page language="java"
contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1" import
= "java.util.*"%>
<!DOCTYPE
html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>crear cookies</title>
</head>
<body>
<%
Cookie miCookie = new Cookie("usuario","merlin");
miCookie.setMaxAge(60*60*24*2);
response.addCookie(miCookie);
%>
</body>
</html>
Archivo ejemplo24b.jsp
<%@
page language="java"
contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"
import="java.util.*"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML
4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>recuperar cookies</title>
</head>
<body>
<%
Cookie[] lasCookies = request.getCookies();
for (int i=0; i<lasCookies.length; i++)
{
Cookie miCookie = lasCookies[i];
out.println("Nombre de mi cookie... :" +
miCookie.getName() +"<br>");
out.println("Contenido de la cookie :" +
miCookie.getValue() +"<br>");
out.println("Tiempo de vida........ :" +
miCookie.getMaxAge() +"<br>");
}
%>
</body>
</html>
Bases de datos. Inserción
Archivo AccesoBDatos.java
package paquetes;
import java.sql.*;
import java.util.ArrayList;
import java.util.Collection;
public class AccesoBdatos {
public Connection conecta;
public void conectar() throws SQLException,
ClassNotFoundException {
Class.forName("com.mysql.jdbc.Driver");
conecta = DriverManager.getConnection("jdbc:mysql://localhost:3306/demodb","root","");
}
public void insertar(Integer clave, String nombre, String localidad){
try {
String sql="insert into
dept values (?,?,?)";
PreparedStatement
inserta=conecta.prepareStatement(sql);
inserta.setInt(1,clave);
inserta.setString(2,nombre);
inserta.setString(3,localidad);
inserta.executeUpdate();
} catch(SQLException e){
System.out.println("error al
insertar en dept"+e.getMessage());
}
}
public void insertarConBean(Depto
registro){
try {
String sql="insert into
dept values (?,?,?)";
PreparedStatement
inserta =conecta.prepareStatement(sql);
inserta.setInt(1,registro.getDeptno());
inserta.setString(2,registro.getDname());
inserta.setString(3,registro.getLoc());
inserta.executeUpdate();
} catch(SQLException e){
System.out.println("error al
insertar en dept"+e.getMessage());
}
}
public Collection
consultarConBean(){
ArrayList
deptos = new ArrayList ();
try {
PreparedStatement
consulta = conecta.prepareStatement("SELECT * FROM
dept");
ResultSet reg = consulta.executeQuery ();
while (reg.next ()) {
Depto departamento = new Depto(
reg.getInt (1), reg.getString (2), reg.getString (3));
deptos.add(departamento);
}
consulta.close ();
} catch (SQLException e) {
return null;
} return deptos;
}
public Depto
consultarUno(int numero){
try {
PreparedStatement
consulta = conecta.prepareStatement("SELECT * FROM
dept WHERE deptno=?");
consulta.setInt(1, numero);
ResultSet reg = consulta.executeQuery ();
Depto departamento = new Depto();
if (reg.next ())
{
departamento.setDeptno(reg.getInt (1));
departamento.setDname(reg.getString(2));
departamento.setLoc(reg.getString(3));
}
consulta.close ();
return departamento;
}
catch (SQLException e) {
System.out.println("error en la
consulta"+e.getMessage());
return null;
}
}
public void actualizar(Depto
registro){
try {
String sql="update dept
set dname=?, loc=? where deptno=?";
PreparedStatement
actualiza = conecta.prepareStatement(sql);
actualiza.setString(1,registro.getDname());
actualiza.setString(2,registro.getLoc());
actualiza.setInt(3,registro.getDeptno());
actualiza.executeUpdate();
} catch(SQLException e){
System.out.println("error al
actualizar en dept"+e.getMessage());
}
}
public void bajas(int numero){
try {
PreparedStatement
consulta = conecta.prepareStatement("DELETE FROM
dept WHERE deptno=?");
consulta.setInt(1, numero);
consulta.executeUpdate();
consulta.close ();
} catch (SQLException e) {
System.out.println("error en la
consulta"+e.getMessage());
}
}
public int bajas2(int numero){
int filas=0;
try {
PreparedStatement
baja = conecta.prepareStatement("DELETE FROM
dept WHERE deptno=?");
baja.setInt(1, numero);
filas = baja.executeUpdate ();
baja.close ();
return filas;
} catch (SQLException e) {
System.out.println("error en la
consulta"+e.getMessage());
return 0;
}
}
public void llamaProc(Integer clave, String localidad){
try {
CallableStatement
actu = conecta.prepareCall("{call
actualizaDept(?,?)}");
actu.setInt(1,clave);
actu.setString(2,localidad);
actu.executeUpdate();
} catch (SQLException e) {
System.out.println("error en la actualización"+e.getMessage());
}
}
public Depto
consultarUnoProc(int numero){ try {
CallableStatement
consulta = conecta.prepareCall("{Call
consultaDepar(?,?,?)}");
consulta.setInt(1, numero);
consulta.registerOutParameter(2,
Types.VARCHAR);
consulta.registerOutParameter(3,
Types.VARCHAR);
consulta.execute();
Depto departamento = new Depto();
departamento.deptno=numero;
departamento.dname=consulta.getString(2);
departamento.loc=consulta.getString(3);
consulta.close ();
return departamento;
}
catch (SQLException e) {
System.out.println("error en la
consulta"+e.getMessage());
return null;
}
}
/* Esto solo
fue para probarlo independientemente
public static void
main(String[] args) throws ClassNotFoundException, SQLException{
AccesoBdatos abd=new
AccesoBdatos();
abd.conectar();
abd.insertar(60,
"Nombre60", "Localidad 60");
} */
}
Archivo ejemplo33a.html
<!DOCTYPE
html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Formulario para la introducción de los
datos</title>
</head>
<body>
<form action="ejemplo33b.jsp">
Departamento:<input
type="text" name="cod"
/>
Nombre:<input
type="text" name="nom"
/>
Localidad:<input
type="text" name="loc">
<input
type="submit" value="enviar"/>
</body>
</html>
Archivo ejemplo33b.jsp
<%@
page language="java"
contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1" %>
<!DOCTYPE
html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<jsp:useBean id="datos" scope="session"
class="paquetes.AccesoBdatos" />
<%
datos.conectar();
try {
datos.insertar(Integer.parseInt(request.getParameter("cod")),
request.getParameter("nom"),request.getParameter("loc"));
} catch (Exception e) { out.println("error en datos " + e.getMessage());
}
response.sendRedirect("ejemplo33a.html");
%>
</body>
</html>
Bases de datos. Consulta
Archivo Depto.java
package paquetes;
public class Depto {
public Depto(Integer deptno, String dname, String loc) {
super();
this.deptno = deptno;
this.dname = dname;
this.loc = loc;
}
Integer deptno; String dname;
String loc;
public Depto() {
}
public Integer getDeptno() {
return deptno;
}
public void setDeptno(Integer deptno) {
this.deptno = deptno;
}
public String getDname() {
return dname;
}
public void setDname(String dname) {
this.dname = dname;
}
public String getLoc() {
return loc;
}
public void setLoc(String loc) {
this.loc = loc;
}
}
Archivo AccesoBDatos.java
package paquetes;
import java.sql.*;
import java.util.ArrayList;
import java.util.Collection;
public class AccesoBdatos {
public Connection conecta;
public void conectar() throws SQLException,
ClassNotFoundException {
Class.forName("com.mysql.jdbc.Driver");
conecta = DriverManager.getConnection("jdbc:mysql://localhost:3306/demodb","root","");
}
public void insertar(Integer clave, String nombre, String localidad){
try {
String sql="insert into
dept values (?,?,?)";
PreparedStatement
inserta=conecta.prepareStatement(sql);
inserta.setInt(1,clave);
inserta.setString(2,nombre);
inserta.setString(3,localidad);
inserta.executeUpdate();
} catch(SQLException e){
System.out.println("error al
insertar en dept"+e.getMessage());
}
}
public void insertarConBean(Depto
registro){
try {
String sql="insert into
dept values (?,?,?)";
PreparedStatement
inserta =conecta.prepareStatement(sql);
inserta.setInt(1,registro.getDeptno());
inserta.setString(2,registro.getDname());
inserta.setString(3,registro.getLoc());
inserta.executeUpdate();
} catch(SQLException e){
System.out.println("error al
insertar en dept"+e.getMessage());
}
}
public Collection
consultarConBean(){
ArrayList
deptos = new ArrayList ();
try {
PreparedStatement
consulta = conecta.prepareStatement("SELECT * FROM
dept");
ResultSet reg = consulta.executeQuery ();
while (reg.next ()) {
Depto departamento = new Depto(
reg.getInt (1), reg.getString (2), reg.getString (3));
deptos.add(departamento);
}
consulta.close ();
} catch (SQLException e) {
return null;
} return deptos;
}
public Depto
consultarUno(int numero){
try {
PreparedStatement
consulta = conecta.prepareStatement("SELECT * FROM
dept WHERE deptno=?");
consulta.setInt(1, numero);
ResultSet reg = consulta.executeQuery ();
Depto departamento = new Depto();
if (reg.next ())
{
departamento.setDeptno(reg.getInt (1));
departamento.setDname(reg.getString(2));
departamento.setLoc(reg.getString(3));
}
consulta.close ();
return departamento;
}
catch (SQLException e) {
System.out.println("error en la
consulta"+e.getMessage());
return null;
}
}
public void actualizar(Depto
registro){
try {
String sql="update dept
set dname=?, loc=? where deptno=?";
PreparedStatement
actualiza = conecta.prepareStatement(sql);
actualiza.setString(1,registro.getDname());
actualiza.setString(2,registro.getLoc());
actualiza.setInt(3,registro.getDeptno());
actualiza.executeUpdate();
} catch(SQLException e){
System.out.println("error al
actualizar en dept"+e.getMessage());
}
}
public void bajas(int numero){
try {
PreparedStatement
consulta = conecta.prepareStatement("DELETE FROM
dept WHERE deptno=?");
consulta.setInt(1, numero);
consulta.executeUpdate();
consulta.close ();
} catch (SQLException e) {
System.out.println("error en la
consulta"+e.getMessage());
}
}
public int bajas2(int numero){
int filas=0;
try {
PreparedStatement
baja = conecta.prepareStatement("DELETE FROM
dept WHERE deptno=?");
baja.setInt(1, numero);
filas = baja.executeUpdate ();
baja.close ();
return filas;
} catch (SQLException e) {
System.out.println("error en la
consulta"+e.getMessage());
return 0;
}
}
public void llamaProc(Integer clave, String localidad){
try {
CallableStatement
actu = conecta.prepareCall("{call
actualizaDept(?,?)}");
actu.setInt(1,clave);
actu.setString(2,localidad);
actu.executeUpdate();
} catch (SQLException e) {
System.out.println("error en la
actualización"+e.getMessage());
}
}
public Depto
consultarUnoProc(int numero){ try {
CallableStatement
consulta = conecta.prepareCall("{Call
consultaDepar(?,?,?)}");
consulta.setInt(1, numero);
consulta.registerOutParameter(2,
Types.VARCHAR);
consulta.registerOutParameter(3,
Types.VARCHAR);
consulta.execute();
Depto departamento = new Depto();
departamento.deptno=numero;
departamento.dname=consulta.getString(2);
departamento.loc=consulta.getString(3);
consulta.close ();
return departamento;
}
catch (SQLException e) {
System.out.println("error en la
consulta"+e.getMessage());
return null;
}
}
/* Esto solo
fue para probarlo independientemente
public static void
main(String[] args) throws ClassNotFoundException, SQLException{
AccesoBdatos abd=new
AccesoBdatos();
abd.conectar();
abd.insertar(60,
"Nombre60", "Localidad 60");
} */
}
Archivo ejemplo35.java
<%@
page language="java"
contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1" import="java.util.*,paquetes.*"%>
<!DOCTYPE
html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<jsp:useBean id="datos" scope="session"
class="paquetes.AccesoBdatos" />
<jsp:useBean id="datosTabla" scope="session" class="paquetes.Depto"
/>
<%
datos.conectar();
Collection departamentos = datos.consultarConBean();
if (departamentos != null)
{
if (departamentos.size () > 0)
{
for (Iterator i = departamentos.iterator(); i.hasNext(); )
{
Depto departamento = (Depto) i.next ();
%>
<li> <%= departamento.getDeptno () %></li>
<li> <%= departamento.getDname () %></li>
<li> <%= departamento.getLoc() %></li>
<br><a>--------------------------------</a>
<%
}
}
}
%>
</body>
</html>
0 comments:
Publicar un comentario