Concurso Público 2010 Analista de Sistema Desenvolvimento Padrão Resposta das Questões Discursivas Questão 1 Venda public class Venda { java.util.Date data; Cliente cliente; Set<ItemVenda> itensVenda; } Cliente public class Cliente { String nome; String endereco; String telefone; java.util.Set<Venda> vendas; } public class ItemVenda { Produto produto; Int quantidade; } public class Produto { String nome; Java.math.BigDecimal precoUnitario; } public class CategoriaProdutos { String nome; Set<CategoriaProdutos> subcategorias; Set<Venda> vendas; } Questão 2 a) b) 1ª solução: SELECT Cliente.numero, Cliente.nome FROM Cliente C WHERE NOT EXISTS ( SELECT 1 FROM Cliente-Produto CP WHERE CP.idCliente = C.id ) ORDER BY Cliente.numero DESC, Cliente.nome DESC 2ª solução: SELECT Cliente.numero, Cliente.nome FROM Cliente C WHERE C.id NOT IN ( SELECT CP.idCliente FROM Cliente-Produto CP ) ORDER BY Cliente.numero DESC, Cliente.nome DESC Questão 3 Questão 4 Usuario u = new Usuario( ); u.setId(1); UsuarioDao uDao = new UsuarioDao( ); u = uDao.getUsuarioById(u ); Questão 5 package br.uerj.dinfo.model.; import br.uerj.dinfo.pojo.Usuario; import java.util.List; public class UsuarioGeneric extends Generic { public Usuario getUsuario(Usuario usuario){ String sql = "SELECT U FROM Usuario U LEFT JOIN FETCH U.orgao "+ "WHERE U.identidadeUsuario='"+ usuario.getIdentidadeUsuario()+"'AND U.flagAtivo='S'"; return (Usuario)getUniqueElement(sql); } public List getTodosUsuarios( ){ String sql = "SELECT U FROM Usuario U LEFT JOIN FETCH U.orgao"; return query (sql); } }