CRUD Com JSP e Servlet - Clientes
CRUD Com JSP e Servlet - Clientes
CRUD Com JSP e Servlet - Clientes
Tabela:Cliente
CREATETABLEcliente(
idMEDIUMINTNOTNULLAUTO_INCREMENT,
nomeCHAR(30)NOTNULL,
PRIMARYKEY(id)
)ENGINE=MyISAM
INSERTINTOcliente(nome)VALUES
('Silvio'),('Joo'),('Maria'),
('Joaquim'),('Maria'),('Vinicius')
SELECT*FROMcliente
1MySql
Bancodedados
2JSP
Pgm.JSP
<%
Comandos.
%>
3Servlet
Pgm.JAVA
RetornaasrequisiesdeumJSPouHTML
CRUDcomJSPeServlet+MySQL+NetBeans
Configuraoinicial
1.
2.
CriarumnovoProjetoJavaWeb...
Resultado:
3.
3.1
Adicionar
Biblioteca...
Resultado:
Implementaodosistema
2.1
AgoracriaremosaClasseJavadenome(Cliente)nopacote
(modelo)...
Resultado:
2.2
Criarcdigodoatributoseosgettersesetters...
3.
Agora criaremos a Classe Java de nome(Conexao)nopacote
(dao)seguindoosmesmopassosdoitem4.2...
Resultado:
3.1
Criarcdigodoconstrutor,mtodoqueserresponsvelpor
criar,abrirefecharaconexocomoBancodeDados...
Agora criaremos a Classe Java de nome (ClienteDAO) no pacote
(dao)seguindoosmesmopassosdoitem4.2
Resultado:
2.
Criar o cdigo dos mtodos
public String inserir(Categoria categoria)
que
packagedao
importjava.sql.ResultSet
importjava.sql.SQLException
importjava.sql.Statement
importjava.util.ArrayList
importjava.util.List
importmodelo.Cliente
publicclassClienteDao{
publicStringinserir(Clientecliente){
Stringretorno="falha"
Conexaoconn=newConexao()
try{
Statementstmt=(Statement)conn.getConn().createStatement()
stmt.execute("insertintocliente(nome)values('"+cliente.getNome()+"')")
retorno="sucesso"
}catch(Exceptione){
e.printStackTrace()
}finally{
conn.fecharConexao()
}
returnretorno
publicStringalterar(Clientecliente){
Stringretorno="falha"
Conexaoconn=newConexao()
try{
Statementstmt=(Statement)conn.getConn().createStatement()
stmt.execute("updateclientesetnome='"+cliente.getNome()+"'where
id="+cliente.getIdCliente())
retorno="sucesso"
}catch(Exceptione){
e.printStackTrace()
}finally{
conn.fecharConexao()
}
returnretorno
}
publicStringremover(intid){
Stringretorno="falha"
Conexaoconn=newConexao()
try{
Statementstmt=(Statement)conn.getConn().createStatement()
stmt.execute("deletefromclientewhereid="+id)
retorno="sucesso"
}catch(Exceptione){
e.printStackTrace()
}finally{
conn.fecharConexao()
}
returnretorno
publicList<Cliente>listar(){
List<Cliente>clientes=newArrayList<Cliente>()
Conexaoconn=newConexao()
try{
Statementstmt=(Statement)conn.getConn().createStatement()
ResultSetrs=stmt.executeQuery("select*fromcliente")
while(rs.next()){
Clientecliente=newCliente()
cliente.setIdCliente(rs.getInt("id"))
cliente.setNome(rs.getString("nome"))
clientes.add(cliente)
}
}catch(SQLExceptione){
e.printStackTrace()
}finally{
conn.fecharConexao()
}
returnclientes
}
publicList<Cliente>acharCliente(intid){
List<Cliente>clientes=newArrayList<Cliente>()
Conexaoconn=newConexao()
try{
Statementstmt=(Statement)conn.getConn().createStatement()
ResultSetrs=stmt.executeQuery("select*fromclientewhereid="+id)
if(rs.next()){
Clientecliente=newCliente()
cliente.setIdCliente(rs.getInt("id"))
cliente.setNome(rs.getString("nome"))
clientes.add(cliente)
}
else
{
Clientecliente=newCliente()
cliente.setIdCliente(99)
clientes.add(cliente)
}
}catch(SQLExceptione){
e.printStackTrace()
}finally{
conn.fecharConexao()
}
returnclientes
3.
Agora criaremos um Servlet de nome (InserirCliente) no
Resultado:
4.
AgoracriaremosocdigodomtodoPostdentrodoServlet...
VamoscriarnapastaPginasWebapgina.JSPdenome
(InserirCliente)parainserironome...
Resultado:
1.2
Ocdigoaseguirapenasimplementaacriaodoform...
Ainda na pasta Pginas Web, vamos criar a pgina inicial
chamada (index.jsp) da mesma forma que criamos
(InserirCliente.jsp)doitem8.
Resultado:
<body>
<h1>ManutenoCadastrodeClientes</h1>
<%
ClienteDaodao=newClienteDao()
List<Cliente>clientes=dao.listar()
%>
<tableborder="2">
<thead>
<tr>
<th>Cdigo</th>
<th>Nome</th>
<th>Operao</th>
</tr>
</thead>
<tbody>
<tr><%
for(inti=0i<clientes.size()i++){
Clientecliente=clientes.get(i)%>
<td>
<%out.print(cliente.getIdCliente())
%>
</td>
<td>
<%out.print(cliente.getNome())%>
</td>
<td>
<ahref="InserirCliente.jsp">
<IMGborder="0"src="imagens/incluir.GIF"alt="Incluir"></a>
<ahref="AlterarCliente.jsp?idCliente=<%out.print(cliente.getIdCliente())
%>">
<IMGborder="0"src="imagens/editar.gif"alt="Alterar"></a>
<ahref="RemoverCliente?idCliente=<%out.print(cliente.getIdCliente())
%>">
<IMGborder="0"src="imagens/exclui.gif"alt="Remover"></a>
</td>
</tr>
<%}
%>
</tbody>
</table>
</body>
Resultado:
ImplementandooRemover...
publicStringremover(intid){
Stringretorno="falha"
Conexaoconn=newConexao()
try{
Statementstmt=(Statement)conn.getConn().createStatement()
stmt.execute("deletefromclientewhereid="+id)
retorno="sucesso"
}catch(Exceptione){
e.printStackTrace()
}finally{
conn.fecharConexao()
}
returnretorno
Dentrodopacote(controle)crieoarquivoServletdenome
(removerCliente.java)damesmamaneiradoitem8.daParteI.
Resultado:
1.3
ImplementeomtododoPostcomoseguintecdigo: