Crud com JSP - Alunos
Página 1 de 1
Crud com JSP - Alunos
Caras, tentem fazer um crud aluno com jsp, utilizando jdbc para acessar o banco.
colocarei aqui um crud completo case queiram ver como se faz, deem uma estudada nas apostilas e qualquer coisa me liguem ou postem a duvida.
Tentem de toda forma conseguir fazer o crud, pesquisem na internet... enfim. Testem o código de voces caras, vou postar também umas aulas de jsp com jdbc bem legais, dá pra aprender bastante. ai vai
Aluno - Classe Java e Tabela Banco:
Classe de conexão com o banco:
Aluno dao:
Servlet de Controlle de Alunos:
Página jsp para cadastro de Alunos:
Página jsp de consulta de alunos
Página jsp de edicao de alunos:
colocarei aqui um crud completo case queiram ver como se faz, deem uma estudada nas apostilas e qualquer coisa me liguem ou postem a duvida.
Tentem de toda forma conseguir fazer o crud, pesquisem na internet... enfim. Testem o código de voces caras, vou postar também umas aulas de jsp com jdbc bem legais, dá pra aprender bastante. ai vai
Aluno - Classe Java e Tabela Banco:
- Código:
create table aluno( id serial not null primary key, nome varchar(50), idade integer, data_nascimento date);
- Código:
import java.util.Calendar;
public class Aluno {
private int id;
private String nome;
private int idade;
private Calendar dataNascimento;
public Aluno(){}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public int getIdade() {
return idade;
}
public void setIdade(int idade) {
this.idade = idade;
}
public Calendar getDataNascimento() {
return dataNascimento;
}
public void setDataNascimento(Calendar dataNascimento) {
this.dataNascimento = dataNascimento;
}
}
Classe de conexão com o banco:
- Código:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import org.postgresql.Driver;
public class FabricaConexoes {
private static final String URL = "jdbc:postgresql://localhost:5432/cadastros";
private static final String USUARIO = "postgres";
private static final String SENHA = "postgres";
public Connection getConnection(){
try {
DriverManager.registerDriver(new org.postgresql.Driver());
return DriverManager.getConnection(URL,USUARIO,SENHA);
} catch (SQLException e) {
// TODO Auto-generated catch block
throw new RuntimeException(e);
}
}
}
- Código:
package com.ronaldo.dao;
import java.util.List;
import com.ronaldo.model.Aluno;
public interface Dao {
//todos os metodos da interface são public;
void inserir(Aluno aluno);
void atualizar(Aluno aluno);
void remover(Aluno aluno);
Aluno pesquizarId(int Id);
List<Aluno> todos();
}
Aluno dao:
- Código:
import java.sql.Connection;
import java.sql.Date;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
import com.ronaldo.conexao.FabricaConexao;
import com.ronaldo.model.Aluno;
public class AlunoDao implements Dao{
private Connection con;
PreparedStatement ps;
ResultSet rs;
public AlunoDao() {
// TODO Auto-generated constructor stub
con = new FabricaConexao().getConection();
}
@Override
public void inserir(Aluno aluno) {
// TODO Auto-generated method stub
String insert = "Insert into Aluno (nome,idade,data_nascimento) values (?,?,?)";
try {
ps = con.prepareStatement(insert);
ps.setString(1, aluno.getNome());
ps.setInt(2,aluno.getIdade());
Date data = new Date(aluno.getDatanasc().getTimeInMillis());
ps.setDate(3, data);
ps.execute();
ps.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Override
public void atualizar(Aluno aluno) {
// TODO Auto-generated method stub
String atualiza = "Update Aluno set nome = ?, idade = ?, data_nascimento = ? where id = ?";
try {
ps = con.prepareStatement(atualiza);
ps.setString(1,aluno.getNome());
ps.setInt(2, aluno.getIdade());
Date data = new Date(aluno.getDatanasc().getTimeInMillis());
ps.setDate(3, data);
ps.executeUpdate();
ps.close();
} catch (Exception e) {
// TODO: handle exception
}
}
@Override
public void remover(Aluno aluno) {
// TODO Auto-generated method stub
String remove = "delete from Aluno Where id = ?";
try {
ps = con.prepareStatement(remove);
ps.setInt(1,aluno.getId());
ps.executeUpdate();
ps.close();
} catch (Exception e) {
// TODO: handle exception
}
}
@Override
public Aluno pesquizarId(int Id) {
// TODO Auto-generated method stub
Aluno aluno = new Aluno();
String pesquisa = "Selec * from Aluno where id = ?";
try {
ps = con.prepareStatement(pesquisa);
ps.setInt(1,Id);
rs = ps.executeQuery();
while (rs.next()){
aluno.setId(rs.getInt("id"));
aluno.setNome(rs.getString("nome"));
aluno.setIdade(rs.getInt("idade"));
Date data = rs.getDate("data_nascimento");
Calendar dt = Calendar.getInstance(); // Calendar é uma classe Abstrata
dt.setTime(data);
aluno.setDatanasc(dt);
}
ps.close();
rs.close();
return aluno;
} catch (Exception e) {
// TODO: handle exception
}
return null;
}
@Override
public List<Aluno> todos() {
// TODO Auto-generated method stub
List<Aluno> lista = new ArrayList<>();
String pesqLista = ("Select * from Aluno");
try {
ps = con.prepareStatement(pesqLista);
rs = ps.executeQuery();
while (rs.next()) {
Aluno aluno = new Aluno();
aluno.setId(rs.getInt("id"));
aluno.setNome(rs.getString("nome"));
Date data = rs.getDate("data_nascimento");
Calendar dt = Calendar.getInstance();
dt.setTime(data);
aluno.setDatanasc(dt);
lista.add(aluno);
}
ps.close();
rs.close();
return lista;
} catch (Exception e) {
// TODO: handle exception
}
return null;
}
}
Servlet de Controlle de Alunos:
- Código:
package com.dougllas.servlet.controller;
import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.dougllas.dao.AlunoDaoImpl;
import com.dougllas.model.Aluno;
/**
* Servlet implementation class AlunoController
*/
@WebServlet("/AlunoController")
public class AlunoController extends HttpServlet {
private static final long serialVersionUID = 1L;
@Override
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
String action = request.getParameter("action");
String pagina = "/consultaAlunos.jsp";
Aluno aluno = new Aluno();
if (!request.getParameter("id").equals("")
|| request.getParameter("id") != null) {
aluno.setId(Integer.parseInt(request.getParameter("id")));
}
aluno.setNome(request.getParameter("nome"));
aluno.setIdade(Integer.parseInt(request.getParameter("idade")));
try {
Calendar c = Calendar.getInstance();
Date dataNascimento = new SimpleDateFormat("dd/MM/yyyy")
.parse(request.getParameter("dataNascimento"));
c.setTime(dataNascimento);
aluno.setDataNascimento(c);
} catch (ParseException e) {
e.printStackTrace();
}
AlunoDaoImpl dao = new AlunoDaoImpl();
Aluno aluno = getParameters(request);
List<Aluno> alunos = new ArrayList<Aluno>();
switch (action) {
case "salvar":
dao.adicionar(aluno);
alunos = dao.getTodos();
break;
case "editar":
dao.atualizar(aluno);
alunos = dao.getTodos();
break;
case "deletar":
dao.remover(aluno.getId());
alunos = dao.getTodos();
break;
case "pesquisar":
aluno = dao.achar(aluno.getId());
alunos.add(aluno);
break;
}
request.setAttribute("alunos", alunos);
request.getRequestDispatcher(pagina).forward(request, response);
}
@Override
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
AlunoDaoImpl dao = new AlunoDaoImpl();
if (request.getParameter("action").equals("listar")) {
List<Aluno> alunos = dao.getTodos();
request.setAttribute("alunos", alunos);
request.getRequestDispatcher("consultaAlunos.jsp").forward(request,
response);
} else if (request.getParameter("action").equals("editando")) {
String id = request.getParameter("id");
int idAluno = Integer.parseInt(id);
Aluno aluno = dao.achar(idAluno);
request.setAttribute("aluno", aluno);
request.getRequestDispatcher("editandoAluno.jsp").forward(request,
response);
}
}
Página jsp para cadastro de Alunos:
- Código:
<%@page import="java.text.SimpleDateFormat"%>
<%@page import="com.dougllas.model.Aluno"%>
<%@page import="java.util.List"%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<!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>Cadastro Alunos</title>
<style type="text/css">
body {
font-family: sans-serif;
}
h1 {
font-size: 25px;
padding: 20px;
}
#top {
height: 80px;
background: black;
color: white;
margin-top: 50px;
}
#conteudo {
height: 300px;
margin-top: 10px;
}
#rodape {
font-size: 14px;
}
.botao {
background-color: #638cb5;
color: white;
border: 0;
height: 30px;
font-size: 14px;
}
.textfield {
border-radius: 20px;
}
table td{
border: 1;
padding: 5px;
}
.tabela{
font-size: 12px;
width: 50%;
}
.coluna{
background: silver;
font-weight: bold;
font-size: 14px;
}
ul{
background: aqua;
color: black;
font-weight: bold;
font-family: monospace;
padding: 20px;
height: 20px;
}
ul li{
display: inline;
padding: 20px;
}
</style>
</head>
<body>
<div id="top">
<h1>Cadastro de Alunos</h1>
</div>
<ul>
<li><a href="cadastroAlunos.jsp">Cadastrar Aluno</a><li>
<li><a href="AlunoController?action=listar">Consultar Aluno</a><li>
</ul>
<fieldset>
<div id="conteudo">
<form action="AlunoController" method="post">
<table>
<tr>
<td>Id:</td>
<td><input type="text" name="id" size="5"></td>
</tr>
<tr>
<td>Nome:</td>
<td><input type="text" name="nome" size="40"></td>
</tr>
<tr>
<td>Idade:</td>
<td><input type="text" name="idade" size="5"></td>
</tr>
<tr>
<td>Data Nascimento:</td>
<td><input type="text" name="dataNascimento" size="10">
</td>
</tr>
<tr>
<td colspan="4">
<input type="submit" name="action" value="salvar" class="botao">
<input type="submit" name="action" value="editar" class="botao">
<input type="submit" name="action" value="deletar" class="botao">
<input type="submit" name="action" value="pesquisar" class="botao">
</td>
</tr>
</table>
</form>
</div>
</fieldset>
<div id="rodape">
Dougllas WebSystems - Todos os direitos reservados
</div>
</body>
</html>
Página jsp de consulta de alunos
- Código:
<%@page import="java.io.IOException"%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@page import="java.text.SimpleDateFormat"%>
<%@page import="com.dougllas.model.Aluno"%>
<%@page import="java.util.List"%>
<!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>Consulta Alunos</title>
<style type="text/css">
body {
font-family: sans-serif;
}
h1 {
font-size: 25px;
padding: 20px;
}
#top {
height: 80px;
background: black;
color: white;
margin-top: 50px;
}
#conteudo {
height: 600px;
margin-top: 10px;
}
#rodape {
font-size: 14px;
}
.botao {
background-color: #638cb5;
color: white;
border: 0;
height: 30px;
font-size: 14px;
}
.textfield {
border-radius: 20px;
}
table td {
border: 1;
padding: 5px;
}
.tabela {
font-size: 12px;
width: 50%;
}
.coluna {
background: silver;
font-weight: bold;
font-size: 14px;
}
ul {
background: aqua;
color: black;
font-weight: bold;
font-family: monospace;
padding: 20px;
height: 20px;
}
ul li {
display: inline;
padding: 20px;
}
</style>
</head>
<body>
<div id="top">
<h1>Consulta Alunos</h1>
</div>
<ul>
<li><a href="cadastroAlunos.jsp">Cadastrar Aluno</a><li>
<li><a href="AlunoController?action=listar">Consultar Aluno</a><li>
</ul>
<fieldset>
<div id="conteudo">
<table border="2" class="tabela">
<tr>
<td class="coluna" align="center">Id</td>
<td class="coluna" align="center">Nome</td>
<td class="coluna" align="center">Idade</td>
<td class="coluna" align="center">Data Nascimento</td>
<td class="coluna" align="center">Editar</td>
</tr>
<%
@SuppressWarnings("unchecked")
List<Aluno> alunos = (List<Aluno>) request.getAttribute("alunos");
for(Aluno aluno : alunos){
%>
<tr>
<td>
<%out.println(aluno.getId());%>
</td>
<td>
<%out.println(aluno.getNome()); %>
</td>
<td>
<%out.println(aluno.getIdade()); %>
</td>
<td>
<%
out.println(new SimpleDateFormat("dd/MM/yyyy").format(aluno.getDataNascimento().getTime()));
%>
</td>
<td><a href="AlunoController?action=editando&id=<%out.println(aluno.getId()); %>">editar</a>
</td>
</tr>
<%} %>
</table>
</div>
</fieldset>
<div id="rodape">Dougllas WebSystems - Todos os direitos
reservados</div>
</body>
</html>
Página jsp de edicao de alunos:
- Código:
<%@page import="com.dougllas.dao.AlunoDaoImpl"%>
<%@page import="java.text.SimpleDateFormat"%>
<%@page import="com.dougllas.model.Aluno"%>
<%@page import="java.util.List"%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<!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>Cadastro Alunos</title>
<style type="text/css">
body {
font-family: sans-serif;
}
h1 {
font-size: 25px;
padding: 20px;
}
#top {
height: 80px;
background: black;
color: white;
margin-top: 50px;
}
#conteudo {
height: 300px;
margin-top: 10px;
}
#rodape {
font-size: 14px;
}
.botao {
background-color: #638cb5;
color: white;
border: 0;
height: 30px;
font-size: 14px;
}
.textfield {
border-radius: 20px;
}
table td {
border: 1;
padding: 5px;
}
.tabela {
font-size: 12px;
width: 50%;
}
.coluna {
background: silver;
font-weight: bold;
font-size: 14px;
}
ul {
background: aqua;
color: black;
font-weight: bold;
font-family: monospace;
padding: 20px;
height: 20px;
}
ul li {
display: inline;
padding: 20px;
}
</style>
</head>
<body>
<div id="top">
<h1>Editando Aluno</h1>
</div>
<ul>
<li><a href="cadastroAlunos.jsp">Cadastrar Aluno</a><li>
<li><a href="AlunoController?action=listar">Consultar Aluno</a><li>
</ul>
<fieldset>
<div id="conteudo">
<form action="AlunoController" method="post">
<%
Aluno aluno = (Aluno)request.getAttribute("aluno");
%>
<table>
<tr>
<td>Id:</td>
<td><input type="text" name="id" size="5"
value="<%=aluno.getId()%>"></td>
</tr>
<tr>
<td>Nome:</td>
<td><input type="text" name="nome" size="40"
value="<%=aluno.getNome()%>"></td>
</tr>
<tr>
<td>Idade:</td>
<td><input type="text" name="idade" size="5"
value="<%=aluno.getIdade()%>"></td>
</tr>
<tr>
<td>Data Nascimento:</td>
<td><input type="text" name="dataNascimento" size="10"
value="<%=new SimpleDateFormat("dd/MM/yyyy").format(aluno.getDataNascimento().getTime())%>">
</td>
</tr>
<tr>
<td><input type="submit" value="editar" name="action" class="botao"></td>
<td><input type="submit" name="action" value="deletar" class="botao"></td>
</tr>
</table>
</form>
</div>
</fieldset>
<div id="rodape">Dougllas WebSystems - Todos os direitos
reservados</div>
</body>
</html>
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|