Arquitetura de Sistemas para WEB com Java Utilizando Design Patterns e Frameworks

VITRINE Os TOP de vendas !!

Por: R$ 145,00ou X de

+-
Comprar
Opções de Parcelamento:
  • à vista R$ 145,00
  • 2X de R$ 72,50 sem juros
Outras formas de pagamento

Quem viu este produto , comprou

Quem viu este produto , também se interessou

  • Descrição
    Arquitetura de Sistemas para WEB com Java Utilizando Design Patterns e Frameworks

    Esse livro apresenta os principais design patterns e frameworks utilizados no desenvolvimento de aplicações web na plataforma Java. Cada capítulo é estruturado com introdução, apresentação dos conceitos teóricos, exemplos práticos explicados passo a passo, resumo e lista de exercícios.

    Para facilitar a compreensão dos conceitos teóricos apresentados, um mesmo exemplo é desenvolvido nos diversos capítulos do livro, utilizando uma mistura de design patterns e frameworks diferentes.

    No decorrer dos capítulos é apresentada a Arquitetura em Três Camadas, o padrão MVC, as tecnologias Java Servlet/JSP, as formas de reuso de componentes com os design patterns MVC, DAO, Front Controller, View Helper, Command, Intercepting Filter, Session Facade, DTO, Business Object, Application Service e os frameworks Hibernate, Spring, JavaServer Faces com EJB, Struts e Bean Validation. Apresenta ainda as bibliotecas JSTL e as tendências para o futuro do desenvolvimento de software com ferramentas de apoio ao desenvolvimento rápido, como Genexus, MagicSoftware iBOLT, uniPaaS, ERwin, DBDesigner, MySQL WorkBench e os ambientes de desenvolvimento NetBeans IDE, Visual Studio IDE e DreamWeaver IDE.

    Respostas dos exercícios e alguns exemplos apresentados no livro disponíveis em www.lcm.com.br para download.
  • Sobre o Autor
  • Especificação

    Características

    AssuntosHibernate, Spring, Struts, Net Beans, Java Web, JavaServer Faces (JSF), JavaServer Pages (JSP), Java Servlet
    Tipo de LivroLivro Físico

    Especificações

    Sobre o AutorEvandro Carlos Teruel

    Evandro Carlos Teruel é formado em Tecnologia em Processamento de Dados e Especialista em Projeto e Desenvolvimento de Sistemas para Web e também em Segurança da Informação. Cursou mestrado em Tecnologia na linha de pesquisa Gestão da Tecnologia da Informação. Já atuou na área de desenvolvimento de software e, atualmente, é gestor e professor universitário.

    O autor possui diversos livros na área de desenvolvimento para Internet, dentre eles Web Total e Web Mobile.
    Informações Técnicas Sumário

    Capítulo 1 - Arquitetura de aplicações web em três camadas

    1.1 Java Servlets - 02
    1.2 JavaServer Pages - 03
    1.3 Modelo de arquitetura em três camadas - 04
    1.4 O padrão MVC - 05
    1.4.1 O componente Model do MVC - 07
    1.4.2 O componente View do MVC - 08
    1.4.3 O componente Controller do MVC - 08
    1.5 Regras de negócio - 09
    1.6 Diferenças entre o padrão MVC e a Arquitetura em Três Camadas - 10
    1.7 Resumo - 12
    1.8 Exercícios - 13

    Capítulo 2 - Exemplo de aplicação web utilizando a Arquitetura em Três Camadas e o padrão MVC

    2.1 Arquitetura da aplicação - 16
    2.1.1 Diagrama de casos de uso da aplicação - 16
    2.1.2 Diagrama de classe da arquitetura da aplicação - 17
    2.1.2.1 Breve descrição das classes da arquitetura - 18
    2.1.3 Diagrama de classes da aplicação - 9
    2.1.4 Diagrama de pacotes da arquitetura da aplicação - 21
    2.2 Banco de dados da aplicação - 22
    2.3 Criação dos componentes da aplicação - 23
    2.3.1 Criação do Projeto no NetBeans - 24
    2.3.2 Criação dos componentes do projeto - 24
    2.3.2.1 Breve descrição dos componentes do projeto - 26
    2.3.3 Criação do Banco de Dados e das tabelas - 28
    2.3.4 Adicionando o JDBC MySQL Driver ao projeto - 31
    2.3.5 Arquivos representados no componente View do MVC - 31
    2.3.5.1 Arquivo Cascading Style Sheets (CSS) - 32
    2.3.5.2 Menu principal - 34
    2.3.5.3 Menu Departamentos - 36
    2.3.5.4 Incluir departamento - 38
    2.3.5.5 Pesquisar departamento para modificar os dados - 41
    2.3.5.6 Alteração dos dados do departamento - 42
    2.3.5.7 Exclusão de departamentos - 45
    2.3.5.8 Consultar um departamento - 47
    2.3.5.9 Exibição dos dados dos departamentos pesquisados - 48
    2.3.5.10 Menu Funcionários - 51
    2.3.5.11 Incluir funcionário - 53
    2.3.5.12 Pesquisar funcionário para modificar os dados - 58
    2.3.5.13 Alteração dos dados do funcionário - 59
    2.3.5.14 Exclusão de funcionários - 64
    2.3.5.15 Consultar um funcionário - 66
    2.3.5.16 Exibição dos dados dos funcionários pesquisados - 67
    2.3.5.17 Exibição das mensagens de retorno ao usuário - 70
    2.3.6 Servlet representada no componente Controller do MVC - 73
    2.3.6.1 Servlet de controle de fluxo da aplicação - 73
    2.3.7 Classes representadas no componente Model do MVC - 81
    2.3.7.1 Classes de entidade – Value Object (VO) - 81
    2.3.7.2 Classes de negócio – Application Services - 85
    2.3.7.3 Classes de persistência – Data Access Object (DAO) - 89
    2.4 Considerações finais sobre o exemplo apresentado - 100
    2.5 Resumo - 101
    2.6 Exercícios - 101

    Capítulo 3 - Reuso de componentes: Design Patterns e Frameworks

    3.1 Framework - 103
    3.2 Design Pattern - 105
    3.3 Principais Frameworks utilizados - 106
    3.3.1 Frameworks para desenvolvimento de software com Java - 106
    3.3.1.1 Hibernate - 107
    3.3.1.2 Spring - 108
    3.3.1.3 JavaServer Faces - 110
    3.3.1.4 Struts - 112
    3.3.1.5 Bean Validation - 114
    3.3.2 Principais design patterns utilizados no desenvolvimento de software - 115
    3.3.2.1 MVC - 115
    3.3.2.2 Data Access Object (DAO) - 116
    3.3.2.3 Front Controller - 118
    3.3.2.4 View Helper - 119
    3.3.2.5 Command - 120
    3.3.2.6 Intercepting Filter - 121
    3.3.2.7 Session Facade - 122
    3.3.2.8 Data Transfer Object (DTO) - 123
    3.3.2.9 Business Objects - 124
    3.3.2.10 Application Service - 125
    3.4 Resumo - 125
    3.5 Exercícios - 126

    Capítulo 4 - Hibernate
    4.1 A comunicação Java/Banco de dados - 130
    4.2 Hibernate e JPA - 131
    4.3 Vantagens do uso do Hibernate - 132
    4.4 Arquitetura do Hibernate - 133
    4.5 Exemplo simples de configuração e uso do Hibernate - 134
    4.5.1 Criação do banco de dados e da tabela - 135
    4.5.2 Criação do projeto utilizando o NetBeans - 135
    4.5.3 Adição do driver JDBC MySQL na biblioteca do projeto - 137
    4.5.4 Criação da classe de persistência - 137
    4.5.5 Criação do arquivo de mapeamento - 141
    4.5.6 Criação do arquivo de configuração do Hibernate - 146
    4.5.7 Classe de ajuda para a inicialização do Hibernate - 149
    4.5.8 Incluindo e consultando informações da tabela - 151
    4.5.9 Outras operações no banco de dados utilizando o Hibernat - 155
    4.5.9.1 Alteração de registros na tabela - 156
    4.5.9.2 Exclusão de registros na tabela - 156
    4.5.10 Consultas - 157
    4.5.10.1 Consultas com SQL nativo - 158
    4.5.10.1.1 Consulta com retorna de apenas uma linha - 158
    4.5.10.1.2 Consulta com retorno de múltiplas linhas - 159
    4.5.10.2 Consultas com HQL - 160
    4.5.10.2.1 Consulta HQL com retorno de uma linha - 160
    4.5.10.2.2 Consulta HQL com retorno de múltiplas linhas - 161
    4.5.10.3 Diferenças entre utilizar HQL e SQL - 162
    4.5.10.4 Consultas por critérios - 162
    4.5.10.4.1 Consulta por critérios com retorno de uma linha - 163
    4.5.10.4.2 Consulta por critério com retorno de múltiplas linhas - 164
    4.5.10.4.3 Consultas por critérios com restrições - 165
    4.5.10.5 Consultas por exemplos - 166
    4.5.10.6 Formas de percorrer uma lista de objetos retornados na consulta - 167
    4.6 Hibernate Annotations - 170
    4.7 Exemplo com Hibernate Annotations - 171
    4.8 Sessões do Hibernate - 176
    4.8.1 Sessão por operação (session-per-operation) - 176
    4.8.2 Sessão por requisição (session-per-request) - 180
    4.8.3 Como implementar sessão por requisição (session-per-request) - 180
    4.8.3.1 Filtro de requisições - 180
    4.9 Exemplo de aplicação com Hibernate mapeando entidades com grau de relacionamento 1:n - 183
    4.9.1 Arquitetura da aplicação - 183
    4.9.2 Distribuição dos componentes nas camadas do MVC - 186
    4.9.3 Bando de dados da aplicação - 190
    4.9.4 Criação do projeto no NetBeans - 191
    4.9.5 Criação dos pacotes no projeto do NetBeans - 192
    4.9.6 Adição do driver JDBC MySQL na biblioteca do projeto - 194
    4.9.7 Criação das classes do projeto - 194
    4.9.8 Criação das páginas do projeto - 197
    4.9.9 Arquivo de configuração do Hibernate - 199
    4.9.10 Controle de sessões do Hibernate - 200
    4.9.11 Filtro de requisições - 201
    4.9.12 Identificador de operações - 204
    4.9.13 Classes do componente Model do MVC - 206
    4.9.13.1 Classes de entidade - 206
    4.9.13.1.1 Criação das classes de persistência - 206
    4.9.13.1.2 Mapeamento das classes de persistência - 211
    4.9.13.1.3 Visão geral das associações 1 para N e N para 1 - 217
    4.9.13.2 Componentes de acesso a dados - 219
    4.9.13.2.1 A Interface DAO - 219
    4.9.13.2.2 A classe DAO - 222
    4.9.13.3 Componentes de execução de comandos - 225
    4.9.13.3.1 A Interface Command - 226
    4.9.13.3.2 As Classes Command - 226
    4.9.14 Servlet do componente Controller do MVC - 246
    4.9.15 Arquivos do componente View do MVC - 247
    4.9.15.1 Fragmento JSP reutilizável - 248
    4.9.15.2 Arquivo de estilos CSS - 249
    4.9.15.3 Arquivos JavaScript de validação de entrada de dados nos campos dos formulários - 255
    4.9.15.4 Controle de departamentos - 259
    4.9.15.4.1 Cadastro de departamentos - 259
    4.9.15.4.2 Consulta de departamentos - 261
    4.9.15.4.3 Atualização de departamentos - 267
    4.9.15.5 Controle de funcionários - 268
    4.9.15.5.1 Cadastro de funcionários - 269
    4.9.15.5.2 Consulta de funcionários - 272
    4.9.15.5.3 Atualização de funcionários - 275
    4.10 Outros tipos de mapeamento com Hibernate - 278
    4.10.1 Associação 1 para 1 - 279
    4.10.2 Associação n para n - 279
    4.11 Considerações finais sobre o exemplo apresentado - 280
    4.12 Resumo - 281
    4.13 Exercícios - 282

    Capítulo 5 - JavaServer Pages Standard Tag Library (JSTL)

    5.1 Bibliotecas JSTL - 286
    5.2 Como disponibilizar JSTL para utilização no projeto - 287
    5.3 Biblioteca JSTL core - 288
    5.3.1 Manipulação de variáveis - 288
    5.3.2 Estruturas de seleção - 289
    5.3.2.1 A estrutura de seleção - 290
    5.3.2.2 Operadores lógicos && (and) e || (or) - 291
    5.3.2.3 A estrutura de seleção - 292
    5.3.3 Laços de repetição - 293
    5.3.3.1 O laço - 293
    5.3.3.1.1 Percorrendo os elementos de uma lista de Strings com - 294
    5.3.3.1.2 Percorrendo os elementos de uma lista de objetos com - 295
    5.3.4 Redirecionamento automático - 298
    5.4 Biblioteca JSTL sql - 300
    5.4.1 Exemplo para incluir um registro no banco de dados - 300
    5.4.1.1 Incluindo valores recebidos como parâmetro - 302
    5.4.2 Exemplo para alterar um registro no banco de dados - 303
    5.4.3 Exemplo para excluir um registro no banco de dados - 304
    5.4.4 Exemplos de consultas - 304
    5.4.5 Consulta para autoincrementar o id em um formulário - 307
    5.5 Biblioteca JSTL fmt - 308
    5.5.1 Formatação de data e hora - 309
    5.5.2 Formatação de números - 311
    5.5.3 Conversão de String para data ou hora - 311
    5.5.4 Conversão de String para número - 312
    5.6 Biblioteca JSTL functions - 313
    5.6.1 Obtenção do número de caracteres de uma String - 314
    5.6.2 Separação das partes de uma String - 314
    5.6.3 Outras funções - 315
    5.7 Exemplos práticos - 316
    5.7.1 Recebendo e exibindo dados validados no servidor - 316
    5.7.2 Como fazer para receber uma lista de objetos do servidor e exibir os dados contidos nesses objetos - 320
    5.8 JSTL e Hibernate - 326
    5.8.1 Como utilizar JSTL nas páginas do projeto criado com Hibernate - 327
    5.8.1.1 Cadastro de Departamentos - 327
    5.8.1.2 Cadastro de Funcionários - 329
    5.8.1.3 Atualização de Departamentos - 331
    5.8.1.4 Atualização de Funcionários - 332
    5.8.1.5 Consulta de Departamentos - 334
    5.8.1.6 Consulta de Funcionários - 336
    5.9 Considerações finais - 338
    5.10 Resumo - 338
    5.11 Exercícios - 340

    Capítulo 6 - JavaServer Faces

    6.1 Arquitetura do JSF - 343
    6.2 Vantagens do uso de JSF - 344
    6.3 Desvantagens do uso do JSF - 345
    6.4 A representação do MVC no JSF - 345
    6.5 Componentes necessários em uma aplicação com JSF - 346
    6.6 Arquivos essenciais da aplicação JSF - 346
    6.6.1 A servlet FacesServlet - 347
    6.6.2 O arquivo de configuração faces-config.xml - 347
    6.6.3 O arquivo descritor de implementação web.xml - 347
    6.7 A Interface com o usuário com JSF - 349
    6.8 Etapas do processo de desenvolvimento de uma aplicação web com JSF - 349
    6.9 Internacionalização - 350
    6.10 Exemplo simples de aplicação com JSF - 350
    6.10.1 Criação do projeto no NetBeans - 350
    6.10.2 Componentes do projeto - 351
    6.10.2.1 Criação dos arquivos de propriedades para internacionalização - 352
    6.10.2.2 Criação do bean gerenciado - 355
    6.10.2.3 Criação do formulário de entrada - 358
    6.10.2.4 Processos que acontecem quando o formulário é submetido - 363
    6.10.2.5 Criação do arquivo de validação - 363
    6.10.2.6 Criação do formulário de exibição - 366
    6.10.2.7 Página de exibição de mensagens de erro - 368
    6.10.2.8 Conteúdo final dos arquivos XML de configuração - 369
    6.11 Validação de dados nas páginas - 370
    6.12 Conversão de dados nas páginas - 372
    6.13 Facelets - 374
    6.13.1 Templates Facelets - 376
    6.14 Expression Language (EL) - 377
    6.15 Principais tags JSF utilizadas nas páginas XHTML - 379
    6.15.1 Biblioteca de facelets - 380
    6.15.1.1 ui:insert e ui:define - 380
    6.15.1.2 ui:composition - 381
    6.15.2 Biblioteca HTML - 381
    6.15.2.1 h:head - 381
    6.15.2.2 h:body - 381
    6.15.2.3 h:outputStylesheet - 381
    6.15.2.4 h:panelGroup - 381
    6.15.2.5 h:form - 382
    6.15.2.6 h:messages - 384
    6.15.2.7 h:outputText - 385
    6.15.2.8 h:inputText - 386
    6.15.2.9 h:commandLink - 388
    6.15.2.10 h:dataTable - 390
    6.15.2.11 h:column - 392
    6.15.2.12 h:panelGrid - 393
    6.15.2.13 h:outputLabel - 395
    6.15.2.14 h:selectOneMenu - 396
    6.15.3 Biblioteca HTML - 398
    6.15.3.1 f:selectItem - 398
    6.15.3.2 f:selectItems - 399
    6.15.3.3 f:converter - 400
    6.15.3.4 f:facet - 401
    6.16 Integração do JSF com outras tecnologias - 402
    6.17 Tipos de controle de transações JPA - 403
    6.18 Termos técnicos Java EE - 404
    6.18.1 Java EE - 405
    6.18.2 EJB 3.0 - 405
    6.18.3 Servidor de aplicações - 406
    6.18.4 Entity beans e EntityManager - 406
    6.18.5 Persistence Unit - 407
    6.18.6 Persistence Context - 408
    6.18.7 Anotações X descritores de implantação - 408
    6.18.8 Uso de injeção de dependência para acessar recursos com EJB - 409
    6.18.9 CDI - 409
    6.19 Exemplo de aplicação Web com JSF e EJB 3.0 - 410
    6.19.1 Arquitetura da aplicação - 410
    6.19.1.1 Componentes de apresentação (View) - 410
    6.19.1.2 Componentes de controle (Controller) - 412
    6.19.1.3 Componentes de modelo - 414
    6.19.2 Banco de dados - 417
    6.19.3 Criação do projeto no NetBeans - 418
    6.19.4 Classes de entidade - 419
    6.20 Motivos para utilizar ou não Facades - 426
    6.20.1 Descrição dos componentes Facade da aplicação - 428
    6.20.2 Criação dos componentes Facade da aplicação - 429
    6.21 Classes de apoio ou utilitárias - 436
    6.21.1 Converter - 437
    6.21.2 Paginação - 439
    6.21.3 Manipulador de mensagens - 440
    6.22 Managed Beans - 442
    6.22.1 Escopo de um Managed Bean - 443
    6.22.1.1 @RequestScoped - 443
    6.22.1.2 @SessionScoped - 443
    6.22.1.3 @ApplicationScoped - 443
    6.22.1.4 @ConversationScoped - 444
    6.22.2 Injeção de dependência - 444
    6.22.3 Criação dos Managed Beans - 444
    6.22.4 Explicação da Managed Bean DepartamentoMBean.java - 448
    6.22.4.1 Incluir um novo departamento - 448
    6.22.4.2 Listar os departamentos - 449
    6.22.4.3 Ver os dados de um departamento - 451
    6.22.4.4 Excluir os dados de um departamento - 451
    6.22.4.5 Alterar os dados de um departamento - 452
    6.22.4.6 Consultar departamentos por qualquer parte do nome - 454
    6.22.4.7 Principais métodos pré-definidos utilizados nos managed beans - 455
    6.22.5 Explicação da managed bean FuncionarioMBean.java - 459
    6.22.5.1 Incluir um novo funcionário - 459
    6.23 Arquivos de propriedade de idioma - 461
    6.24 Páginas XHTML - 464
    6.24.1 Página de template - 466
    6.24.2 Menu Principal - 468
    6.24.3 Páginas de controle de departamentos - 469
    6.24.3.1 Menu Departamentos - 469
    6.24.3.2 Incluir um novo departamento - 471
    6.24.3.3 Consultar departamento - 474
    6.24.3.4 Listar departamentos consultados - 475
    6.24.3.5 Listar todos os departamentos - 479
    6.24.3.6 Exibir os dados de um departamento - 483
    6.24.3.7 Alterar os dados de um departamento - 485
    6.24.3.8 Exclui os dados de um departamento - 487
    6.24.4 Páginas de controle de funcionários - 487
    6.24.4.1 Menu Funcionários - 488
    6.24.4.2 Incluir um novo funcionário - 489
    6.24.4.3 Consultar um funcionário - 492
    6.24.4.4 Listagem dos funcionários consultados - 494
    6.24.4.5 Listar todos os funcionários - 496
    6.24.4.6 Alterar os dados de um funcionário - 498
    6.24.4.7 Exibir os dados de um funcionário - 501
    6.24.4.8 Excluir os dados de um funcionário - 504
    6.24.5 Folha de estilos CSS - 504
    6.24.6 Arquivos XML de configuração do projeto - 508
    6.25 Gerando uma aplicação CRUD JavaServer Faces 2.0 a partir de um banco de dados utilizando os assistentes
    do NetBeans IDE - 510
    6.25.1 Criando o projeto Web - 512
    6.25.2 Gerando as classes de entidade a partir do banco de dados - 512
    6.25.3 Gerando as páginas XHTML/JSF a partir das classes de entidade - 513
    6.25.4 Executando o aplicativo - 516
    6.26 Considerações Finais - 516
    6.27 Resumo - 516
    6.28 Exercícios - 517

    Capítulo 7 - O futuro do desenvolvimento de software – ferramentas de apoio ao desenvolvimento rápido
    de software

    7.1 Ferramentas Rapid Application Development - 523
    7.1.1 Genexus - 523
    7.1.2 Magic Software iBOLT e uniPaaS - 525
    7.2 Ferramentas CASE para criação de banco de dados - 526
    7.2.1 ERwin - 526
    7.2.2 DBDesigner - 527
    7.2.3 MySQL Workbench - 528
    7.3 Frameworks - 529
    7.4 IDEs de desenvolvimento - 529
    7.4.1 NetBeans IDE - 529
    7.4.2 Visual Studio IDE - 530
    7.4.3 Dreamweaver IDE - 531
    7.5 Integração de sistemas - 532
    7.5.1 XML - 533
    7.6 Considerações Finais - 534
    7.7 Resumo - 535
    7.8 Exercícios - 537

    Referências Bibliográficas - 539

    Referências na web - 539

    Informações Técnicas

    Nº de páginas:576
    Origem:Nacional
    Editora:Editora Ciência Moderna
    Idioma:Português
    Edição:1ª Edição
    Ano:2012
    ISBN:9788539902217
    Encadernação:Brochura
    Autor:Evandro Carlos Teruel
  • Informações

Avaliação técnica sobre o livro

Olá! Seja Bem Vindo (a)!

Eu sou o Moderninho , o Mascote da Ciência Moderna Online!
Além de bonito, o novo site tem Minhas Dicas :) #ficaadica

A 1ª Dica é -> Deixe aqui seu contato para receber nossas
NOVIDADES, PROMOÇÕES E CUPONS DE DESCONTOS ;)

Navegue SEM Moderação!