Você está na página 1de 2

CONCURSO PBLICO PARA O PROVIMENTO DE CARGOS/FUNES VAGOS E FORMAO DE CADASTRO RESERVA

Expectativa de Respostas das Questes Discursivas <ANALISTA DE SISTEMAS> QUESTO 1 a) Ser considerada a escrita correta das classes Java de acordo com a notao UML utilizada na figura, por atributo. A utilizao das anotaes de maneira que a persistncia das classes reflita de maneira fiel o modelo representado pela figura. So anotaes obrigatrias na reposta> @Entity, @Id e as anotaes para mapear os relacionamentos (mnimo de 12 anotaes). Anotaes adicionais que no comprometam o mapeamento sero desconsideradas. @Entity public class Cliente implements Serializable{ @Id private int idcliente; private String nome; private String endereco; @OneToMany(mappedBy="cliente",fetch= FetchType.LAZY) )//Tipo do Fetch opcional private List<Conta> contas; } @Entity public class Conta implements Serializable{ @Id private Integer idconta; private String hidrometro; private double consumo; @ManyToOne(fetch= FetchType.EAGER)//Tipo do Fetch opcional @JoinColumn(name="idcliente") private Cliente cliente; @ManyToOne(fetch= FetchType.EAGER) @JoinColumn(name="idfuncionario") private Funcionario funcionario; } @Entity public class Funcionario implements Serializable{ @Id private Integer idfuncionario; private String nome; @OneToMany(mappedBy="funcionario",fetch= FetchType.LAZY) )//Tipo do Fetch opcional private List<Conta> contas; }

b) O candidato dever escrever de maneira correta a expresso HQL que realiza a consulta, conforme solicitada no comando da questo. A resposta deve fazer uso da notao HQL e funcionar corretamente, deve ser utilizada a notao orientada a objetos ou mesmo inner join, desde que produza o resultado esperado. Ser considerada a utilizao da operao de agregao e o uso adequado do HQL para combinar as tabelas. select sum(conta.consumo) from Conta conta where conta.funcionario.nome = 'Geraldo Silva' and conta.cliente.nome = 'Joo Maria'

QUESTO 2 a) O candidato dever escrever corretamente uma instruo em SQL, baseada na sintaxe a ser executada no PostgreSQL que retorne os valores dos campos nome e precovenda, onde o valor do campo nome dever conter a string BERMU e a data o valor do campo datapreco seja a data mais nova registrada. Ser considerada a implementao correta do subselect para selecionar o valor do campo datapreco mais novo e a implementao correta da clusula que condiciona a seleo da string BERMU. A instruo construda dever ser baseada no modelo representado pela figura que segue: select produto.nomeproduto, (select precoproduto.precovenda from precoproduto precoproduto where produto.idproduto = precoproduto.idproduto and datapreco = (select max(datapreco) from precoproduto precoproduto where produto.idproduto = precoproduto.idproduto)) from produto produto where produto.nomeproduto like '%BERMU%' b) O candidato dever escrever corretamente uma instruo em SQL, baseada na sintaxe a ser executada no PostgreSQL que retorne os valores dos campos codigobarras, nome e precovenda, onde o valor do campo precominimo seja 50% menor que o valor do campo precovenda. Ser considerada a implementao correta da clusula que condiciona o valor do campo precominimo em relao ao campo precovenda e a implementao correta do join que representa o relacionamento entre as tabelas representadas pelo modelo. A instruo construda dever ser baseada no modelo representado pela figura que segue: select produto.codigobarras, produto.nomeproduto,precoproduto.precovenda from produto produto inner join precoproduto precoproduto on precoproduto.idproduto = produto.idproduto where precoproduto.precominimo < (precoproduto.precovenda/2)