Escolar Documentos
Profissional Documentos
Cultura Documentos
Apresentao. ................................................................................................................................. 2
1.1.
A Banca. ...................................................................................................................................... 2
1.2.
2.
4.
5.
Gabarito. ....................................................................................................................................... 29
Ol Pessoal!
Primeiramente sejam bem vindos a este curso. Antes de iniciarmos vou falar um
pouquinho sobre mim. Sou graduado em Anlise de Sistemas com Ps Graduao em
Engenharia de Software e MBA em Gerenciamento de Projetos. Atualmente sou
funcionrio do Banco do Brasil, cedido Caixa de Previdncia dos Funcionrios do Banco
do Brasil (PREVI), no Rio de Janeiro. Grande parte da minha trajetria profissional foi
voltada para a rea de desenvolvimento de aplicaes web utilizando a linguagem Java,
a qual eu possuo as Certificaes SCJP (Sun Java Certified Programmer), OCWCD (Oracle
Certified Web Component Developer e OCJA (Oracle Certified Java Architect) Part
I.Atualmente minha funo principal administrar Servidores de Aplicaes com
Servidores Linux, na rea de Infraestrutura. Nessa rea possuo as certificaes RHSA
(Red Hat System Administrator), Big IP Essentials e Advanced (Appliance para
Balanceamento de Carga). Sou autor do Livro Android para Desenvolvedores pela
Editora Brasport e Certificado em ITIL e COBIT Essentials.
Na rea de Concursos Pblicos leciono algumas disciplinas em cursinhos do Rio de
Janeiro e algumas vdeos aulas no grupo ProvasDeTI. Procuro me manter atualizado com
as bancas a fim de identificar os itens mais cobrados nas provas.
Um bom professor no aquele que ensina bem apenas, mas tambm que conhea o
assunto, saiba explicar os pontos principais e o mais importante nesta modalidade de
aulas em PDF, que tenha um material de qualidade. Meu objetivo aqui conseguir
alm de passar os principais pontos a serem estudados, entregar um material de
www.tiparaconcursos.net
Pgina 1 de 30
1. Apresentao.
Este nosso curso ter como foco atender a necessidade do aluno que ir fazer a prova
do TJ/SE e precisa ter conhecimento sobre o contedo publicado no edital, conforme
abaixo:
Desenvolvimento web em Java: Servlets,JSP, Ajax; frameworks JSF e Hibernate
1.1.
A Banca.
O foco deste curso voltado principalmente para o CESPE, pois ser a organizadora do
concurso alvo deste curso. Como o conjunto de questes deste assunto para esta Banca
limitado, iremos fazer questes de outras bancas tambm para consolidar o
conhecimento sobre os principais pontos que sero abordados porm se entrar no
mrito das especificidades da Banca, utilizando as questes apenas para testar o nosso
conhecimento nos assuntos que precisaremos dominar.
Com o conhecimento adquirido ao final deste curso teremos capacidade de aproveitar o
contedo adquirido para outras provas que cobrem tambm estes assuntos.
1.2.
Pgina 2 de 30
www.tiparaconcursos.net
Pgina 3 de 30
2. Questes Comentadas
Antes de iniciarmos nossas questes, que tal fazermos uma breve reviso sobre o assunto?
JSF
JSF ou Java Server Faces um framework para desenvolvimento de componentes web
baseado no padro MVC (Model View Controller).
O JSF permite desenvolver interfaces grficas a partir de uma srie de interfaces j
existentes. Este framework faz a ligao entre os eventos do lado do cliente com os
manipuladores de eventos no lado servidor.
Utiliza o conceito de backing bean para manipular as informaes. Um bean nada mais do
que uma classe Java que segue algumas caractersticas para permitir o encapsulamento das
informaes, atravs do acesso a variveis apenas por meio de mtodos e com a existncia
de um construtor vazio. Quanto aos mtodos, estes so divididos em getters e setters. Um
backing bean ser uma classe que seguir os padres de um bean e ir permitir que uma
pgina JSF acesse as propriedades de um bean.
Um arquivo muito importante e essencial para fazer a associao entre os backing beans e
as pginas JSF o faces-config.xml. At a verso 1.2 esta era a nica forma de fazer o
mapeamento entre entidades.
O JSF fornece um conjunto de tags JSP para que os componentes possam ser acessados.
Uma outra caracterstica a utilizaoo de Ajax em seus componentes, tornando a
navegaoo mais rpida e eficiente.
O JSF 2 a verso que possibilita o mapeamento de entidades atravs de anotaes ao
invs apenas de configurao no arquivos faces-config.xml.
O JSF 2 utiliza facelets como template padro, enquanto JSF 1 utilizava JSPs.
Facelets uma poderosa e leve linguagem de declarao de pgina que usada para
construir visualizaes em JSF usando estilos de templates HTML e para construir rvores de
componentes, que utiliza da tecnologia XHTML para a criao de pginas web. O mais
interessante e utilizado desta tecnologia a possibilidade de criar templates para pginas
JSF.
www.tiparaconcursos.net
Pgina 4 de 30
Servlets
Servlets so classes Java utilizadas para estenderem as funcionalidades de um servidor,
respondendo requisies e executando no lado do Servidor, e no no cliente. uma
tecnologia bem semelhante ao CGI, porm possui alguns diferenciais que so uma grande
vantagem da linguagem Java e um dos motivos do sucesso alcanado pelo Apache Tomcat,
que so:
Servlets no rodam em um processo separado por cada requisio que o servidor recebe;
Servlets so mantidos na memria entre uma requisio e outra;
O servidor mantm apenas uma instncia carregada de cada servlet no container que ir
servir as requisies concorrentemente.
E os JSPs? Bom, esses so as famosas Java Server Pages, que uma tecnologia Java que
permite que os desenvolvedores possam gerar pginas web de forma dinmica, mesclando
funcionalidades java em documentos html.
Servlet Filters um recurso do Java EE para interceptar uma requisio web antes do
recurso final ser atingido, este recurso pode ser um servlet, um arquivo, entre outros. Filtros
so muito teis quando precisamos configurar o ambiente para o recurso a ser atingido,
como por exemplo, abrir e fechar a sesso do hibernate (openSessionInView), verificar se o
usurio est logado ou se tem permisso de fazer a requisio, permitindo ou no acessar o
recurso.
JPA
JPA um framework utilizado na camada de persistncia para que o desenvolvedor tenha
uma maior produtividade, funcionando como um padro para poder fazer o mapeamento
dos objetos do mundo Java para o banco de dados.
conhecido como um framework ORM (Object Relational Mapping), ou seja, mapeamento
objeto relacional, no qual descreve os objetos em aplicaes Java para tabelas em banco de
dados relacional, utilizando metadados ou anotaes que iro fazer o mapeamento entre os
objetos e o respectivo item no banco de dados.
O JPA consiste de quatro reas: o JPA em si, a linguagem de query, a API Criteria e os
metadados de mapeamento relacional.
www.tiparaconcursos.net
Pgina 5 de 30
Query language define queries para entidades e seus estados persistente. Permite que
sejam escritas consultas que iro funcionar independentes do tipo de armazenamento.
Criteria API possibilita que sejam escritas consultas utilizando APIs especficas para cada
mtodo que ser executado.
Os metamodelos so as diferentes formas de configurao atravs de arquivos e atravs de
anotaes para que possa ser feita a associao correta entre os objetos e os tipos de dados
no banco de dados.
Por se tratar de um assunto muito extenso, iremos nos aprofundar conforme formos vendo
algumas questes bem especficas.
www.tiparaconcursos.net
Pgina 6 de 30
3. Questes Comentadas
Pgina 7 de 30
Pgina 8 de 30
www.tiparaconcursos.net
Pgina 9 de 30
Pgina 10 de 30
instrues
indicam
existncia
de
um bean gerenciado
classe Funcionario.java ) no pacote bean que poder ser referenciado nas pginas JSP
por meio da palavra func . O arquivo correto no qual essas instrues so colocadas
o
www.tiparaconcursos.net
Pgina 11 de 30
(A) context.xml.
(B) web-inf.xml.
(C) web.xml.
(D) faces - config.xml.
(E) config - bean.xml.
Comentrios: Qual o principal arquivo de configurao existente at a verso 1.2 do JSF?
Exatamente, o faces-config.xml. Caso a questo estivesse falando sobre verses mais
recentes deste framework, uma outra alternativa seria a utilizao de anotaes para
especificar as configuraes.
GABARITO: D
Pgina 12 de 30
(D) prerender
Comentrios: O metodo destroy utilizado para liberao de recursos, por exemplo.
Imagine que o seu servlet abra conexes com o banco de dados, ou manipule arquivos.
Voce pode utilizar o mtodos destroy para garantir que todas as conexes abertas pelo
servlet sero finalizadas, ou garantir que todos os arquivos que foram abertos sero
fechados. O mtodo destroy executado pelo prprio container, ao final do ciclo de vida
do servlet.
GABARITO: C
Pgina 13 de 30
a utilizao de swing.
(B) JavaServer Pages uma tecnologia Java utilizada para embutir cdigos de
programao Java em pginas XML. Arquivos JSP executam no computador cliente.
JSP so utilizados para embutir programao em pginas html, e no pginas xml.
Arquivos JSP so executados no lado cliente, porm so processados no lado servidor,
uma vez que se transformam em classes servlets.
(C) As interfaces normalmente utilizadas para executar operaes de conexo e
manipulao de dados em um banco de dados relacional podem ser encontradas no
pacote javax.swing.sql.
alternativa completamente errada, uma vez que o pacote swing utilizado para criao
de componentes grficos de interface.
(D) Na linguagem Java no existe tipos de dados primitivos. Todos os tipos de dados
so objetos, por isso, possvel afirmar que Java uma linguagem totalmente
orientada a objetos.
Na linguagem java existem vrios tipos primitivos, entre eles int, boolean, char, double e
float.
(E) Ao compilar uma classe Java gerado um arquivo com extenso .class, chamado
de bytecode.
Esta uma caracterstica da linguagem java, onde as classes java so compiladas e
geradas .class correspondente que sero interpretados pela JVM local.
GABARITO: E
servidores,
em
diferentes
sistemas
operacionais.
III. As Servlets podem acessar qualquer uma das APIs Java. Uma Servlet pode usar a
API JDBC para acessar e armazenar dados ou para acessar objetos remotos.
www.tiparaconcursos.net
Pgina 14 de 30
IV. Ao criar uma Servlet, somos obrigados a reescrever nove mtodos presentes
interface que foi implementada.
(A) Apenas I e II.
(B) Apenas I e III.
(C) Apenas II e III.
(D) Apenas I, II e III.
(E) I, II, III e IV.
Comentrios: Vamos analisar as alternativas e veremos quais se encontram corretas.
Assertiva I diz que Servlets so implementadas como arquivos da linguagem Java, e isto
est correto, uma vez que servlets nada mais so do que classes java que implementam
uma interface para prover funcionamento como servlet.
J a assertiva II diz que servlets so independentes de plataforma, e isto est correto
tambm, pois uma caractersticas da linguagem java ser independente de plataforma.
A assertiva III se encontra correta tambm pois expressa uma caracterstica desta
tecnologia. A assertiva IV est errada, pois no somos obrigados a reescrever todos os
mtodos da interface. Iremos reescrever apenas os que sero utilizados, na prtica os
mais comuns so os doGet e doPost.
GABARITO: D
Pgina 15 de 30
(E) so carregadas apenas uma vez e, para cada nova requisio, a servlet gera uma
nova thread.
Comentrios: As servlets fornecem um mecanismo simples e consistente para estender
a funcionalidade de um servidor Web. Uma servlet pode ser pensada como uma
pequena aplicao que roda no servidor.
A API utilizada na escrita das servlets no se preocupa em como ela carregada, com o
ambiente em que ela rodar ou com o protocolo usado no envio e recebimento de
informaes. Isto faz com que as servlets possam ser incorporadas em vrios
servidores Web diferentes.
Algumas das principais vantagens do uso de servlets em relao s CGIs so:
Independncia de plataforma: as servlets podem rodar em qualquer plataforma sem a
necessidade de serem reescritas ou compiladas novamente.;
Desempenho: carrega-se um novo programa CGI para cada requisio ao servidor. Isto
quer dizer que se tivermos 10 requisies simultneas, teremos 10 programas iguais na
memria. As servlets so carregadas apenas uma vez e para cada nova requisio
a servlet gera uma nova thread. O mtodo init()da servlet, assim como nas applets,
ocorre apenas na primeira vez que a classe carregada. geralmente no
mtodo init() que, por exemplo, estabelece-se uma conexo ao banco de dados. Cada
uma das threads geradas pode usar a mesma conexo aberta no mtodo init(). Este
tipo de tratamento melhora o desempenho da servlet, j que a conexo ao banco de
dados feita apenas uma vez e todas as outras requisies usam esta conexo. A figura
4.1 apresenta o ciclo de vida da servlet.
GABARITO: A
Pgina 16 de 30
www.tiparaconcursos.net
Pgina 17 de 30
(C) destroy ()
(D) invalidade ()
(E) release ()
Comentrios: Uma questo bem simples, apenas para sabermos que o mtodo da
classe servlet responsvel por invalidar uma sesso de usurio o mtodo
invalidade.
O mtodo destroy acionado ao final do ciclo de vida de uma servlet.
GABARITO: D
www.tiparaconcursos.net
Pgina 18 de 30
Quando um objeto inicialmente criado, seu estado Novo (New). Neste estado o
objeto no est associado a um Entity Manager, e no possui representao no banco
de dados.
O objeto passa para o estado Gerenciado (Managed) quando persistido para o banco
de dados atravs do mtodo persist de um EntityManager.
Quando um objeto de entidade no estado Gerenciado for recuperado da base de dados
e marcada para deleo, utilizado o mtodo remove do EntityManager, ento o objeto
tem seu estado alterado para Removido (Removed), e fisicamente deletado da base de
dados durante o commit.
O ltimo estado Destacado (Detached), representa um objeto que foi desconectado do
entity Manager. Quanto um Entity Manager fechado, todos os objetos se tornam
detached.
Gabarito A
www.tiparaconcursos.net
Pgina 19 de 30
(C) armazena os mapeamentos das aes e regras de navegao em projetos JSF nos
arquivos WEB- INF.xml e FACES-CONFIG.xml.
(D) possui bibliotecas que suportam Ajax (Asynchronous JavaScript And XML).
(E) prov um conjunto de tags limitado para criar somente pginas HTML/XHTML.
Comentrios: J vimos todas as alternativas nas questes anteriores, e conseguimos
descartar todas elas, sobrando apenas a alternativa D que diz sobre a utilizao de Ajax
no JSF, no conseguindo portanto eliminar esta alternativa.
GABARITO: D
grande
limitao
do
JSF
dificuldade
de
integrao
com
grande
limitao
do
JSF
dificuldade
de
integrao
com
Pgina 20 de 30
(E) Define uma nica forma para realizar a validao de dados em formulrios JSP, por
meio da implementao de uma classe de validao que estende a interface Validator.
Esta no a nica forma, pois existe uma biblioteca padro para validar alguns aspectos
mais especficos, tais como o tamanho de um campo.
GABARITO: D
www.tiparaconcursos.net
Pgina 21 de 30
www.tiparaconcursos.net
Pgina 22 de 30
www.tiparaconcursos.net
Pgina 23 de 30
instrues
indicam
existncia
de
um bean gerenciado
classe Funcionario.java ) no pacote bean que poder ser referenciado nas pginas JSP
por meio da palavra func . O arquivo correto no qual essas instrues so colocadas
o
(A) context.xml.
(B) web-inf.xml.
(C) web.xml.
(D) faces - config.xml.
(E) config - bean.xml.
Pgina 24 de 30
(C) destroy
(D) prerender
servidores,
em
diferentes
sistemas
operacionais.
III. As Servlets podem acessar qualquer uma das APIs Java. Uma Servlet pode usar a
API JDBC para acessar e armazenar dados ou para acessar objetos remotos.
IV. Ao criar uma Servlet, somos obrigados a reescrever nove mtodos presentes
interface que foi implementada.
(A) Apenas I e II.
www.tiparaconcursos.net
Pgina 25 de 30
www.tiparaconcursos.net
Pgina 26 de 30
www.tiparaconcursos.net
Pgina 27 de 30
grande
limitao
do
JSF
dificuldade
de
integrao
com
www.tiparaconcursos.net
Pgina 28 de 30
5. Gabarito.
1 -A
2-A
2 -B
4 -C
5 -D
6 - CERTO
7 -C
8 -E
9 -D
10 - A
11 - B
12 - D
13 - D
14 - A
15 - D
16 - D
www.tiparaconcursos.net
Pgina 29 de 30
www.tiparaconcursos.net
Pgina 30 de 30