Mostrando entradas con la etiqueta JSP. Mostrar todas las entradas
Mostrando entradas con la etiqueta JSP. Mostrar todas las entradas

sábado, 6 de marzo de 2010

Exportar de JSP a Excel (Table to Excel Java)

Una Forma rápida y fácil de obtener un excel a partir de un jsp puede ser de la siguiente manera:
Sólo agregando en la cabecera del documento

    response.setContentType ("application/vnd.ms-excel");
    response.setHeader ("Content-Disposition", "attachment;filename=\"report.xls\"");



Podemos comprenderlo mejor con el siguiente Ejemplo.


<%@ page language="java" contentType="text/html; charset=ISO-8859-1"

    pageEncoding="ISO-8859-1"%>

<%

    response.setContentType ("application/vnd.ms-excel"); //Tipo de fichero.

response.setHeader ("Content-Disposition", "attachment;filename=\"report.xls\"");

%>

<!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="1">

<TR>

<TH>CICLO</TH>

<TH>CODIGO</TH>

<TH>APELLIDOS Y NOMBRES</TH>

</TR>

<TR>

 <TD>1</TD>

   <TD>12233</TD>

   <TD>JocLuis</TD>

</TR>



</TABLE>

</body>

</html>

jueves, 3 de julio de 2008

Java 2 - Sesión 5

Conexión a Base de datos Oracle

En esta parte aprenderemos como conectarnos a la base de datos oracle desde java claro esta.Despues de haber instalado tu oracle segun las instrucciones anteriores o como lo hubieras instalado.
Primero tengamos unas consideraciones generales.

1.-Descarga el driver para poder habilitar el puerto de comunicación de Oracle y java.Aquí te lo dejo para que no lo estes buscando.(solo descomprimelo)
2.-Aca tendras que elegir conseguir tu IP o tu verdadero nombre de administrador.Esto es para poder poner la cadena de conexión de oracle desde java.
Tu ip lo puedes sacar haciendo ejecutar(ctrl+r) y escribiendo IPCONFIG el primer ip que te salga ese copialo es muy importante para la conexión.
Si no te inclunas por la opcion del IP puedes tambien tener tu nombre de Administrador de tu computadora que es el primero que le ponemos a nuestra computadora cuando instalamos windows xp.Lo puedes obtener haciendo esto rapidamente.
Presiona ahora "Windows+L" (con esa opcion sales de la cuenta que estas).
Luego presiona dos veces "ctrl+alt+supr" y te saldra un nombre adminsitrador haces aceptar y entras a otro escritorio donde tienes que saber como se llama tu administrador poniendo en inicio.En mi caso mi nombre de administrador me salio JOCLUIS.

Bueno despues de estas configuraciones describamos la cadena de conexion que es muy importante.

"jdbc:oracle:thin:@jocluis:1521:jocluis","system","jocluis"

Lo de rojo es el nombre del Administrador o tambien aca pueden poner en vez del nombre el IP de su computadora.
Lo de azul es el puerto de comuncación.Solo hay que dejarlo en 1521 es general.
Lo de negro es el nombre de la Base de datos de oracle,cuando instalamos oracle ponemos un nombre al inicio no olvidar ese nombre es importante.
Los de celeste ,el primero es el Usuario que en este caso es system y el otro y ultimo es la contraseña.

Primero instalemos o hubiquemos el Driver que hemos descargado.

-Nos vamos donde estan los nombres de los proyectos a cualquiera le hacemos click derecho Properties.Como muestra la imagen.
-Luego nos sale el siguiente cuadro.Poner en libraries (como se muetra) y poner en Add Jar/folder.Lo hubicamos donde esta el driver y aceptamos.
Bueno juguemos con la tabla de ejemplo de Oracle Llama CATALOG.

Ejemplo 1:Reporte de tabla Catalog de Oracle.


Abrimos un JSP y copiamos el siguiente codigo que es masomenos similar con el que hemos trabajado anteriormente.Claro con su propia cadena de conexion xD.


Código:

<html>
<head>

<title>Reporte de CATALog</title>
</head>
<body>
<h2>Conexion a Oracle</h2>
<table>
<%@ page import="java.sql.*"%>
<%
Connection con;
Statement sen;
ResultSet res;
Class.forName("oracle.jdbc.driver.OracleDriver");
con=java.sql.DriverManager.getConnection("jdbc:oracle:thin:@jocluis:1521:jocluis","system","jocluis");
sen=con.createStatement();
res=sen.executeQuery("Select * from catalog");

while(res.next()){
%>
<tr>
<td><%=res.getString(1)%></td>
<td><%=res.getString(2)%></td>
<td><%=res.getString(3)%></td>

</tr>
<%
}
con.close();
%>
</table>

</body>
</html>


La salida es la siguiente:

Cave rescatar (asi no se escribe pero asi escribo yo xD) que solo hemos cambiado la cadena de conexion que usabamos antes luego lo demas es similar.
Podemos notar como me habian dicho como haria una busqueda.Solo crearia dos JSP y en una haria el formulario de busqueda que un FORM y este invocaria al otro JSP con la misma estructura de arriba pero con un IF comparador adnetro de este.

domingo, 22 de junio de 2008

Java 2 - Sesión 4

Conexion a base de datos desde un JSP


Como habiamos tratado en la clase anterior,dentro de un JSP podemos poner codigo java.
En este caso teniendo un poco de logica sabemos si ponemos los ejemplos de la clase conexion con Access y con SQL,dentro de un JSP lo visualremos mediente una pagina web.Propongamos un primer ejemplo para entender mejor lo que queremos decir.

Ejemplo 1:Trabjar con base de datos en un JSP

Primero haremos para Access:

Código:


<%--
Document : index
Created on : 22-june-2008, 8:30:59
Author : jocluis
--%>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Reporte de empleados</title>
</head>
<body>
<h2>Empleados</h2>
<table>
<%@ page import="java.sql.*"%>
<%
Connection con;
Statement sen;
ResultSet res;
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con=DriverManager.getConnection("jdbc:odbc:base1");
sen=con.createStatement();
res=sen.executeQuery("select * from Productos");

while(res.next()){
%>
<tr>
<td><%=res.getString(1)%></td>
<td><%=res.getString(2)%></td>
<td><%=res.getString(3)%></td>

</tr>
<%
}
con.close();
%>
</table>

</body>
</html>


Cave rescatar:
Notamos que podemos mezclar cuantas veces querramos codigos java y html(jsp).Siempre y cuando pongamos <% y %> en la codificacion java.

De igual forma podemos hacerlo para el caso con SQL:

Ojo:Los pasos de activar los driver deben acerlo igual que el post anterior.
El codigo seria el siguiente.

Código:

<html>
<head>

<title>Reporte de Productos de SQL</title>
</head>
<body>
<h2>Productos</h2>
<table>
<%@ page import="java.sql.*"%>
<% Connection con; Statement sen; ResultSet res; Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); con=java.sql.DriverManager.getConnection("jdbc:odbc:z"); sen=con.createStatement(); res=sen.executeQuery("Select * from Products"); while(res.next()){ %>
<tr>
<td><%=res.getString(1)%></td>
<td><%=res.getString(2)%></td>
<td><%=res.getString(3)%></td>

</tr>
<%
} con.close(); %>
</table>

</body>
</html>


La salida es la siguiente:


En la otra sesión entraremos a un breve concepto de base de datos con oracle y aprenderemos tratandolas en un jsp como y como una clase.

miércoles, 18 de junio de 2008

Java 2 - Sesión 3

Introducción a JSP

Ahora en esta sección veremos aplicaciones basadas en jsp(Java Server Pages) que es tratada para laaplicación de paginas web.
El código JSP se puede poner dentro de las páginas HTML, o se puede precompilar en Servlets (programas en Java también pueden ser compilados en Servlets). Un servlet es una subclase de servlet que tiene métodos para atender requerimientos. El servidor pasa las variables hacia y desde el ambiente de ejecución del Servlet.

Procedimientos para su manejo:
Primero veamos refrente al compilador de jsp en NetBeans.
GlassFish es el compilador que nos trae NetBeans por defecto cuando hacemos la descarga,luego al instalar el programa nos sale el siguiente cuadro en el momento de la instalación,esto es muy importante puesto que la primera vez que compilemos un jsp nos pedira la contraseña que por defecto es adimadmin como habia dicho en un post anterior de instalación de NetBeans.


Bueno losque cambiaron la contraseña y se olvidaron existe laalternativa de desistalar NetBeans y despues volverlo a instalar y poner la contraseña o dejarla por defecto.

Ejemplo 1:Hello World! en JSP

Abrimos un New Project y al lado izquierdo elegimos Web y alotrolado Web Application.

Le ponemos el nombre que querramos en este caso le pongo el nombre Sesion3.Y no aparece por defecto el siguiente codigo.Lo compilamos (Shit+F6).

Código:


<%--
Document : index
Created on : 18-jun-2008, 20:01:42
Author : gaucho
--%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!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=UTF-8">
<title>JSP Page</title>
</head>
<body>
<h2>Hello World!</h2>
</body>
</html>

Alcompilar nos saldra un cuadro de que nos pedira la contraseña que pusismos cuando instalamos NetBenas como lo habiamos dicho arriba y lluego mostrará.


Ejemplo 2:Llamar un JSP desde otro JSP


Aqui veremos multiples ejemplos de trabajar con JSP.
1.-Checkbox:
Abrimos un JSP por ejemplo dentro de sesion3(para esto ponemos clic derecho en el mundito de sesion3 y Ponemos en New>>JSP,y lo llamamos como querramos,borramos el codigo que nos sale por defecto y copiamos el siguiente.)

Código:

<html>
<head>
<title>aplicacion jsp 1</title>
</head>
<body>
<form action ="detalles2.jsp" method="post">
que productos aduirio el ultimo mes

<input type="checkbox" value="cds" name="articulos">CDs
<input type="checkbox" value="dvd" name="articulos">DVD
<input type="checkbox" value="libros" name="articulos">libros
<input type="submit" value="seleccionar">
</form>
</body>
</html>

A continuación abrimos otro JSP dentro de sesion3 y copiamos el siguiente codigo.
Ojo:tenemos que llamarlo necesariamente detalles2 ,puesto que con este nombre estamos mencionando en el jsp que lo vamos invocar el siguiente codigo.

Código:

<html>
<head>
<title>Detalles2</title>
</head>
<body>
<%
String x[]=request.getParameterValues("articulos");
if(x!=null){
for(int i=0;i<x.length;i++){
out.println(x[i]+"<BR>");
}
}else{
out.println("no selecciono producto alguno");
}
%>
</body>
</html>
Cave rescatar:
En el primer codigo:
Lo puesto de color negro son los nombres necesarios de cada archivo que tenemos que asignar.
Lo de rojo es un metodo que nos permite la impresion en otra hoja de jsp.
Lo de azul es el codigo para implementar las selección o check.
Lo de verde es el codigo que nos dice seleccionar.
En el segundo codigo:
Dentro de nuestro JSP hemos utilizado lenguaje java pero dentro de <% y %>
Salida.
Probamos nuestra seleccion y ponemos seleccionar y nos saldra el nombre del seleccionado, aqui podemos implementar mas cosas como una encuesta etc.


2.-Select:




Código:

<html>
<head>
<title>titulo</title>
</head>
<body>
<h1>pagina maestro</h1>
<form action="detalles3.jsp" method="post">
<select name="lista">
<option value=1>java
<option value=2>.net
<option value=3>power Builder
</select>
<input type="submit" value="ver detalles">
</form>
</body>
</html>


Ojo:tenemos que llamarlo al siguiente codigo necesariamente detalles3 ,puesto que con este nombre estamos mencionando en el jsp que invocamos en el jsp anterior(codigo de arriba).

Código:

<html>
<head>
<title>Detalles</title>
</head>
<body>
<%
int x=Integer.parseInt(request.getParameter("lista"));
if(x==1){
out.println("titulo:1001 tips para java");
out.println("precio:$20");
out.println("empresa:sun");
}else if(x==2){
out.println("titulo:la biblia.net");
out.println("precio:$17");
out.println("empresa:Microsoft");
}
%>
</body>
</html>


Ejemplo 3:Formulario en JSP


Ahora haremos un simple formulario en JSP pero como no queremos que nuestra contraseña y usuario se mantenga en un mismo JSP,utilizaremos otro para validar.


Abrimos un JSP y lo nombramos con cualquier nombre(Ejm formulario) y asiganamos el siguiente codigo.

Código:

<HTML>
<HEAD>
<TITLE>FORMULARIO DE ACCESO</TITLE>
</HEAD>
<BODY>
<FORM ACTION="detalles4.jsp" METHOD="POST">
<TABLE><TBODY>
<TR>
<TD>USUARIO</TD>
<TD><input name="usu" value="" type="text"></TD>
</TR>
<TR>
<TD>CONTRASEÑA
<TD><input name="con" value="" type="password"></TD>
</TR>
<TR>
<TD>
<input value="INGRESAR" type="submit">
</TD>
<TD></TD>
</TR>
</TBODY>
</TABLE>
</FORM>
</BODY>
</HTML>



Ojo:tenemos que llamarlo al siguiente codigo necesariamente detalles4 ,puesto que con este nombre estamos mencionando en el jsp que invocamos en el jsp anterior(codigo de arriba).

Código:

<HTML>
<HEAD>
<TITLE>REPORTE </TITLE>
</HEAD>
<BODY>
<%
String a=request.getParameter("usu");
String b=request.getParameter("con");
if(a.equals("jocluis") && b.equals("jocluis")){
%>
<h2>Reporte</h2>
Bienvenido <%=a%>

<a href="http://www.yahoo.com">entrar</a>
<%
}else{
%>
<h2>error usuario no registrado</h2>
<a href="formulario.jsp">volver</a>
<%}
%>
</body>
</html>

Fin.Tercera sesión.