Buscar

PosGraduacaoProjetoImplementacaoDeOO

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/.classpath
 
	 
		 
			 
			 
		
	
	 
	 
	 
	 
	 
	 
	 
		 
			 
		
	
	 
		 
			 
		
	
	 
		 
			 
		
	
	 
	 
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/.gitignore
/build/
/target/
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/.project
 
	 com.pos.pioo
	 
	 
	
	 
		 
			 org.eclipse.wst.jsdt.core.javascriptValidator
			 
			
		
		 
			 org.eclipse.jdt.core.javabuilder
			 
			
		
		 
			 org.eclipse.wst.common.project.facet.core.builder
			 
			
		
		 
			 org.eclipse.wst.validation.validationbuilder
			 
			
		
		 
			 org.eclipse.m2e.core.maven2Builder
			 
			
		
	
	 
		 org.eclipse.m2e.core.maven2Nature
		 org.eclipse.jem.workbench.JavaEMFNature
		 org.eclipse.wst.common.modulecore.ModuleCoreNature
		 org.eclipse.wst.common.project.facet.core.nature
		 org.eclipse.jdt.core.javanature
		 org.eclipse.wst.jsdt.core.jsNature
	
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/.settings/.jsdtscope
 
	 
	 
	 
		 
			 
		
	
	 
	 
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/.settings/org.eclipse.jdt.core.prefs
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
org.eclipse.jdt.core.compiler.source=1.7
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/.settings/org.eclipse.m2e.core.prefs
activeProfiles=
eclipse.preferences.version=1
resolveWorkspaceProjects=true
version=1
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/.settings/org.eclipse.wst.common.component
 
 
 
 
 
 
 
 
 
 
 
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/.settings/org.eclipse.wst.common.project.facet.core.xml
 
 
 
 
 
 
 
 
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/.settings/org.eclipse.wst.jsdt.ui.superType.container
org.eclipse.wst.jsdt.launching.baseBrowserLibrary
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/.settings/org.eclipse.wst.jsdt.ui.superType.name
Window
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Domain/domain/Anunciante.java
package domain;
import java.util.Date;
public class Anunciante extends Entidade {
	private String nome;
	private String documento;
	private String endereco;
	private String cidade;
	private String telefone;
	private Date dataCriacao;
	
	protected Anunciante()
	{
		super();
	}
	
	public Anunciante(String nome, String documento, String endereco, String cidade, String telefone)
	{
		super();
	
		super.naoDeveSerVazio(nome, "Nome deve ser informado!");
		super.naoDeveSerVazio(documento, "Documento deve ser informado!");
		super.naoDeveSerVazio(endereco, "Endereço deve ser informado!");
		super.naoDeveSerVazio(cidade, "Cidade deve ser informada!");
		super.naoDeveSerVazio(telefone, "Telefone deve ser informado!");
		
		this.nome = nome;
		this.documento = documento;
		this.endereco = endereco;
		this.cidade = cidade;
		this.telefone = telefone;	
		this.setDataCriacao(new Date());
	}
	
	public String getNome() {
		return nome;
	}
	public String getDocumento() {
		return documento;
	}
	public String getEndereco() {
		return endereco;
	}
	public String getCidade() {
		return cidade;
	}
	public String getTelefone() {
		return telefone;
	}
	
	public Date getDataCriacao() {
		return dataCriacao;
	}
	public void setDataCriacao(Date dataCriacao) {
		this.dataCriacao = dataCriacao;
	}
	
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Domain/domain/Anuncio.java
package domain;
import java.util.Date;
public class Anuncio extends Entidade {
	private Date dataCriacao;
	private Date dataValidade;
	private Categoria categoria;
	private Anunciante anunciante;
	
	protected Anuncio()
	{
		super();
	}
	
	public Anuncio(Categoria categoria, Anunciante anunciante, Date dataValidade) {
		super();
		
		super.adicionarMensagens(categoria.obterMensagens());
		super.adicionarMensagens(anunciante.obterMensagens());		
		super.deveSerMaiorQue(dataValidade, new Date(), "Data de validade deve ser maior do que a data atual");
		
		this.setDataCriacao(new Date());
		this.categoria = categoria;
		this.anunciante = anunciante;
		this.dataValidade = dataValidade;	
		
	}
	public Date getDataCriacao() {
		return dataCriacao;
	}
	public Date getDataValidade() {
		return dataValidade;
	}
	public Categoria getCategoria() {
		return categoria;
	}
	public Anunciante getAnunciante() {
		return anunciante;
	}
	
	public void setDataCriacao(Date dataCriacao) {
		this.dataCriacao = dataCriacao;
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Domain/domain/Categoria.java
package domain;
public class Categoria extends Entidade {
	private String nome;
	
	public Categoria(String nome)
	{
		super();
		super.naoDeveSerVazio(nome, "Nome da categoria deve ser informado!");
		this.nome = nome;		
	}
	
	public String getNome() {
		return this.nome;
	}
	
	
	
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Domain/domain/Entidade.java
package domain;
import java.util.UUID;
import fluent.Validacao;
public abstract class Entidade extends Validacao {
	private ID id;
	private boolean novoRegistro;
	public Entidade() {
		super();
		this.setId(ID.randomUUID());
		this.novoRegistro = true;
		
	}
	private void setId(ID valor) {
		this.novoRegistro = false;
		this.id = valor;
	}
	public void setId(String valor)
	{
		this.novoRegistro = false;
		this.id = ID.fromString(valor);	
	}
	public String getId()
	{
		return id.toString();
	}
	
	public boolean isNovoRegistro() {
		return novoRegistro;
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Domain/domain/Usuario.java
package domain;
public class Usuario extends Entidade {
	private String nome;
	private String login;
	private String senha;
	public Usuario(String login, String senha)
	{
		super();
		naoDeveSerVazio(login, "Login deve ser informado");
		naoDeveSerVazio(senha, "Senha deve ser informado");
		
		
		this.login = login;
		this.senha = senha;	
	}
	public Usuario(String nome, String login, String senha)
	{
		super();
		
		naoDeveSerVazio(nome, "Nome deve ser informado");
		naoDeveSerVazio(login, "Login deve ser informado");
		naoDeveSerVazio(senha, "Senha deve ser informado");
		
		this.nome = nome;		
		this.login = login;
		this.senha = senha;
	}
	public void setSenha(String senha, String senhaCompare)
	{
		
		deveSerIgual(senha, senhaCompare, "Senhas não coicidem");
		this.senha = senha;
	}
	
	public String getNome() {
		return nome;
	}
	public String getLogin() {
		return login;
	}
	public String getSenha() {
		
		return senha;
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Domain/repositorios/AnuncianteRepositorio.java
package repositorios;
import domain.Anunciante;
public interface AnuncianteRepositorio extends RepositorioBase<Anunciante> {
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Domain/repositorios/AnuncioRepositorio.java
package repositorios;
import domain.Anuncio;
public interface AnuncioRepositorio extends RepositorioBase<Anuncio> {
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Domain/repositorios/CategoriaRepositorio.java
package repositorios;
import domain.Categoria;
public interface CategoriaRepositorio extends RepositorioBase<Categoria> {
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Domain/repositorios/RepositorioBase.java
package repositorios;
import java.sql.SQLException;
import java.util.List;
public interface RepositorioBase<T> {
 public void inserir(T objeto) throws SQLException;
 public void alterar(T objeto) throws SQLException;
 public void excluir(T objeto) throws SQLException;
 public List<T> listarConsulta(String filtro) throws SQLException;
 public T selecionarConsulta(String codigo) throws SQLException;
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Domain/repositorios/UsuarioRepositorio.java
package repositorios;
import domain.Usuario;
public interface UsuarioRepositorio extends RepositorioBase<Usuario> {
	Usuario AlterarSenha(Usuario objeto);
	Usuario Login(Usuario objeto);
	
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Infra/factory/ConnectionFactory.java
package factory;
import java.sql.Connection; 
import java.sql.DriverManager; 
import java.sql.SQLException; 
public class ConnectionFactory {
	private String driver = "com.mysql.jdbc.Driver";
	private String connectionStr = "jdbc:mysql://localhost:3306/publicidade"; 
	private String username = "aplicacao";
	private String password = "123456";
	
	private static ConnectionFactory connectionFactory = null; 
	private ConnectionFactory(){ 
		try{ 
			Class.forName(driver); 
		}catch(ClassNotFoundException e){ 
			e.printStackTrace(); 
		} 
	} 
	public Connection getConnection() throws SQLException{ 
		Connection conn = null; 
		try{ 
			conn = DriverManager.getConnection(connectionStr, username, password); 
		}catch(SQLException e){ 
			e.printStackTrace(); 
		} 
		return conn; 
	} 
	public static ConnectionFactory getInstance(){ 
		if(connectionFactory == null) 
			connectionFactory = new ConnectionFactory(); 
		return connectionFactory; 
	} 
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Infra/infra/repositorios/AnuncianteRepositorio.java
package infra.repositorios;
import java.sql.Date;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import domain.Anunciante;
public class AnuncianteRepositorio extends RepositorioBase implements repositorios.AnuncianteRepositorio {
	
	@Override
	public void inserir(Anunciante objeto) throws SQLException {
		try { 
			String query = "insert into anunciante(guid, nome, documento, endereco, cidade, telefone) values (?, ?, ?, ?, ?, ?)" ;
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ps.setString(1, objeto.getId());
			ps.setString(2, objeto.getNome());
			ps.setString(3, objeto.getDocumento());
			ps.setString(4, objeto.getEndereco());
			ps.setString(5, objeto.getCidade());
			ps.setString(6, objeto.getTelefone());
			ps.executeUpdate(); 
		} catch (SQLException e) { 
			System.out.println("Erro ao inserir anunciante");
			objeto.adicionarMensagem("Erro ao inserir anunciante");
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
	}
	@Override
	public void alterar(Anunciante objeto) throws SQLException {
		try { 
			String query = "update anunciante set nome = ?, documento = ?, endereco = ?, cidade = ?, telefone = ? where guid = ?";
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ps.setString(1, objeto.getNome());
			ps.setString(2, objeto.getDocumento());
			ps.setString(3, objeto.getEndereco());
			ps.setString(4, objeto.getCidade());
			ps.setString(5, objeto.getTelefone());
			ps.setString(6, objeto.getId());
			ps.executeUpdate(); 
		} catch (SQLException e) { 
			System.out.println("Erro ao alterar anunciante"); 
			objeto.adicionarMensagem("Erro ao alterar anunciante");
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
	}
	@Override
	public void excluir(Anunciante objeto) throws SQLException {
		try { 
			String query = "delete from anunciante where guid = ?";
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ps.setString(1, objeto.getId());
			ps.executeUpdate(); 
		} catch (SQLException e) { 
			System.out.println("Erro ao excluir anunciante");
			objeto.adicionarMensagem("Erro ao excluir anunciante");
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
	}
	@Override
	public List<Anunciante> listarConsulta(String filtro) throws SQLException {
		ArrayList<Anunciante> objetos = new ArrayList<Anunciante>();
		try { 
			String query = "select * from anunciante ";
			if(!filtro.isEmpty())
			{
				query += filtro;
			}
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ResultSet resultado = ps.executeQuery();
			while(resultado.next())
			{
				Anunciante objeto = new Anunciante(resultado.getString("nome"), resultado.getString("documento"), resultado.getString("endereco"), resultado.getString("cidade"), resultado.getString("telefone"));
				objeto.setId(resultado.getString("guid"));
				objeto.setDataCriacao((Date)resultado.getDate("datacriacao"));
				objetos.add(objeto);
			}
		} catch (SQLException e) { 
			System.out.println("Erro ao selecionar anunciante"); 
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
		return objetos;
	}
	@Override
	public Anunciante selecionarConsulta(String codigo) throws SQLException {
		Anunciante objeto = null;
		try { 
			String query = "select * from anunciante where guid = ?";
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ps.setString(1, codigo);
			ResultSet resultado = ps.executeQuery();
			if(resultado.next())
			{
				objeto = new Anunciante(resultado.getString("nome"), resultado.getString("documento"), resultado.getString("endereco"), resultado.getString("cidade"), resultado.getString("telefone"));
				objeto.setId(resultado.getString("guid"));
			}
		} catch (SQLException e) { 
			System.out.println("Erro ao selecionar anunciante"); 
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
		return objeto;
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Infra/infra/repositorios/AnuncioRepositorio.java
package infra.repositorios;
import java.sql.Date;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import domain.Anunciante;
import domain.Anuncio;
import domain.Categoria;
public class AnuncioRepositorio extends RepositorioBase implements repositorios.AnuncioRepositorio {
	
	
	@Override
	public void inserir(Anuncio objeto) throws SQLException {
		try {
			java.text.SimpleDateFormat sdf = 
				 new java.text.SimpleDateFormat("yyyy-MM-dd
HH:mm:ss");
			String query = "insert into anuncio(guid, guidanunciante, guidcategoria, datavalidade) values (?, ?, ?, ?)" ;
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ps.setString(1, objeto.getId());
			ps.setString(2, objeto.getAnunciante().getId());
			ps.setString(3, objeto.getCategoria().getId());
			ps.setString(4, sdf.format(objeto.getDataValidade()));
			ps.executeUpdate(); 
		} catch (SQLException e) { 
			System.out.println("Erro ao inserir anuncio"); 
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
	}
	@Override
	public void alterar(Anuncio objeto) throws SQLException {
		try { 
			String query = "update anuncio set guidanunciante = ?, guidcategoria = ?, datavalidade = ? where guid = ?";
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ps.setString(1, objeto.getAnunciante().getId());
			ps.setString(2, objeto.getCategoria().getId());
			ps.setDate(3, (Date)objeto.getDataValidade());
			ps.setString(4, objeto.getId());
			ps.executeUpdate(); 
		} catch (SQLException e) { 
			System.out.println("Erro ao alterar anuncio"); 
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
	}
	@Override
	public void excluir(Anuncio objeto) throws SQLException {
		try { 
			String query = "delete from anuncio where guid = ?";
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ps.setString(1, objeto.getId());
			ps.executeUpdate(); 
		} catch (SQLException e) { 
			System.out.println("Erro ao excluir anuncio"); 
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
	}
	@Override
	public List<Anuncio> listarConsulta(String filtro) throws SQLException {
		ArrayList<Anuncio> objetos = new ArrayList<Anuncio>();
		try { 
			String query = "SELECT ANUNCIO.GUID, ANUNCIO.GUIDANUNCIANTE, ANUNCIO.GUIDCATEGORIA, ANUNCIO.DATAVALIDADE, ANUNCIO.DATACRIACAO, ANUNCIANTE.NOME AS ANUNCIANTENOME, ANUNCIANTE.DOCUMENTO, ANUNCIANTE.ENDERECO, ANUNCIANTE.CIDADE, ANUNCIANTE.TELEFONE, " + 
					" CATEGORIA.NOME AS CATEGORIANOME " + 
					" FROM ANUNCIO INNER JOIN" + 
					" ANUNCIANTE ON ANUNCIANTE.GUID = ANUNCIO.GUIDANUNCIANTE INNER JOIN" + 
					" CATEGORIA ON CATEGORIA.GUID = ANUNCIO.GUIDCATEGORIA ";
			if(!filtro.isEmpty())
			{
				query += filtro;
			}
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ResultSet resultado = ps.executeQuery();
			while(resultado.next())
			{
				Categoria categoria = new Categoria(resultado.getString("CATEGORIANOME"));
				categoria.setId(resultado.getString("GUIDCATEGORIA"));
				Anunciante anunciante = new Anunciante(resultado.getString("ANUNCIANTENOME"), resultado.getString("documento"), resultado.getString("endereco"), resultado.getString("cidade"), resultado.getString("telefone"));
				anunciante.setId(resultado.getString("GUIDANUNCIANTE"));
				Anuncio objeto = new Anuncio(categoria, anunciante, (Date)resultado.getDate("DATAVALIDADE"));
				objeto.setId(resultado.getString("guid"));
				objeto.setDataCriacao((Date)resultado.getDate("datacriacao"));
				objetos.add(objeto);
			}
		} catch (SQLException e) { 
			System.out.println("Erro ao selecionar anunciante"); 
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
		return objetos;
	}
	@Override
	public Anuncio selecionarConsulta(String codigo) throws SQLException {
		Anuncio objeto = null;
		try { 
			String query = "SELECT ANUNCIO.GUID, ANUNCIO.GUIDANUNCIANTE, ANUNCIO.GUIDCATEGORIA, ANUNCIO.DATAVALIDADE, ANUNCIO.DATACRIACAO, ANUNCIANTE.NOME AS ANUNCIANTENOME, ANUNCIANTE.DOCUMENTO, ANUNCIANTE.ENDERECO, ANUNCIANTE.TELEFONE, " + 
					" CATEGORIA.NOME AS CATEGORIANOME " + 
					" FROM ANUNCIO INNER JOIN" + 
					" ANUNCIANTE ON ANUNCIANTE.GUID = ANUNCIO.GUIDANUNCIANTE INNER JOIN" + 
					" CATEGORIA ON CATEGORIA.GUID = ANUNCIO.GUIDCATEGORIA " +
					" WHERE ANUNCIO.GUID = ? ";
					
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ps.setString(1, codigo);
			ResultSet resultado = ps.executeQuery();
			if(resultado.next())
			{
				Categoria categoria = new Categoria(resultado.getString("CATEGORIANOME"));
				categoria.setId(resultado.getString("GUIDCATEGORIA"));
				Anunciante anunciante = new Anunciante(resultado.getString("ANUNCIANTENOME"), resultado.getString("documento"), resultado.getString("endereco"), resultado.getString("cidade"), resultado.getString("telefone"));
				anunciante.setId(resultado.getString("GUIDANUNCIANTE"));
				objeto = new Anuncio(categoria, anunciante, (Date)resultado.getDate("DATAVALIDADE"));
				objeto.setId(resultado.getString("guid"));
				objeto.setDataCriacao((Date)resultado.getDate("datacriacao"));
			}
		} catch (SQLException e) { 
			System.out.println("Erro ao selecionar anuncio"); 
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
		return objeto;
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Infra/infra/repositorios/CategoriaRepositorio.java
package infra.repositorios;
import java.sql.Date;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import domain.Anunciante;
import domain.Categoria;
public class CategoriaRepositorio extends RepositorioBase implements repositorios.CategoriaRepositorio {
	@Override
	public void inserir(Categoria objeto) throws SQLException {
		try { 
			String query = "insert into Categoria(guid, nome) values (?, ?)" ;
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ps.setString(1, objeto.getId());
			ps.setString(2, objeto.getNome());
			ps.executeUpdate(); 
		} catch (SQLException e) { 
			System.out.println("Erro ao inserir categoria"); 
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
	}
	@Override
	public void alterar(Categoria objeto) throws SQLException {
		try { 
			String query = "update categoria set nome = ? where guid = ?";
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ps.setString(1, objeto.getNome());
			ps.setString(2, objeto.getId());
			ps.executeUpdate(); 
		} catch (SQLException e) { 
			System.out.println("Erro ao alterar anunciante"); 
			System.out.println(e.toString()); 
		}finally{
try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
	}
	@Override
	public void excluir(Categoria objeto) throws SQLException {
		try { 
			String query = "delete from categoria where guid = ?";
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ps.setString(1, objeto.getId());
			ps.executeUpdate(); 
		} catch (SQLException e) { 
			System.out.println("Erro ao excluir categoria"); 
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
	}
	@Override
	public List<Categoria> listarConsulta(String filtro) throws SQLException {
		ArrayList<Categoria> objetos = new ArrayList<Categoria>();
		try { 
			String query = "select * from categoria ";
			if(!filtro.isEmpty())
			{
				query += filtro;
			}
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ResultSet resultado = ps.executeQuery();
			while(resultado.next())
			{
				Categoria objeto = new Categoria(resultado.getString("nome"));
				objeto.setId(resultado.getString("guid"));
				objetos.add(objeto);
			}
		} catch (SQLException e) { 
			System.out.println("Erro ao selecionar anunciante"); 
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
		return objetos;
	}
	@Override
	public Categoria selecionarConsulta(String codigo) throws SQLException {
		Categoria objeto = null;
		try { 
			String query = "select * from categoria where guid = ?";
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ps.setString(1, codigo);
			ResultSet resultado = ps.executeQuery();
			if(resultado.next())
			{
				objeto = new Categoria(resultado.getString("nome"));
				objeto.setId(resultado.getString("guid"));
			}
		} catch (SQLException e) { 
			System.out.println("Erro ao selecionar categoria"); 
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
		return objeto;
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Infra/infra/repositorios/RepositorioBase.java
package infra.repositorios;
import java.sql.Connection; 
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import factory.ConnectionFactory; 
public class RepositorioBase {
	protected Connection con = null; 
	protected PreparedStatement ps= null; 
	protected ResultSet rs = null; 
 
 
 protected Connection getConnection() throws SQLException{ 
 Connection conn; 
 conn = ConnectionFactory.getInstance().getConnection(); 
 return conn; 
 }
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Infra/infra/repositorios/UsuarioRepositorio.java
package infra.repositorios;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import domain.Usuario;
public class UsuarioRepositorio extends RepositorioBase implements repositorios.UsuarioRepositorio {
	@Override
	public void inserir(Usuario objeto) throws SQLException {
		try { 
			String query = "insert into Usuario(guid, nome, login, senha) values (?, ?, ?, ?)" ;
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ps.setString(1, objeto.getId());
			ps.setString(2, objeto.getNome());
			ps.setString(3, objeto.getLogin());
			ps.setString(4, objeto.getSenha());
			ps.executeUpdate(); 
		} catch (SQLException e) { 
			System.out.println("Erro ao inserir categoria"); 
			objeto.adicionarMensagem("Erro ao inserir categoria");
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
	}
	@Override
	public void alterar(Usuario objeto) throws SQLException {
		try { 
			String query = "update usuario set nome = ?, login = ? where guid = ?";
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ps.setString(1, objeto.getNome());
			ps.setString(2, objeto.getLogin());
			ps.setString(3, objeto.getId());
			ps.executeUpdate(); 
		} catch (SQLException e) { 
			System.out.println("Erro ao alterar anunciante"); 
			objeto.adicionarMensagem("Erro ao alterar anunciante");
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
	}
	@Override
	public void excluir(Usuario objeto) throws SQLException {
		try { 
			String query = "delete from usuario where guid = ?";
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ps.setString(1, objeto.getId());
			ps.executeUpdate(); 
		} catch (SQLException e) { 
			System.out.println("Erro ao excluir categoria"); 
			objeto.adicionarMensagem("Erro ao excluir categoria");
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
	}
	@Override
	public List<Usuario> listarConsulta(String filtro) throws SQLException {
		ArrayList<Usuario> objetos = new ArrayList<Usuario>();
		try { 
			String query = "select guid, nome, login from usuario ";
			if(!filtro.isEmpty())
			{
				query += filtro;
			}
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ResultSet resultado = ps.executeQuery();
			while(resultado.next())
			{
				Usuario objeto = new Usuario(resultado.getString("nome"), resultado.getString("login"), "");
				objeto.setId(resultado.getString("guid"));
				objetos.add(objeto);
			}
		} catch (SQLException e) { 
			System.out.println("Erro ao selecionar anunciante"); 
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
		return objetos;
	}
	@Override
	public Usuario selecionarConsulta(String codigo) throws SQLException {
		Usuario objeto = null;
		try { 
			String query = "select guid, nome, login from usuario where guid = ?";
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ps.setString(1, codigo);
			ResultSet resultado = ps.executeQuery();
			if(resultado.next())
			{
				objeto = new Usuario(resultado.getString("nome"), resultado.getString("login"), "");
				objeto.setId(resultado.getString("guid"));
}
		} catch (SQLException e) { 
			System.out.println("Erro ao selecionar categoria"); 
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
		return objeto;
	}
	@Override
	public Usuario AlterarSenha(Usuario objeto) {
		try { 
			String query = "update usuario set senha = ? where guid = ?";
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ps.setString(1, objeto.getSenha());
			ps.setString(2, objeto.getId());
			ps.executeUpdate(); 
		} catch (SQLException e) { 
			System.out.println("Erro ao alterar anunciante"); 
			objeto.adicionarMensagem("Erro ao alterar anunciante");
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
		
		return objeto;
	}
	@Override
	public Usuario Login(Usuario objeto) {
		try { 
			String query = "select guid, nome, login from usuario where login = ? and senha = ?";
			con = getConnection(); 
			ps = con.prepareStatement(query); 
			ps.setString(1, objeto.getLogin());
			ps.setString(2, objeto.getSenha());
			ResultSet resultado = ps.executeQuery();
			if(resultado.next())
			{
				objeto = new Usuario(resultado.getString("nome"), resultado.getString("login"), "");
				objeto.setId(resultado.getString("guid"));
			}
		} catch (SQLException e) { 
			System.out.println("Erro ao selecionar categoria"); 
			System.out.println(e.toString()); 
		}finally{ 
			try{ 
				if(rs != null) 
					rs.close(); 
				if(ps != null) 
					ps.close(); 
				if(con != null) 
					con.close(); 
			}catch(SQLException e){ 
				e.printStackTrace(); 
			}catch(Exception ex){ 
				ex.printStackTrace(); 
			} 
		} 
		return objeto;
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/pom.xml
 
 4.0.0
 com.pos.pioo
 com.pos.pioo
 0.0.1-SNAPSHOT
 
 src
 
 
 
 maven-compiler-plugin
 3.7.0
 
 1.7
 1.7
 
 
 
 
 
 
 	 
 		 com.google.code.gson
 		 gson
 		 2.2.4
 	
 	 
 jstl
 jstl
 1.2
	
 
 mysql
 mysql-connector-java
 5.1.6
 
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Shared/fluent/Validacao.java
package fluent;
import java.util.ArrayList;
import java.util.Date;
public abstract class Validacao {
	private ArrayList<String> mensagens;
	
	public Validacao() {
		this.mensagens = new ArrayList<String>();
	}
	
	public void deveSerVazio(Object obj, String mensagem)
	{
		if(obj != null)
		{
			this.mensagens.add(mensagem);
			return;
		}		
	}
	
	public void deveSerVazio(String obj, String mensagem)
	{
		if(!obj.isEmpty())
		{
			this.adicionarMensagem(mensagem);
		}
	}
	
	public void naoDeveSerVazio(Object obj, String mensagem)
	{
		if(obj == null)
		{
			this.mensagens.add(mensagem);
			return;
		}
	}
	
	public void naoDeveSerVazio(String obj, String mensagem)
	{
		if(obj.isEmpty())
		{
			this.adicionarMensagem(mensagem);
		}
	}
	
	
	public void deveSerMaiorQue(int valor, int compare, String mensagem)
	{
		if(compare > valor)
		{
			this.adicionarMensagem(mensagem);
		}
	}
	
	public void deveSerMaiorQue(Date valor, Date compare, String mensagem)
	{
		if(compare.before(valor))
		{
			this.adicionarMensagem(mensagem);
		}
	
	}
	
	public void deveSerMenorQue(int valor, int compare, String mensagem)
	{
		if(compare < valor)
		{
			this.adicionarMensagem(mensagem);
		}
	}
	
	public void deveSerMenorQue(Date valor, Date compare, String mensagem)
	{
		if(compare.after(valor))
		{
			this.adicionarMensagem(mensagem);
		}
	
	}
	
	public void deveSerIgual(String valor, String compare, String mensagem)
	{
		if(!valor.equals(compare))
		{
			this.adicionarMensagem(mensagem);
		}
	}
	
	public void naoDeveSerIgual(String valor, String compare, String mensagem)
	{
		if(valor.equals(compare))
		{
			this.adicionarMensagem(mensagem);
		}
	}
	public boolean EValido()
	{
		return this.mensagens.isEmpty();
	}
	
	public boolean EInvalido()
	{
		return !this.mensagens.isEmpty();
	}
	
	public void adicionarMensagem(String mensagem)
	{
		this.mensagens.add(mensagem);
	}
	
	public void adicionarMensagens(ArrayList mensagens)
	{
		this.mensagens.addAll(mensagens);
	}
	
	public ArrayList<String> obterMensagens() {
	
		return this.mensagens;
	}
	
	
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/Command.java
package command;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public interface Command {
	public void execute(HttpServletRequest request, HttpServletResponse response);
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/navegacao/DeletarAnunciante.java
package command.navegacao;
import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
import domain.Anunciante;
import repositorios.AnuncianteRepositorio;
public class DeletarAnunciante implements Command {
	private AnuncianteRepositorio anuncianteRepositorio;
	public DeletarAnunciante() {
		if(anuncianteRepositorio == null)
		{
			this.anuncianteRepositorio = new infra.repositorios.AnuncianteRepositorio();
		}
	}
	@Override
	public void execute(HttpServletRequest request, HttpServletResponse response) {
		try {
			
			
			Anunciante anunciante = new Anunciante("","","","","");
			
			anunciante.setId(request.getParameter("id"));
			
			this.anuncianteRepositorio.excluir(anunciante);
			
			RequestDispatcher d = request.getRequestDispatcher("Controller?command=ListarAnunciante");
			d.forward(request,response);
		} catch (IOException | ServletException | SQLException e) {
			e.printStackTrace();
		}
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/navegacao/DeletarAnuncio.java
package command.navegacao;
import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
import domain.Anunciante;
import domain.Anuncio;
import domain.Categoria;
import repositorios.AnuncioRepositorio;
public class DeletarAnuncio implements Command {
	private AnuncioRepositorio anuncioRepositorio;
	public DeletarAnuncio() {
		if(anuncioRepositorio == null)
		{
			this.anuncioRepositorio = new infra.repositorios.AnuncioRepositorio();
		}
	}
	@Override
	public void execute(HttpServletRequest request, HttpServletResponse response) {
		try {
			Anuncio anuncio = new Anuncio(new Categoria(""), new Anunciante("", "", "", "", ""), new Date());
			
			anuncio.setId(request.getParameter("id"));
			
			this.anuncioRepositorio.excluir(anuncio);
		
			RequestDispatcher d = request.getRequestDispatcher("Controller?command=ListarAnuncio");
			d.forward(request,response);
		} catch (IOException | ServletException | SQLException e) {
			e.printStackTrace();
		}
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/navegacao/DeletarCategoria.java
package command.navegacao;
import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
import domain.Categoria;
import repositorios.CategoriaRepositorio;
public class DeletarCategoria implements Command {
	private CategoriaRepositorio categoriaRepositorio;
	public DeletarCategoria() {
		if(categoriaRepositorio == null)
		{
			this.categoriaRepositorio = new infra.repositorios.CategoriaRepositorio();
		}
	}
	
	@Override
	public void execute(HttpServletRequest request, HttpServletResponse response) {
		try {
			Categoria categoria = new Categoria("");
			categoria.setId(request.getParameter("id"));
			
			this.categoriaRepositorio.excluir(categoria);
			
			RequestDispatcher d = request.getRequestDispatcher("Controller?command=ListarCategoria");
			d.forward(request,response);
		} catch (IOException | ServletException | SQLException e) {
			e.printStackTrace();
		}
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/navegacao/DeletarUsuario.java
package command.navegacao;
import java.io.IOException;
import java.sql.SQLException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
import domain.Usuario;
import repositorios.UsuarioRepositorio;
public class DeletarUsuario implements Command {
	private UsuarioRepositorio usuarioRepositorio;
	public DeletarUsuario() {
		if(usuarioRepositorio == null)
		{
			this.usuarioRepositorio = new infra.repositorios.UsuarioRepositorio();
		}
	}
	@Override
	public void execute(HttpServletRequest request, HttpServletResponse response) {
		try {
			Usuario usuario = new Usuario("", "");
			usuario.setId(request.getParameter("id"));
			this.usuarioRepositorio.excluir(usuario);
			RequestDispatcher d = request.getRequestDispatcher("Controller?command=ListarUsuario");
			d.forward(request,response);
		} catch (IOException | ServletException | SQLException e) {
			e.printStackTrace();
		}
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/navegacao/EditarAnunciante.java
package command.navegacao;
import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
import domain.Anunciante;
import domain.Categoria;
import repositorios.AnuncianteRepositorio;
import repositorios.AnuncioRepositorio;
import repositorios.CategoriaRepositorio;
public class EditarAnunciante implements Command {
	private CategoriaRepositorio categoriaRepositorio;
	private AnuncianteRepositorio anuncianteRepositorio;
	private AnuncioRepositorio anuncioRepositorio;
	public EditarAnunciante() {
		if(categoriaRepositorio == null)
		{
			this.categoriaRepositorio = new infra.repositorios.CategoriaRepositorio();
		}
		if(anuncianteRepositorio == null)
		{
			this.anuncianteRepositorio = new infra.repositorios.AnuncianteRepositorio();
		}
		if(anuncioRepositorio == null)
		{
			this.anuncioRepositorio = new infra.repositorios.AnuncioRepositorio();
		}
	}
	@Override
	public void execute(HttpServletRequest request, HttpServletResponse response) {
		try {
			Anunciante anunciante = null;
			if(request.getParameter("id") != null) {
				anunciante = this.anuncianteRepositorio.selecionarConsulta(request.getParameter("id"));
			}
			else
			{
				anunciante = new Anunciante("", "", "", "", "");
			}
			request.setAttribute("anunciante", anunciante);
			RequestDispatcher d = request.getRequestDispatcher("/Anunciantes/EditarAnunciante.jsp");
			d.forward(request,response);
		} catch (IOException | ServletException | SQLException e) {
			e.printStackTrace();
		}
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/navegacao/EditarAnuncio.java
package command.navegacao;
import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
import domain.Anunciante;
import domain.Anuncio;
import domain.Categoria;
import repositorios.AnuncianteRepositorio;
import repositorios.AnuncioRepositorio;
import repositorios.CategoriaRepositorio;
public class EditarAnuncio implements Command {
	private CategoriaRepositorio categoriaRepositorio;
	private AnuncianteRepositorio anuncianteRepositorio;
	private AnuncioRepositorio anuncioRepositorio;
	
	public EditarAnuncio() {
		if(categoriaRepositorio == null)
		{
			this.categoriaRepositorio = new infra.repositorios.CategoriaRepositorio();
		}
		
		if(anuncianteRepositorio == null)
		{
			this.anuncianteRepositorio = new infra.repositorios.AnuncianteRepositorio();
		}
		
		if(anuncioRepositorio == null)
		{
			this.anuncioRepositorio = new infra.repositorios.AnuncioRepositorio();
		}
	}
	
	@Override
	public void execute(HttpServletRequest request, HttpServletResponse response) {
		try {
			Anuncio anuncio = null;
			
			if(request.getAttribute("id") != null)
			{
				anuncio = this.anuncioRepositorio.selecionarConsulta(request.getAttribute("id").toString());
			}
			else
			{
				anuncio = new Anuncio(new Categoria(""), new Anunciante("", "", "", "", ""), new Date());
			}
			List<Categoria> categorias = this.categoriaRepositorio.listarConsulta("");
			List<Anunciante> anunciantes = this.anuncianteRepositorio.listarConsulta("");
			
			request.setAttribute("categorias", categorias);
			request.setAttribute("anunciantes", anunciantes);
			request.setAttribute("anuncio", anuncio);
			RequestDispatcher d = request.getRequestDispatcher("/Anuncios/EditarAnuncio.jsp");
			d.forward(request,response);
		} catch (IOException | ServletException | SQLException e) {
			e.printStackTrace();
		}
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/navegacao/EditarCategoria.java
package command.navegacao;
import java.io.IOException;
import java.sql.SQLException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
import domain.Categoria;
import repositorios.CategoriaRepositorio;
public class EditarCategoria implements Command {
	private CategoriaRepositorio categoriaRepositorio;
	public EditarCategoria() {
		if(categoriaRepositorio == null)
		{
			this.categoriaRepositorio = new infra.repositorios.CategoriaRepositorio();
		}
	}
	@Override
	public void execute(HttpServletRequest request, HttpServletResponse response) {
		try {
			Categoria categoria = null;
			if(request.getParameter("id") != null) {
				categoria = this.categoriaRepositorio.selecionarConsulta(request.getParameter("id"));
			}
			else
			{
				categoria = new Categoria("");
			}
			
			request.setAttribute("categoria", categoria);
			RequestDispatcher d = request.getRequestDispatcher("/Categoria/EditarCategoria.jsp");
			d.forward(request,response);
		} catch (IOException | ServletException | SQLException e) {
			e.printStackTrace();
		}
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/navegacao/EditarUsuario.java
package command.navegacao;
import java.io.IOException;
import
java.sql.SQLException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
import domain.Usuario;
import repositorios.UsuarioRepositorio;
public class EditarUsuario implements Command {
	private UsuarioRepositorio usuarioRepositorio;
	public EditarUsuario() {
		if(usuarioRepositorio == null)
		{
			this.usuarioRepositorio = new infra.repositorios.UsuarioRepositorio();
		}
	}
	@Override
	public void execute(HttpServletRequest request, HttpServletResponse response) {
		try {
			Usuario usuario = null;
			if(request.getParameter("id") != null) {
				usuario = this.usuarioRepositorio.selecionarConsulta(request.getParameter("id"));
			}
			else
			{
				usuario = new Usuario("", "", "");
			}
			
			request.setAttribute("usuario", usuario);
			RequestDispatcher d = request.getRequestDispatcher("/Usuario/EditarUsuario.jsp");
			d.forward(request,response);
		} catch (IOException | ServletException | SQLException e) {
			e.printStackTrace();
		}
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/navegacao/ListarAnunciante.java
package command.navegacao;
import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
import domain.Anunciante;
import domain.Anuncio;
import domain.Categoria;
import repositorios.AnuncianteRepositorio;
import repositorios.AnuncioRepositorio;
public class ListarAnunciante implements Command {
	private AnuncianteRepositorio anuncianteRepositorio;
	public ListarAnunciante() {
		if(anuncianteRepositorio == null)
		{
			this.anuncianteRepositorio = new infra.repositorios.AnuncianteRepositorio();
		}
	}
	
	@Override
	public void execute(HttpServletRequest request, HttpServletResponse response) {
		try {
			List<Anunciante> anunciantes = this.anuncianteRepositorio.listarConsulta("");
		
			request.setAttribute("anunciantes", anunciantes);
			RequestDispatcher d = request.getRequestDispatcher("/Anunciantes/ListarAnunciante.jsp");
			d.forward(request,response);
		} catch (IOException | ServletException | SQLException e) {
			e.printStackTrace();
		}
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/navegacao/ListarAnuncio.java
package command.navegacao;
import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
import domain.Anunciante;
import domain.Anuncio;
import domain.Categoria;
import repositorios.AnuncioRepositorio;
import repositorios.CategoriaRepositorio;
public class ListarAnuncio implements Command {
	private AnuncioRepositorio anuncioRepositorio;
	public ListarAnuncio() {
		if(anuncioRepositorio == null)
		{
			this.anuncioRepositorio = new infra.repositorios.AnuncioRepositorio();
		}
	}
	
	@Override
	public void execute(HttpServletRequest request, HttpServletResponse response) {
		try {
			List<Anuncio> anuncios = this.anuncioRepositorio.listarConsulta("");
			request.setAttribute("anuncios", anuncios);
			RequestDispatcher d = request.getRequestDispatcher("/Anuncios/ListarAnuncio.jsp");
			d.forward(request,response);
		} catch (IOException | ServletException | SQLException e) {
			e.printStackTrace();
		}
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/navegacao/ListarCategoria.java
package command.navegacao;
import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
import domain.Categoria;
import repositorios.CategoriaRepositorio;
public class ListarCategoria implements Command {
	private CategoriaRepositorio categoriaRepositorio;
	public ListarCategoria() {
		if(categoriaRepositorio == null)
		{
			this.categoriaRepositorio = new infra.repositorios.CategoriaRepositorio();
		}
	}
	@Override
	public void execute(HttpServletRequest request, HttpServletResponse response) {
		try {
			List<Categoria> categorias = this.categoriaRepositorio.listarConsulta("");
			request.setAttribute("categorias", categorias);
			RequestDispatcher d = request.getRequestDispatcher("/Categoria/ListarCategoria.jsp");
			d.forward(request,response);
		} catch (IOException | ServletException | SQLException e) {
			e.printStackTrace();
		}
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/navegacao/ListarUsuario.java
package command.navegacao;
import java.io.IOException;
import java.sql.SQLException;
import java.util.List;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
import domain.Usuario;
import repositorios.UsuarioRepositorio;
public class ListarUsuario implements Command {
	private UsuarioRepositorio usuarioRepositorio;
	public ListarUsuario() {
		if(usuarioRepositorio == null)
		{
			this.usuarioRepositorio = new infra.repositorios.UsuarioRepositorio();
		}
	}
	@Override
	public void execute(HttpServletRequest request, HttpServletResponse response) {
		try {
			List<Usuario> usuarios = this.usuarioRepositorio.listarConsulta("");
			request.setAttribute("usuarios", usuarios);
			RequestDispatcher d = request.getRequestDispatcher("/Usuario/ListarUsuario.jsp");
			d.forward(request,response);
		} catch (IOException | ServletException | SQLException e) {
			e.printStackTrace();
		}
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/navegacao/LoginUsuario.java
package command.navegacao;
import java.io.IOException;
import java.sql.SQLException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
import domain.Usuario;
import repositorios.UsuarioRepositorio;
public class LoginUsuario implements Command {
	private UsuarioRepositorio usuarioRepositorio;
	public LoginUsuario() {
		if(usuarioRepositorio == null)
		{
			this.usuarioRepositorio = new infra.repositorios.UsuarioRepositorio();
		}
	}
	@Override
	public void execute(HttpServletRequest request, HttpServletResponse response) {
		try {
			if(request.getParameter("login") == null && request.getParameter("senha") == null)
			{
				request.getSession().setAttribute("usuarioLogado", null);
				RequestDispatcher d = request.getRequestDispatcher("/Usuario/LoginUsuario.jsp");
				d.forward(request,response);
			}
			else
			{
				Usuario usuario = new Usuario(request.getParameter("login").toString(), request.getParameter("senha").toString());
				if(usuario.EValido())
				{
					usuario = this.usuarioRepositorio.Login(usuario);	
					if(usuario != null)
					{
						request.getSession().setAttribute("usuarioLogado", usuario);
						RequestDispatcher d = request.getRequestDispatcher("/index.jsp");
						d.forward(request,response);
					}
					else
					{
						request.getSession().setAttribute("usuarioLogado", null);
						RequestDispatcher d = request.getRequestDispatcher("/Usuario/LoginUsuario.jsp");
d.forward(request,response);
					}
				}
				else
				{
					request.getSession().setAttribute("usuarioLogado", null);
					RequestDispatcher d = request.getRequestDispatcher("/Usuario/LoginUsuario.jsp");
					d.forward(request,response);
				}
			}
		} catch (IOException | ServletException e) {
			e.printStackTrace();
		}
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/navegacao/LogoutUsuario.java
package command.navegacao;
import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
import domain.Usuario;
import repositorios.UsuarioRepositorio;
public class LogoutUsuario implements Command {
	private UsuarioRepositorio usuarioRepositorio;
	public LogoutUsuario() {
		if(usuarioRepositorio == null)
		{
			this.usuarioRepositorio = new infra.repositorios.UsuarioRepositorio();
		}
	}
	@Override
	public void execute(HttpServletRequest request, HttpServletResponse response) {
		try {
			request.getSession().setAttribute("usuarioLogado", null);
			request.getRequestDispatcher("/index.jsp").forward(request,response);
		} catch (IOException | ServletException e) {
			e.printStackTrace();
		}
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/navegacao/MostrarAnuncio.java
package command.navegacao;
import java.io.IOException;
import java.sql.SQLException;
import java.util.List;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
import domain.Anuncio;
import repositorios.AnuncioRepositorio;
public class MostrarAnuncio implements Command {
	private AnuncioRepositorio anuncioRepositorio;
	public MostrarAnuncio() {
		if(anuncioRepositorio == null)
		{
			this.anuncioRepositorio = new infra.repositorios.AnuncioRepositorio();
		}
	}
	
	@Override
	public void execute(HttpServletRequest request, HttpServletResponse response) {
		try {
			List<Anuncio> anuncios = this.anuncioRepositorio.listarConsulta("");
			request.setAttribute("anuncios", anuncios);
			RequestDispatcher d = request.getRequestDispatcher("/Anuncios/MostrarAnuncios.jsp");
			d.forward(request,response);
		} catch (IOException | ServletException | SQLException e) {
			e.printStackTrace();
		}
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/navegacao/SalvarAnunciante.java
package command.navegacao;
import java.io.IOException;
import java.sql.SQLException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
import domain.Anunciante;
import domain.Categoria;
import infra.repositorios.AnuncianteRepositorio;
import repositorios.CategoriaRepositorio;
public class SalvarAnunciante implements Command {
	private AnuncianteRepositorio anuncianteRepositorio;
	public SalvarAnunciante() {
		if(anuncianteRepositorio == null)
		{
			this.anuncianteRepositorio = new infra.repositorios.AnuncianteRepositorio();
		}
	}
	@Override
	public void execute(HttpServletRequest request, HttpServletResponse response) {
		try {
			boolean isNovo = true;
			Anunciante anunciante = new Anunciante(request.getParameter("nome"), request.getParameter("documento"), request.getParameter("endereco"), request.getParameter("cidade"), request.getParameter("telefone"));
			if(!request.getParameter("isnew").equals("true"))
			{
				anunciante.setId(request.getParameter("id"));
				isNovo = false;
			}
			if(anunciante.EValido())
			{
				if(isNovo)
				{
					this.anuncianteRepositorio.inserir(anunciante);
				}
				else
				{
					this.anuncianteRepositorio.alterar(anunciante);
				}
			}
			RequestDispatcher d = request.getRequestDispatcher("Controller?command=ListarAnunciante");
			d.forward(request,response);
		} catch (IOException | ServletException | SQLException e) {
			e.printStackTrace();
		}
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/navegacao/SalvarAnuncio.java
package command.navegacao;
import java.io.IOException;
import java.sql.SQLException;
import java.util.Date;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
import domain.Anunciante;
import domain.Anuncio;
import domain.Categoria;
import repositorios.AnuncioRepositorio;
public class SalvarAnuncio implements Command {
	private AnuncioRepositorio anuncioRepositorio;
	public SalvarAnuncio() {
		if(anuncioRepositorio == null)
		{
			this.anuncioRepositorio = new infra.repositorios.AnuncioRepositorio();
		}
	}
	@Override
	public void execute(HttpServletRequest request, HttpServletResponse response) {
		try {
			boolean isNovo = true;
			Categoria categoria = new Categoria("");			
			Anunciante anunciante = new Anunciante("", "", "", "", "");
			categoria.setId(request.getParameter("categoriaId").toString());
			anunciante.setId(request.getParameter("anuncianteId").toString());
			Anuncio anuncio = new Anuncio(categoria, anunciante, new Date());
			if(!request.getParameter("isnew").equals("true"))
			{
				anuncio.setId(request.getParameter("id"));
				isNovo = false;
			}
			if(isNovo)
			{
				this.anuncioRepositorio.inserir(anuncio);
			}
			else
			{
				this.anuncioRepositorio.alterar(anuncio);
			}
			RequestDispatcher d = request.getRequestDispatcher("Controller?command=ListarAnuncio");
			d.forward(request,response);
		} catch (IOException | ServletException | SQLException e) {
			e.printStackTrace();
		}
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/navegacao/SalvarCategoria.java
package command.navegacao;
import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
import domain.Categoria;
import repositorios.CategoriaRepositorio;
public class SalvarCategoria implements Command {
	private CategoriaRepositorio categoriaRepositorio;
	public SalvarCategoria() {
		if(categoriaRepositorio == null)
		{
			this.categoriaRepositorio = new infra.repositorios.CategoriaRepositorio();
		}
	}
	@Override
	public void execute(HttpServletRequest request, HttpServletResponse response) {
		try {
			boolean isNovo = true;
			Categoria categoria = new Categoria(request.getParameter("nome"));
			if(request.getParameter("isnew") != "true")
			{
				categoria.setId(request.getParameter("id"));
				isNovo = false;
			}
			if(categoria.EValido())
			{
				if(isNovo)
				{
					this.categoriaRepositorio.inserir(categoria);
				}
				else
				{
					this.categoriaRepositorio.alterar(categoria);
				}
			}
			RequestDispatcher d = request.getRequestDispatcher("Controller?command=ListarCategoria");
			d.forward(request,response);
		} catch (IOException | ServletException | SQLException e) {
			e.printStackTrace();
		}
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/command/navegacao/SalvarUsuario.java
package command.navegacao;
import java.io.IOException;
import java.sql.SQLException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
import domain.Usuario;
import repositorios.UsuarioRepositorio;
public class SalvarUsuario implements Command {
	private UsuarioRepositorio categoriaRepositorio;
	public SalvarUsuario() {
		if(categoriaRepositorio == null)
		{
			this.categoriaRepositorio = new infra.repositorios.UsuarioRepositorio();
		}
	}
	@Override
	public void execute(HttpServletRequest request, HttpServletResponse response) {
		try {
			boolean isNovo = true;
			Usuario usuariologado = (Usuario)request.getSession().getAttribute("usuarioLogado");
			Usuario usuario = new Usuario(request.getParameter("nome"), request.getParameter("login"), request.getParameter("senha"));
			if(!request.getParameter("isnew").equals("true"))
			{
				usuario.setId(request.getParameter("id"));
				isNovo = false;
			}
			if(usuario.EValido())
			{
				if(isNovo)
				{
					this.categoriaRepositorio.inserir(usuario);
				}
				else
				{
					this.categoriaRepositorio.alterar(usuario);
				}
			}
			
			if(usuariologado == null)
			{
				request.getRequestDispatcher("Controller?command=LoginUsuario").forward(request,response);
			}
			else
			{
				request.getRequestDispatcher("Controller?command=ListarUsuario").forward(request,response);
			}
		
		} catch (IOException | ServletException | SQLException e) {
			e.printStackTrace();
		}
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/Web/servlet/Controller.java
package servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import command.Command;
public class Controller extends HttpServlet {
	protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		
		Command comando = null;
		try {
			comando = (Command)Class.forName("command.navegacao."+request.getParameter("command")).newInstance();
		} catch (InstantiationException e) {
			e.printStackTrace();
		} catch (IllegalAccessException e) {
			e.printStackTrace();
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
		comando.execute(request, response);
	}
	@Override
	protected void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		processRequest(request, response);
	}
	@Override
	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		processRequest(request, response);
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/WebContent/Anunciantes/EditarAnunciante.js
function onVoltarAnuncio(){
	navegarPrincipal("/com.pos.pioo/Controller?command=ListarAnunciante");
}
function onSalvarAnunciante(){
	var valores = $('#AnuncianteFormulario').serialize();
	var command = "/com.pos.pioo/Controller?command=SalvarAnunciante&" + valores;
	executarCommand(command);
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/WebContent/Anunciantes/EditarAnunciante.jsp
<%@ page import="domain.Anunciante"%>
<%@ page import="java.util.ArrayList"%>
<%@ page import="java.util.List"%>
<%
	Anunciante anunciante = (Anunciante) request.getAttribute("anunciante");
%>
<div class="panel panel-default">
	<!-- Default panel contents -->
	<div class="panel-heading">Cadatrar Anunciante</div>
	<form id="AnuncianteFormulario">
		<input type="hidden" name="id" value="<%=anunciante.getId()%>" /> <input
			type="hidden" name="isnew" value="<%=anunciante.isNovoRegistro()%>" />
		<div class="form-group">
			<label class="control-label required">Nome <abbr
				title="required">*</abbr>
			</label> <input type="text" class="form-control" name="nome"
				value="<%=anunciante.getNome()%>" required />
		</div>
		<div class="form-group">
			<label class="control-label required">Documento <abbr
				title="required">*</abbr>
			</label> <input type="text" class="form-control" name="documento"
				value="<%=anunciante.getDocumento()%>" required />
		</div>
		<div class="form-group">
			<label class="control-label required">Endereço <abbr
				title="required">*</abbr>
			</label> <input type="text" class="form-control" name="endereco"
				value="<%=anunciante.getEndereco()%>" required />
		</div>
		<div class="form-group">
			<label class="control-label required">Telefone <abbr
				title="required">*</abbr>
			</label> <input type="text" class="form-control" name="telefone"
				value="<%=anunciante.getTelefone()%>" required />
		</div>
		<div class="form-group">
			<label class="control-label required">Cidade <abbr
				title="required">*</abbr>
			</label> <input type="text" class="form-control" name="cidade"
				value="<%=anunciante.getCidade()%>" required />
		</div>
		<button class="btn btn-primary" type="button"
			onclick="onSalvarAnunciante()">Salvar</button>
		<button class="btn btn-primary" type="button"
			onclick="onVoltarAnunciante()">Voltar</button>
	</form>
</div>
<script type="text/javascript">
	<jsp:include page="/Anunciantes/EditarAnunciante.js" />
</script>
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/WebContent/Anunciantes/ListarAnunciante.js
function onEditarAnunciante(id)
{
	if(id)
	{
		executarCommand("/com.pos.pioo/Controller?command=EditarAnunciante&id=" + id);
	}
	else
	{
		executarCommand("/com.pos.pioo/Controller?command=EditarAnunciante");
	}
}
function onDeletarAnunciante(id){
	if(confirm("Deseja deletar o anunciante?"))
	{
		executarCommand("/com.pos.pioo/Controller?command=DeletarAnunciante&id=" + id);
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/WebContent/Anunciantes/ListarAnunciante.jsp
<%@ page import="domain.Anunciante"%>
<%@ page import="java.util.ArrayList"%>
<%@ page import="java.util.List"%>
<div class="panel panel-default">
	<!-- Default panel contents -->
	<div class="panel-heading">Lista de categorias</div>
	<div>
		<button class="btn btn-primary" type="button"
			onclick="onEditarAnunciante()">Nova Anunciante</button>
	</div>
	<!-- Table -->
	<table class="table">
		<tr>
			<th></th>
			<th>Nome</th>
			<th>Documento</th>
			<th>Telefone</th>
		</tr>
		<%
			List<Anunciante> anunciantes = (List<Anunciante>) request.getAttribute("anunciantes");
			for (Anunciante item : anunciantes) {
		%>
		<tr>
			<td>
				<button type="button" class="btn btn-info btn-sm"
					onclick="onEditarAnunciante('<%=item.getId()%>')">
					<span class="fa fa-pencil"> </span>
				</button>
				<button type="button" class="btn btn-danger btn-sm"
					onclick="onExluirAnunciante('<%=item.getId()%>')">
					<span class="fa fa-trash-o"></span>
				</button>
			</td>
			<td><%=item.getNome()%></td>
			<td><%=item.getDocumento()%></td>
			<td><%=item.getTelefone()%></td>
		</tr>
		<%
			}
		%>
	</table>
</div>
<script type="text/javascript">
	<jsp:include page="/Anunciantes/ListarAnunciante.js" />
</script>
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/WebContent/Anuncios/EditarAnuncio.js
function onVoltarAnuncio(){
	executarCommand("/com.pos.pioo/Controller?command=ListarAnuncio");
}
function onSalvarAnuncio(){
	var valores = $('#AnuncioFormulario').serialize();
	var command = "/com.pos.pioo/Controller?command=SalvarAnuncio&" + valores;
	executarCommand(command);
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/WebContent/Anuncios/EditarAnuncio.jsp
<%@ page import="domain.Categoria"%>
<%@ page import="domain.Anunciante"%>
<%@ page import="domain.Anuncio"%>
<%@ page import="java.util.ArrayList"%>
<%@ page import="java.util.List"%>
<%
	Anuncio anuncio = (Anuncio) request.getAttribute("anuncio");
	List<Categoria> categorias = (ArrayList<Categoria>) request.getAttribute("categorias");
	List<Anunciante> anunciantes = (ArrayList<Anunciante>) request.getAttribute("anunciantes");
%>
<div class="panel panel-default">
	<!-- Default panel contents -->
	<div class="panel-heading">Cadatrar Anuncio</div>
	<form id="AnuncioFormulario">
		<input type="hidden" name="id" value="<%=anuncio.getId()%>"> <input
			type="hidden" name="isnew" value="<%=anuncio.isNovoRegistro()%>" />
		<div class="form-group">
			<label class="control-label required">Categoria <abbr
				title="required">*</abbr>
			</label> <select name="categoriaId" require>
				<%
					for (Categoria item : categorias) {
				%>
				<option value="<%=item.getId()%>"
					<%=!anuncio.isNovoRegistro() && anuncio.getCategoria().getId() == item.getId() ? "selected" : ""%>><%=item.getNome()%></option>
				<%
					}
				%>
			</select>
		</div>
		<div class="form-group">
			<label class="control-label required">Anunciante <abbr
				title="required">*</abbr>
			</label> <select name="anuncianteId" require>
				<%
					for (Anunciante item : anunciantes) {
				%>
				<option value="<%=item.getId()%>"
					<%=!anuncio.isNovoRegistro() && anuncio.getAnunciante().getId() == item.getId() ? "selected" : ""%>><%=item.getNome()%></option>
				<%
					}
				%>
			</select>
		</div>
		<div class="form-group">
			<label class="control-label required">Validade <abbr
				title="required">*</abbr>
			</label> <input type="text" class="form-control" name="dataValidade"
				value="<%=anuncio.getDataValidade().toString()%>" required />
		</div>
		<button class="btn btn-primary" type="button"
			onclick="onSalvarAnuncio()">Salvar</button>
		<button class="btn btn-primary" type="button"
			onclick="onVoltarAnuncio()">Voltar</button>
	</form>
</div>
<script type="text/javascript">
	<jsp:include page="/Anuncios/EditarAnuncio.js" />
</script>
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/WebContent/Anuncios/ListarAnuncio.js
function onEditarAnuncio(id)
{
	if(id)
	{
		executarCommand("/com.pos.pioo/Controller?command=EditarAnuncio&id=" + id);
	}
	else
	{
		executarCommand("/com.pos.pioo/Controller?command=EditarAnuncio");
	}
}
function onDeletarAnuncio(id){
	if(confirm("Deseja deletar o anuncio?"))
	{
		executarCommand("/com.pos.pioo/Controller?command=DeletarAnuncio&id=" + id);
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/WebContent/Anuncios/ListarAnuncio.jsp
<%@ page import="domain.Anuncio"%>
<%@ page import="java.util.ArrayList"%>
<%@ page import="java.util.List"%>
<div class="panel panel-default">
	<!-- Default panel contents -->
	<div class="panel-heading">Lista de anúncio</div>
	<div>
		<button class="btn btn-primary" type="button"
			onclick="onEditarAnuncio()">Novo Anúncio</button>
	</div>
	<!-- Table -->
	<table class="table">
		<tr>
			<th></th>
			<th>Categoria</th>
			<th>Anuncio</th>
			<th>Validade</th>
		</tr>
		<%
			List<Anuncio> anuncios = (List<Anuncio>) request.getAttribute("anuncios");
			for (Anuncio item : anuncios) {
		%>
		<tr>
			<td>
				<button type="button" class="btn btn-info btn-sm"
					onclick="onEditarAnuncio('<%=item.getId()%>')">
					<span class="fa fa-pencil"></span>
				</button>
				<button type="button" class="btn btn-danger btn-sm"
					onclick="onDeletarAnuncio('<%=item.getId()%>')">
					<span class="fa fa-trash-o"></span>
				</button>
			</td>
			<td><%=item.getCategoria().getNome()%></td>
			<td><%=item.getAnunciante().getNome()%></td>
		</tr>
		<%
			}
		%>
	</table>
</div>
<script type="text/javascript">
	<jsp:include page="/Anuncios/ListarAnuncio.js" />
</script>
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/WebContent/Anuncios/MostrarAnuncios.jsp
<%@ page import="domain.Anuncio"%>
<%@ page import="java.util.ArrayList"%>
<%@ page import="java.util.List"%>
<%
	ArrayList<Anuncio> anuncios = (ArrayList<Anuncio>) request.getAttribute("anuncios");
%>
<div class="row">
	<%
		for (Anuncio item : anuncios) {
	%>
	<div class="col-2">
		<h3><%=item.getCategoria().getNome()%></h3>
		<div>
			<%=item.getCategoria().getNome()%>
		</div>
	</div>
	<%
		}
	%>
</div>
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/WebContent/Categoria/EditarCategoria.js
function onVoltarCategoria(){
	executarCommand("/com.pos.pioo/Controller?command=ListarCategoria");
}
function onSalvarCategoria(){
	var valores = $('#CategoriaFormulario').serialize();
	var command = "/com.pos.pioo/Controller?command=SalvarCategoria&" + valores;
	executarCommand(command);
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/WebContent/Categoria/EditarCategoria.jsp
<%@ page import="domain.Categoria"%>
<%
	Categoria categoria = (Categoria) request.getAttribute("categoria");
%>
<div class="panel panel-default">
	<!-- Default panel contents -->
	<div class="panel-heading">Cadatrar Categoria</div>
	<form id="CategoriaFormulario">
		<input type="hidden" name="id" value="<%=categoria.getId()%>" /> <input
			type="hidden" name="isnew" value="<%=categoria.isNovoRegistro()%>" />
		<div class="form-group">
			<label class="control-label required">Nome <abbr
				title="required">*</abbr>
			</label> <input type="text" class="form-control" name="nome"
				value="<%=categoria.getNome()%>" required />
		</div>
		<button class="btn btn-primary" type="button"
			onclick="onSalvarCategoria()">Salvar</button>
		<button class="btn btn-primary" type="button"
			onclick="onVoltarCategoria()">Voltar</button>
	</form>
</div>
<script type="text/javascript">
	<jsp:include page="/Categoria/EditarCategoria.js" />
</script>
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/WebContent/Categoria/ListarCategoria.js
$(document).ready(function(){
});
function onEditarCategoria(id)
{
	if(id)
	{
		executarCommand("/com.pos.pioo/Controller?command=EditarCategoria&id=" + id);
	}
	else
	{
		executarCommand("/com.pos.pioo/Controller?command=EditarCategoria");
	}
}
function onExluirCategoria(id){
	if(confirm("Deseja deletar o categoria?"))
	{
		executarCommand("/com.pos.pioo/Controller?command=DeletarCategoria&id=" + id);
	}
}
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/WebContent/Categoria/ListarCategoria.jsp
<%@ page import="domain.Categoria"%>
<%@ page import="java.util.ArrayList"%>
<%@ page import="java.util.List"%>
<div class="panel panel-default">
	<!-- Default panel contents -->
	<div class="panel-heading">Lista de categorias</div>
	<div>
		<button class="btn btn-primary" type="button"
			onclick="onEditarCategoria()">Nova Categoria</button>
	</div>
	<!-- Table -->
	<table class="table">
		<tr>
			<th></th>
			<th>Nome</th>
		</tr>
		<%
			List<Categoria> categorias = (List<Categoria>) request.getAttribute("categorias");
			for (Categoria item : categorias) {
		%>
		<tr>
			<td>
				<button type="button" class="btn btn-info btn-sm"
					onclick="onEditarCategoria('<%=item.getId()%>')">
					<span class="fa fa-pencil"> </span>
				</button>
				<button type="button" class="btn btn-danger btn-sm"
					onclick="onExluirCategoria('<%=item.getId()%>')">
					<span class="fa fa-trash-o"></span>
				</button>
			</td>
			<td><%=item.getNome()%></td>
		</tr>
		<%
			}
		%>
	</table>
</div>
<script type="text/javascript">
	<jsp:include page="/Categoria/ListarCategoria.js" />
</script>
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/WebContent/index.jsp
	
		
		
			
			
			
			
			
		
	
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/WebContent/META-INF/MANIFEST.MF
Manifest-Version: 1.0
Class-Path: 
PosGraduacaoProjetoImplementacaoDeOO/com.pos.estacio/WebContent/Shared/menu.js
function executarCommand(url){
	$("#com-pos-pioo-div-principal").load(url);
}
function executarCommandBody(url, dados)
{
	$.ajax({
		type: "POST",
		url: url,
		data: dados
	}).then(function(resultado){
		$("#com-pos-pioo-div-principal").html(resultado);
	});
}
$(document).ready(function(){
	$(".com-pos-pioo-menu-homes").on("click",

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais