首頁(yè) > 計(jì)算機(jī)網(wǎng)絡(luò) >
編程語(yǔ)言與程序設(shè)計(jì)
> Building Web Apps with Spring 5 and Angular最新章節(jié)目錄
目錄(236章)
倒序
- cover
- Title Page
- Copyright
- Building Web Apps with Spring 5 and Angular
- Credits
- About the Author
- About the Reviewer
- www.PacktPub.com
- Why subscribe?
- Customer Feedback
- Preface
- What this book covers
- What you need for this book
- Who this book is for
- Conventions
- Reader feedback
- Customer support
- Downloading the example code
- Downloading the color images of this book
- Errata
- Piracy
- Questions
- Introduction to Spring Web Framework
- Introduction to the Spring IOC container
- What is IOC?
- What is a Spring IOC container?
- Introduction to Spring Web MVC
- Key building blocks of a Spring Web MVC application
- Introduction to the Dispatcher servlet
- Building Hello World web application with Spring Boot
- The Spring STS Setup in Eclipse IDE
- Introduction to Spring Boot
- Building Hello World web app using Spring Boot
- Implementing Controllers
- Handling request parameters
- The RequestParam annotation
- The RequestBody annotation
- The PathVariable annotation
- Handling Interceptors
- Handling Response
- Response as an instance of ModelAndView
- Using @ResponseBody annotation
- Creating a RESTful web service
- Dockerizing a Spring Boot application
- Summary
- Preparing the Spring Web Development Environment
- Installing the Java SDK
- Installing/configuring Maven
- Installing the Eclipse IDE
- Import the existing Maven project in Eclipse
- Creating a new Maven project in Eclipse
- Installing/configuring the Apache Tomcat server
- Adding/configuring Apache Tomcat in Eclipse
- Installing/configuring the MySQL database
- Installing/configuring the MySQL server
- Using the MySQL connector
- Connecting to the MySQL database from a Java class
- Introduction to Docker
- What are Docker containers?
- What are real-world containers good for?
- How do Docker containers relate to real-world containers?
- Docker containers
- What are the key building blocks of Dockers containers?
- Installing Docker
- Setting up the development environment using Docker compose
- What is Docker compose?
- Docker Compose Script for setting up the Dev Environment
- Setting up the Tomcat 8.x as a container service
- Setting up MySQL as a container service
- Docker compose script to set up the development environment
- Summary
- Data Access Layer with Spring and Hibernate
- An introduction to Hibernate
- Setting up Hibernate with Spring
- Setting up data source information in the application.properties file
- Using annotations to wire a SessionFactory bean
- Configure bean definitions
- Autowire SessionFactory in DAOs
- Design domain objects and database tables
- User
- Introduction to NamedQuery and Criteria
- What is NamedQuery?
- What is Criteria?
- Common Hibernate operations
- Data retrieval
- Save/persist operation
- Update/merge operation
- The saveOrUpdate operation
- Transaction management
- Declarative transaction management
- Summary
- Testing and Running Spring Web App
- How to run the Spring Boot app
- Introduction to unit testing fundamentals
- What is unit testing?
- Why write unit tests?
- Unit testing naming conventions
- Introduction to JUnit 5
- Architectural building blocks of JUnit 5
- Setting up and running JUnit tests
- Mocking dependencies using Mockito
- Getting set up with Mockito
- Introduction to mocking techniques
- Unit testing controllers services and DAOs
- Unit tests for controllers
- Unit tests for Services
- Unit tests for DAO components
- Summary
- Securing Web App with Spring Security
- Introduction to Spring Security
- Spring Security high level architecture
- Spring Security architecture - core building blocks
- Spring Security architecture - authentication
- Spring Security architecture - authorization
- Setting up Spring Security
- Handling the login authentication
- CSRF protection for API requests
- CSRF prevention technique for the Angular app
- CSRF prevention technique for the Spring app
- Handling the logout request
- OAuth2 for authentication/authorization
- Introduction to OAuth2-based authentication & authorization
- Spring Security and OAuth2 authentication
- OAuth2 Implementation for Spring Web App
- OAuth2 Implementation for Angular App
- Acquiring access token
- Accessing resources using access token
- Summary
- Getting Started with Angular
- Introduction to Angular
- How is Angular different from AngularJS?
- AngularJS - The MVC way of building UI apps
- Angular - The Component Way of Building Web Apps
- Setting up the Angular development environment
- TypeScript fundamentals
- Forms
- Template-driven forms
- Reactive forms
- Pipes
- Directives
- Structural directives
- Attribute directives
- Server communication
- Bootstrapping an Angular app
- Best practices
- Summary
- Creating SPA with Angular and Spring 5
- Introduction to routing
- Configuring Route definitions
- RouterLink for navigation
- What is RouterLink?
- What is ActivatedRoute?
- Route Guards for access control
- Routing configuration design patterns
- Routing within AppModule
- Routing as a separate module at the app root level
- Routing within feature modules
- Creating a single page app (SPA)
- Lean root module
- Features as separate modules
- Auth module
- Doctor module
- Route Guards for controlled access
- Debugging Angular app
- Debugging Angular app using Firefox and Chrome
- Debugging Angular app using Augury
- Summary
- Unit Testing with Angular Apps
- Introduction to unit testing
- Unit testing tools for Angular apps
- Jasmine
- Karma
- Protractor
- Angular testing utilities
- Setting up the unit test environment
- Angular unit testing building blocks
- Unit testing strategies
- Unit testing the components
- Unit testing a component with an external template
- Unit testing a component with one or more dependencies
- Unit testing a component with an async service
- Component-under-test - DoctorListComponent
- External service - DoctorService
- Unit test for DoctorListComponent
- Unit testing a routed component
- Test doubles for Router and ActivatedRoute
- Unit test for a routed component
- Unit testing the services
- Service under test - DoctorService
- Unit test for DoctorService
- Summary
- Securing an Angular App
- Common web application security vulnerabilities
- What is Cross-Site Scripting (XSS)?
- What is Cross-Site Script Inclusion (XSSI)?
- What is Cross-Site Request Forgery (CSRF/XSRF)?
- Securing an app from XSS
- Displaying trusted HTML values
- The Custom SecurityBypass pipe
- Securing an app from XSSI
- Securing app from CSRF/XSRF
- Best practices
- Summary
- Integrating Angular App with Spring Web APIs
- Building RESTful Spring web APIs
- Configure Spring app for CORS
- Key aspects of Angular data services
- Promise and Observable responses
- Promise for asynchronous data exchange
- Observable for asynchronous data exchange
- Building Angular services for RESTful integration
- Invoking server APIs using the Angular HTTP service
- Consuming RESTful Spring APIs using the HTTP service
- Posting to RESTful Spring APIs using the HTTP service
- Invoking server APIs using the Angular HttpClient service
- Example of consuming RESTful Spring web APIs
- Spring RESTful API for user login
- Custom Angular component for managing login view
- Custom Angular service for serving login functionality
- Summary
- Deploying the Web Application
- Introduction to CI and CD
- Setting up Jenkins and GitLab
- Setting up Jenkins
- Setting up GitLab
- Setting up GitLab and Jenkins using Docker Compose
- Configuring GitLab as a code repository
- Creating Jenkins jobs for CI
- Configuring Jenkins and GitLab for CI/CD
- Configuring webhooks in GitLab
- Configuring Jenkins for automated build triggers
- Configuring Jenkins jobs for CD
- Deploying Angular app in production
- Angular app deployed on separate server
- Angular app deployed on Spring app server
- Summary 更新時(shí)間:2021-07-02 19:38:58
推薦閱讀
- 黑客攻防從入門到精通(實(shí)戰(zhàn)秘笈版)
- Getting Started with React
- Visual Basic編程:從基礎(chǔ)到實(shí)踐(第2版)
- Network Automation Cookbook
- ASP.NET動(dòng)態(tài)網(wǎng)頁(yè)設(shè)計(jì)教程(第三版)
- 云計(jì)算通俗講義(第3版)
- Java加密與解密的藝術(shù)
- Nginx Essentials
- C語(yǔ)言程序設(shè)計(jì)
- Android程序設(shè)計(jì)基礎(chǔ)
- Visual Basic程序設(shè)計(jì)上機(jī)實(shí)驗(yàn)教程
- Xcode 6 Essentials
- Arduino可穿戴設(shè)備開(kāi)發(fā)
- Hands-On Robotics Programming with C++
- Learning Grunt
- Visual Basic語(yǔ)言程序設(shè)計(jì)基礎(chǔ)(第3版)
- Python大數(shù)據(jù)與機(jī)器學(xué)習(xí)實(shí)戰(zhàn)
- Mastering Assembly Programming
- Flask Framework Cookbook
- Java到Kotlin:代碼重構(gòu)指南
- Building Modern Networks
- Mastering JavaScript Design Patterns
- GNOME 3 Application Development Beginner's Guide
- INSTANT Apache Solr for Indexing Data How-to
- 零基礎(chǔ)學(xué)交互設(shè)計(jì)
- Python數(shù)據(jù)分析、挖掘與可視化(慕課版)
- Unity 3D從入門到精通(視頻微課版)
- Beginning Data Science with Python and Jupyter
- 輕量級(jí)Java EE企業(yè)應(yīng)用開(kāi)發(fā)實(shí)戰(zhàn)
- Scratch 3.0趣味編程精彩實(shí)例