舉報

會員
Building RESTful Web Services with Spring 5(Second Edition)
ThisbookisintendedforthosewhowanttolearntobuildRESTfulwebserviceswiththelatestSpring5.0Framework.Tomakebestuseofthecodesamplesincludedinthebook,youshouldhaveabasicknowledgeoftheJavalanguage.PreviousexperiencewiththeSpringFrameworkwouldalsohelpyougetupandrunningquickly.
目錄(261章)
倒序
- coverpage
- Title Page
- Dedication
- Packt Upsell
- Why subscribe?
- PacktPub.com
- Contributors
- About the authors
- About the reviewer
- Packt is searching for authors like you
- Preface
- Who this book is for
- What this book covers
- To get the most out of this book
- Download the example code files
- Download the color images
- Conventions used
- Get in touch
- Reviews
- A Few Basics
- REST – a basic understanding
- Uniform interface
- Client and server
- Stateless
- Cacheable
- Layered system
- Code on demand (COD)
- More on REST
- Imperative and Reactive programming
- Reactive Streams
- Benefits of Reactive programming
- Reactive programming in Java and Spring 5
- Our RESTful web service architecture
- Summary
- Building RESTful Web Services in Spring 5 with Maven
- Apache Maven
- Creating a project with Maven
- Viewing a POM file after creating a project
- POM file structure
- Understanding POM dependencies
- Adding Log4j 2.9.1 to POM dependency
- Dependency trees
- Spring Boot
- Developing RESTful web services
- Creating a project base
- Working with your favorite IDE
- Summary
- Flux and Mono (Reactor Support) in Spring
- Benefits of Reactive programming
- Reactive Core and Streams
- Back pressures and Reactive Streams
- WebFlux
- Basic REST API
- Flux
- Mono
- User class with Reactive – REST
- Summary
- CRUD Operations in Spring REST
- CRUD operations in Spring REST
- HTTP methods
- Reactive server initialization
- Sample values in the repository
- getAllUsers – mapping
- getAllUsers – implementation in the handler and repository
- Testing the endpoint – getAllUsers
- getUser – implementation in the handler and repository
- Testing the endpoint – getUser
- createUser – implementation in the handler and repository
- Testing the endpoint – createUser
- updateUser – implementation in the handler and repository
- Testing the endpoint – updateUser
- deleteUser – implementation in the handler and repository
- Testing the endpoint – deleteUser
- Summary
- CRUD Operations in Plain REST (Without Reactive) and File Upload
- Mapping CRUD operations to HTTP methods
- Creating resources
- CRUD operation in Spring 5 (without Reactive)
- getAllUsers – implementation
- getUser – implementation
- createUser – implementation
- updateUser – implementation
- deleteUser – implementation
- File uploads – REST API
- Testing the file upload
- Summary
- Spring Security and JWT (JSON Web Token)
- Spring Security
- Authentication and authorization
- JSON Web Token (JWT)
- JWT dependency
- Creating a JWT token
- Generating a token
- Getting a subject from a JWT token
- Getting a subject from a token
- Summary
- Testing RESTful Web Services
- JUnit
- MockMvc
- Testing a single user
- Postman
- Getting all the users – Postman
- Adding a user – Postman
- Generating a JWT – Postman
- Getting the subject from the token
- SoapUI
- Getting all the users – SoapUI
- Generating JWT SoapUI
- Getting the subject from the token – SoapUI
- jsoup
- Getting a user – jsoup
- Adding a user – jsoup
- Running the test cases
- Summary
- Performance
- HTTP compression
- Content negotiation
- Accept-Encoding
- Content-Encoding
- Server-driven content negotiation
- Agent-driven content negotiation
- HTTP caching
- HTTP cache control
- Public caching
- Private caching
- No-cache
- Only-if-cached
- Cache validation
- ETags
- Last-Modified/If-Modified-Since headers
- Cache implementation
- The REST resource
- Caching with ETags
- Summary
- AOP and Logger Controls
- Aspect-oriented programming (AOP)
- AOP (@Before) with execution
- Testing AOP @Before execution
- AOP (@Before) with annotation
- Testing AOP @Before annotation
- Integrating AOP with JWT
- Logger controls
- SLF4J Log4J and Logback
- Logback framework
- Logback dependency and configuration
- Logging levels
- Logback implementation in class
- Summary
- Building a REST Client and Error Handling
- Building a REST client
- RestTemplate
- Error handling
- Customized exception
- Summary
- Scaling
- Clustering
- Benefits of clustering
- Load balancing
- Scaling databases
- Vertical scaling
- Horizontal scaling
- Read replicas
- Pool connections
- Use multiple masters
- Load balancing in DB servers
- Database partitioning
- Sharding (horizontal partitioning)
- Vertical partitioning
- Distributed caching
- Data-tier caching
- First-level caching
- Second-level caching
- Application-tier caching
- Memcached
- Redis
- Hazelcast
- Ehcache
- Riak
- Aerospike
- Infinispan
- Cache2k
- Other distributed caching
- Amazon ElastiCache
- Oracle distributed cache (Coherence)
- Summary
- Microservice Basics
- Monolithic architecture and its drawbacks
- Introduction to microservices
- Independence and autonomy
- Resilience and fault tolerance
- Automated environment
- Stateless
- Benefits of microservices
- Microservice components
- Configuration server
- Load balancer
- Service discovery
- Circuit breaker
- Edge server
- Microservice tools
- Netflix Eureka
- Netflix Zuul
- Spring Cloud Netflix
- Netflix Ribbon
- Netflix Hystrix
- Netflix Turbine
- HashiCorp Consul
- Eclipse MicroProfile
- Summary
- Ticket Management – Advanced CRUD
- Ticket management using CRUD operations
- Registration
- User types
- User POJO
- Customer registration
- Admin registration
- CSR registration
- Login and token management
- Generating a token
- Customer login
- Admin login
- CSR login
- Ticket management
- Ticket POJO
- Getting a user by token
- User Ticket management
- Ticket controller
- The UserTokenRequired interface
- The UserTokenRequiredAspect class
- Getting my tickets – customer
- Allowing a user to view their single ticket
- Allowing a customer to update a ticket
- Updating a ticket – service (TicketServiceImpl)
- Deleting a ticket
- Deleting a service – service (TicketServiceImpl)
- Deleting my ticket – API (ticket controller)
- Admin Ticket management
- Allowing a admin to view all tickets
- Getting all tickets – service (TicketServiceImpl)
- Getting all tickets – API (ticket controller)
- The AdminTokenRequired interface
- The AdminTokenRequiredAspect class
- Admin updates a ticket
- Updating a ticket by admin – service (TicketServiceImpl)
- Allowing admin to view a single ticket
- Allowing admin to delete tickets
- Deleting tickets – service (TicketServiceImpl):
- Deleting tickets by admin – API (ticket controller):
- CSR Ticket management
- CSR updates a ticket
- CSRTokenRequired AOP
- CSRTokenRequiredAspect
- CSR view all tickets
- Viewing all tickets by CSR – API (ticket controller)
- CSR view single ticket
- CSR delete tickets
- Deleting tickets – service (TicketServivceImpl)
- Deleting tickets by CSR – API (ticket controller)
- Summary
- Other Books You May Enjoy
- Leave a review - let other readers know what you think 更新時間:2021-06-30 19:14:04
推薦閱讀
- Application Development with Qt Creator(Second Edition)
- Web安全防護指南:基礎篇
- 物聯網工程規劃技術
- Hands-On Industrial Internet of Things
- 智慧城市中的移動互聯網技術
- Getting Started with Grunt:The JavaScript Task Runner
- Unity Artificial Intelligence Programming
- 5G技術與標準
- 通信十年:擁抱互聯網
- 計算機網絡技術及應用
- 網管第一課:網絡操作系統與配置管理
- 工業以太網技術:AFDX/TTE網絡原理、接口、互連與安全
- 網絡是怎樣連接的
- EtherCAT工業以太網應用技術
- MPLS網絡設計權威指南
- Git Best Practices Guide
- 5G物聯網端管云實戰
- Cisco/H3C交換機高級配置與管理技術手冊
- Virtual Reality Blueprints
- Selenium 2 Testing Tools:Beginner’s Guide
- 窄帶物聯網(NB-IoT)標準與關鍵技術
- Oracle Service Bus 11g Development Cookbook
- Moodle for Mobile Learning
- BGP設計與實現
- 網絡規劃與優化技術
- 運營商數據中心網絡架構與技術
- 網絡工程師紅寶書:思科華為華三實戰案例薈萃
- Microsoft Windows Server AppFabric Cookbook
- 中國互聯網絡發展狀況2013-2018(英文)
- Phoenix Web Development