Boa tarde,
Minha dúvida é como faço para que ao retornar por exemplo 60 imagens em uma tabela apareça 10 na primeira pagina JSP, e que seja criado o menu de navegação para as proximas paginas?
Muito obrigado pela ajuda…
Anderson
Boa tarde,
Minha dúvida é como faço para que ao retornar por exemplo 60 imagens em uma tabela apareça 10 na primeira pagina JSP, e que seja criado o menu de navegação para as proximas paginas?
Muito obrigado pela ajuda…
Anderson
Estou utilizando o servlet para criar a pagina…
Pesquisa sobre paginação
Então, cara… você precisa criar a paginação.
Tem alguns componentes que podem te ajudar com isso… mas posta aí o que tens até agora, pra gente saber que tipo de componente tu tá usando.
Aí fica mais fácil te ajudar.
Abraço!
Tem alguma referencia para paginação em JSP???
try {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
Usuario usuario = (Usuario)request.getAttribute("user");
out.print("<html>");
out.print("<head><title>Consulta Usuario</title></head>");
out.print("<body>");
out.print("<h1>Dados Cadastrados</h1>");
int cont=0;
for(int i=0;i<nomes.size();i++){
cont = cont+1;
out.print("<table border=0>");
out.print("<tr>");
out.print("<td>Figura : </td><td>"+ "<img src=" + recuperaImagemDiretorio(nome,"/EscolaGlobalCodeUpload/logo/"+ nomes.get(i))+ " alt=\"Angry face\" WIDTH=102 HEIGHT=135 />"+ "</td>");
out.print("</tr>");
out.print("<tr>");
out.print("<td>IdUsuario : </td><td>"+ a.getId() + "</td>");
out.print("</tr>");
out.print("<tr>");
out.print("<td>IdImovelImagem : </td><td>"+ cont + "</td>");
out.print("</tr>");
out.print("<tr>");
out.print("<td>Nome : </td><td>" + a.getNome() + "</td>");
out.print("</tr>");
out.print("<tr>");
out.print("<td>E-mail : </td><td>" + a.getEmail() + "</td>");
out.println("</tr>");
out.println("<tr>");
out.println("<td>Telefone : </td><td>" + a.getTelefone() + "</td>");
out.println("</tr>");
out.println("<tr>");
out.println("<td>Endereço : </td><td>" + a.getEndereco() + "</td>");
out.println("</tr>");
out.println("<tr>");
out.println("<br><td>Local do Arquivo : </td><td>" + arrCaminho.get(i) + "</td>");
out.println("</tr>");
out.println("</table>");
}
out.println("</body>");
out.println("</html>");
out.close();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//remover nomes.clear qd quiser trazer tudo que esta na base.
nomes.clear();
}
Tem aqui e no http://www.google.com.br
Valeu leoramos… vou pesquisar…
Onde devo implementar a paginação???
Segue meu codigo.
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Academia </title>
</head>
<body>
<form name="formConsultaUsuario" method="post" action="BuscaImagens">
<h2>Digite o idImovel que deseja consultar</h2>
<p>IdImovel : <input type="text" name="textNome"></p>
<p><input type="submit" value="Consultar"></p>
</form>
</body>
</html>
package br.com.globalcode.servlets;
import java.io.*;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.servlet.*;
import javax.servlet.http.*;
import br.com.globalcode.util.Imagens;
import br.com.globalcode.util.Usuario;
public class BuscaImagens extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException,IOException{
doAction(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException,IOException{
doAction(request, response);
}
public void doAction(HttpServletRequest request, HttpServletResponse response)throws ServletException,IOException{
String nome = request.getParameter("textNome");
Connection con = null;
try
{
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost/brasilcloud","root","XX");
Statement stm = con.createStatement();
ResultSet rs = stm.executeQuery("select count(*) from imovel_imagens WHERE idImovel = '" +nome+ "'");
rs.next();
int count = rs.getInt(1);
Imagens[] usuarios = new Imagens[count];
String SQL = ("SELECT id_ImovelImagem, idImovel, imagem from imovel_imagens WHERE idImovel = '" +nome+ "' ");
rs = stm.executeQuery(SQL);
int count2=0;
while(rs.next())
{
String idImovelImagem = rs.getString("id_ImovelImagem");
String idImovel = rs.getString("idImovel");
String caminhofoto = rs.getString("imagem");
Imagens imagem = new Imagens(idImovelImagem,idImovel,caminhofoto);
usuarios[count2] = imagem;
count2++;
//System.out.println(id + " " + name);
}
if (count==0){
RequestDispatcher rd1 = request.getRequestDispatcher("/ExibeNadaEncontrado");
rd1.forward(request, response);
}
else{
request.setAttribute("users", usuarios);
RequestDispatcher rd = request.getRequestDispatcher("listaimagens.jsp");
rd.forward(request, response);
}
}
catch(SQLException e)
{
// se houve algum erro, uma exceção é gerada para informar o erro
e.printStackTrace(); //vejamos que erro foi gerado e quem o gerou
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally
{
try
{
con.close();
}
catch(SQLException onConClose)
{
System.out.println("Houve erro no fechamento da conexão");
onConClose.printStackTrace();
}
}
}
}
<%@ page import="br.com.globalcode.util.Usuario"%>
<%
Imagens[] usuarios = (Imagens[])request.getAttribute("users");
%>
<%@page import="java.io.File"%>
<%@page import="br.com.globalcode.util.Imagens"%><html>
<head>
<title>Usuário</title>
</head>
<body>
<%
File arquivos = new File(request.getRealPath("logo"));
String lista[] = arquivos.list();
%>
Quantidade encontrada: <%=usuarios.length%>
<%for(int i=0; i<usuarios.length; i++){%>
<table border="1" width=20%>
<% String caminhonovo = usuarios[i].getCaminhoFoto();%>
<% String idImovel = usuarios[i].getidImovel();%>
<tr>
<td>Foto:</td>
<td><a href="ServletDetalhes?idImovel=<%=idImovel%>"><img src="<%=caminhonovo%>" WIDTH=202 HEIGHT=235 /></a></td>
</tr>
<tr>
<td>idImovel:</td>
<td><%=usuarios[i].getidImovel()%></td>
</tr>
<tr>
<td>idImovelImagem:</td>
<td><%=usuarios[i].getIdImovelImagem()%></td>
</tr>
<tr>
</table>
<br>
<%}%>
</body>
</html>
Consegui…
Para quem um dia precisar como eu…Pagina Jsp
<%@ page language="java" import="java.sql.*" errorPage="" %>
<%
int limitePorPagina = 1;
String idbusca= "1";
String pr1 = request.getParameter( "pr" );
try{
Class.forName( "com.mysql.jdbc.Driver" ).newInstance();
}
catch( Exception ex ){
out.write( "Não carregou o Driver: " + ex.toString() );
}
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/brasilcloud","root","XX");
PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM imovel_imagens WHERE idimovel = '" +idbusca+ "' LIMIT " + pr1 + "," + String.valueOf( limitePorPagina ) );
PreparedStatement pstmt2 = conn.prepareStatement("SELECT count(*) as c FROM imovel_imagens WHERE idimovel = '" +idbusca+ "'");
ResultSet resultado = pstmt.executeQuery();
ResultSet rs2 = pstmt2.executeQuery();
rs2.next();
int totalregs = Integer.parseInt( rs2.getString( "c" ) );
int totalpgs = Math.round( totalregs / limitePorPagina );
if( ( totalregs % limitePorPagina ) > 0 ) totalpgs++;
int pr = Integer.parseInt( request.getParameter( "pr" ) );
%>
Resultado da Busca <%=totalregs%> registros
<%
while( resultado.next() ){
String id = resultado.getString( "imagem" );
String nm = resultado.getString( "dataatual" );
%>
<table border=1 bordercolor="black">
<tr><td width="300" align="center"><img src="<%=id%>" WIDTH=202 HEIGHT=235 /></td></tr>
<tr><td width="300">
<%=nm%>
</td>
</tr>
</table>
<br>
<% }%>
<% if( pr > 0 ){%>[<a href="?pr=0">Primeira Página</a>][<a href="?pr=<%=pr-limitePorPagina%>">Anteriores</a>]<%
}%><% if( pr < ( totalpgs * limitePorPagina ) - limitePorPagina ){
%>[<a href="?pr=<%=pr+limitePorPagina%>">Próximo</a>]
[<a href="?pr=<%=( totalpgs * limitePorPagina ) - limitePorPagina%>">Ultima</a>] <%
}%>
Como faria para que em vez de anterior e proximo, aparecece a numeração, parecida com o Google???