Skip to content

Latest commit

 

History

History
373 lines (289 loc) · 16.2 KB

notes.md

File metadata and controls

373 lines (289 loc) · 16.2 KB

Spring

Video 1

"SpringInterviewGuide_August2017_1", "00:15","10:48","101-Basics of Spring Framework"
- What is Loose Coupling?
- What is a Dependency?
- What is IOC (Inversion of Control)?
- What is Dependency Injection?
- Can you give few examples of Dependency Injection?
- What is Auto Wiring?

"SpringInterviewGuide_August2017_1", "10:56", "18:18", "102-Spring Application Context and IOC Container"
- What are the important roles of an IOC Container?
- What are Bean Factory and Application Context?
- Can you compare Bean Factory with Application Context?
- How do you create an application context with Spring?

"SpringInterviewGuide_August2017_1", "18:22", "23:15","103-Spring - Component Scan"
- How does Spring know where to search for Components or Beans?
- What is a Component Scan? 
- How do you define a component scan in XML and Java Configurations?
- How is it done with Spring Boot?

"SpringInterviewGuide_August2017_1", "23:19", "27:11","104-@Controller, @Component, @Repository, and @Service Annotations"
- What does @Component signify?
- What does @Autowired signify?
- What’s the difference Between @Controller, @Component, @Repository, and @Service Annotations in Spring?

"SpringInterviewGuide_August2017_1", "27:11", "32:26","105-Scope of a Bean"
- What is the default scope of a bean? 
- Are Spring beans thread safe?
- What are the other scopes available?
- How is Spring’s singleton bean different from Gang of Four Singleton Pattern?

"SpringInterviewGuide_August2017_1", "32:27","38:22","106-Setter and Constructor Injection"
- What are the different types of dependency injections?
- What is setter injection?
- What is constructor injection?
- How do you choose between setter and constructor injections?

"SpringInterviewGuide_August2017_1", "38:22","41:59","107-Spring Application Contexts - XML and Java Configuration"
- What are the different options available to create Application Contexts for Spring?
- What is the difference between XML and Java Configurations for Spring?
- How do you choose between XML and Java Configurations for Spring?

"SpringInterviewGuide_August2017_1", "41:59", "45:11","108-Spring and Autowiring"
- How does Spring do Autowiring?
- What are the different kinds of matching used by Spring for Autowiring?

"SpringInterviewGuide_August2017_1", "45:12", "51:30", "109-Debugging with Spring Framework. @Primary and @Qualifier."
- How do you debug problems with Spring Framework?
- How do you solve NoUniqueBeanDefinitionException?
- How do you solve NoSuchBeanDefinitionException?
- What is @Primary?
- What is @Qualifier?

"SpringInterviewGuide_August2017_1", "51:30", "55:30","110-CDI(Contexts and Dependency Injection) and Spring"
- What is CDI (Contexts and Dependency Injection)? 
- Does Spring Support CDI?
- Would you recommed to use CDI or Spring Annotations?

"SpringInterviewGuide_August2017_1", "55:33", "01:00:37","111-Spring Major Versions and New Features"
- What are the major features in different versions of Spring?
- What are new features in Spring Framework 4.0?
- What are new features in Spring Framework 5.0?

VIDEO 2
~~~~~~~~~


"SpringInterviewGuide_August2017_2", "00:03", "06:27","112-Spring Modules"
- What are important Spring Modules?

"SpringInterviewGuide_August2017_2", "06:27", "10:57","113-Spring Projects"
- What are important Spring Projects?

"SpringInterviewGuide_August2017_2", "11:15", "16:30","114-Spring Design Patterns, BOM and Annotations"
- What is the simplest way of ensuring that we are using single version of all Spring related dependencies?
- Name some of the design patterns used in Spring Framework?
- What are some of the important Spring Annotations?

"SpringInterviewGuide_August2017_2", "16:42", "20:27", "115-Big Picture of Spring Framework"
- What do you think about Spring Framework?
- Why is Spring Popular?
- Can you give a big picture of the Spring Framework?

## Spring MVC

"SpringInterviewGuide_August2017_2", "20:30", "25:00", "201-Web Application Architectures - Model 1, Model 2 and Front Controller"
- What is Model 1 architecture?
- What is Model 2 architecture?
- What is Model 2 Front Controller architecture?

"SpringInterviewGuide_August2017_2", "25:06","34:15", "202-Spring MVC High Level Flow"
- Can you show an example controller method in Spring MVC?
- Can you explain a simple flow in Spring MVC?
- What is a ViewResolver?
- What is Model?
- What is ModelAndView?
- What is a RequestMapping?

"SpringInterviewGuide_August2017_2", "34:22", "36:48","203-Dispatcher Servlet and Configuration"
- What is Dispatcher Servlet?
- How do you set up Dispatcher Servlet?

"SpringInterviewGuide_August2017_2", "36:48","44:21","204-Form Backing Object, Form Tags, Validation and Binding Result"
- What is a form backing object?
- How is validation done using Spring MVC?
- What is BindingResult?
- How do you map validation results to your view?
- What are Spring Form Tags?

"SpringInterviewGuide_August2017_2", "44:32", "50:07","205-Path Variable, Model and Session Attributes"
- What is a Path Variable?
- What is a Model Attribute?
- What is a Session Attribute?

"SpringInterviewGuide_August2017_2", "50:10", "52:18","206-Date Format Binding"
- What is a init binder?
- How do you set default date format with Spring?

"SpringInterviewGuide_August2017_2", "52:22", "56:41", "207-Exception Handling and Controller Advice"
- What is Controller Advice?
- What is @ExceptionHandler?

"SpringInterviewGuide_August2017_2", "56:44", "58:08", "208-Why is Spring MVC Popular?"
- Why is Spring MVC so popular?



VIDEO 3
~~~~~~~~~


## Spring Boot

"SpringInterviewGuide_August2017_3", "00:30", "06:05","301-Spring Boot - Goals and Features"
- What is Spring Boot?
- What are the important Goals of Spring Boot?
- What are the important Features of Spring Boot?

"SpringInterviewGuide_August2017_3", "06:11", "10:33", "302-Spring Boot vs Spring vs Spring MVC"
- Compare Spring Boot vs Spring?
- Compare Spring Boot vs Spring MVC?

"SpringInterviewGuide_August2017_3", "10:55", "13:35","303-@SpringBootApplication"
- What is the importance of @SpringBootApplication?

"SpringInterviewGuide_August2017_3", "13:46", "18:56", "304-Introduction to Auto Configuration"
- What is Auto Configuration?
- How can we find more information about Auto Configuration?

"SpringInterviewGuide_August2017_3", "19:05", "22:37","305-Embedded Servers - Tomcat, Jetty and Undertow"
- What is an embedded server? Why is it important?
- What is the default embedded server with Spring Boot?
- What are the other embedded servers supported by Spring Boot?

"SpringInterviewGuide_August2017_3", "22:50", "28:57","306-Introduction to Starter Projects"
- What are Starter Projects?
- Can you give examples of important starter projects?

"SpringInterviewGuide_August2017_3", "29:03", "32:38","307-Starter Parent and Dependency Management"
- What is Starter Parent?
- What are the different things that are defined in Starter Parent?
- How does Spring Boot enforce common dependency management for all its Starter projects?

"SpringInterviewGuide_August2017_3", "32:42", "35:21","308 - Creating Spring Projects with Spring Initializr"
- What is Spring Initializr?

"SpringInterviewGuide_August2017_3", "35:29", "39:23","309 - Configuration with Application Properties"
- What is application.properties?
- What are some of the important things that can customized in application.properties?

"SpringInterviewGuide_August2017_3", "39:24", "44:35", "310 - Custom Application Configuration with @ConfigurationProperties"
- How do you externalize configuration using Spring Boot?
- How can you add custom application properties using Spring Boot? 
- What is @ConfigurationProperties?

"SpringInterviewGuide_August2017_3", "44:40", "49:05","311-Spring Boot Profiles"
- What is a profile?
- How do you define beans for a specific profile?
- How do you create application configuration for a specific profile?
- How do you have different configuration for different environments?


VIDEO 4
~~~~~~~~~

"SpringInterviewGuide_August2017_4", "00:46", "07:07","312-Monitoring your application with Spring Boot Actuator"
- What is Spring Boot Actuator? 
- How do you monitor web services using Spring Boot Actuator?
- How do you find more information about your application envrionment using Spring Boot?

"SpringInterviewGuide_August2017_4", "07:20", "09:48","313-Do things at application startup with CommandLineRunner"
- What is a CommandLineRunner?

## Database Connectivity - JDBC, Spring JDBC & JPA

"SpringInterviewGuide_August2017_4", "10:09", "16:35", "401-Spring JDBC - JdbcTemplate and RowMapper"
- What is Spring JDBC? How is different from JDBC?
- What is a JdbcTemplate?
- What is a RowMapper?

"SpringInterviewGuide_August2017_4", "16:42", "23:13", "402-JPA, Hibernate - Entity and Entity Manager"
- What is JPA?
- What is Hibernate?
- How do you define an entity in JPA?
- What is an Entity Manager?
- What is a Persistence Context?

"SpringInterviewGuide_August2017_4", "23:13", "28:38", "403-JPA Relationships - One to One, One to Many, Many to Many"
- How do you map relationships in JPA?
- What are the different types of relationships in JPA?
- How do you define One to One Mapping in JPA?
- How do you define One to Many Mapping in JPA?
- How do you define Many to Many Mapping in JPA?

"SpringInterviewGuide_August2017_4", "28:54", "34:40", "404-JPA Configuration - Data Source, persistence.xml, Entity Manager Factory and Transaction Manager"
- How do you define a datasource in a Spring Context?
- What is the use of persistence.xml
- How do you configure Entity Manager Factory and Transaction Manager?
- How do you define transaction management for Spring – Hibernate integration?

## Spring Data
"SpringInterviewGuide_August2017_4", "34:55", "41:12", "405-Spring Data - Need, Overview and Repository"
- What is Spring Data?
- What is the need for Spring Data?
- What is Spring Data JPA?
- What is a CrudRepository?
- What is a PagingAndSortingRepository?

## Unit Testing
"SpringInterviewGuide_August2017_4", "41:26", "48:44", "501-Unit Testing with Mockito"
- How does Spring Framework Make Unit Testing Easy?
- What is Mockito?
- What is your favorite mocking framework?
- How do you do mock data with Mockito?
- What are the different mocking annotations that you worked with?

"SpringInterviewGuide_August2017_4", "48:58", "56:14","502-Unit Testing Controllers with Mock MVC Framework"
- What is MockMvc?
- What is @WebMvcTest?
- What is @MockBean?
- How do you write a unit test with MockMVC?
- What is JSONAssert?

"SpringInterviewGuide_August2017_4", "56:23", "01:01:58", "503-Integration Testing with Spring Boot"
- How do you write an integration test with Spring Boot?
- What is @SpringBootTest?
- What is @LocalServerPort?
- What is TestRestTemplate?

## AOP
"SpringInterviewGuide_August2017_4", "01:02:09", "01:11:14", "601-Introduction to Spring AOP"
- What are cross cutting concerns?
- How do you implement cross cutting concerns in a web application?
- If you would want to log every request to a web application, what are the options you can think of?
- If you would want to track performance of every request, what options can you think of?

"SpringInterviewGuide_August2017_4", "01:11:45", "01:16:37", "602-AOP Basics - Aspect, Pointcut, Advice and Weaving"
- What is an Aspect and Pointcut in AOP?
- What are the different types of AOP advices?
- What is weaving?
- Compare Spring AOP vs AspectJ?

Video 5
~~~~~~~~~

## SOAP Web Services

"SpringInterviewGuide_August2017_5", "00:22", "04:55","701-What is a Web Service?"
- What is a Web Service?

"SpringInterviewGuide_August2017_5", "05:14", "09:36","702-SOAP Web Service - SOAP Envelope, Header and Body"
- What is SOAP Web Service?
- What is SOAP?
- Waht is a SOAP Envelope?
- What is SOAP Header and SOAP Body?

"SpringInterviewGuide_August2017_5", "10:24", "13:53","703-SOAP Request Examples - SOAP Header"
- Can you give an example of SOAP Request and SOAP Response?
- What is a SOAP Header? What kind of information is sent in a SOAP Header?
- Can you give an example of a SOAP Header with Authentication information?

"SpringInterviewGuide_August2017_5", "14:11", "20:09", "704-WSDL - an overview"
- What is WSDL (Web Service Definition Language)? 
- What are the different parts of a WSDL?

"SpringInterviewGuide_August2017_5", "20:44", "27:14", "705-Contract First Approach and XSD"
- What is Contract First Approach?
- What is an XSD?
- Can you give an example of an XSD?

"SpringInterviewGuide_August2017_5", "27:35", "32:41","706-JAXB and Configuration with Spring Web Services"
- What is JAXB?
- How do you configure a JAXB Plugin?

"SpringInterviewGuide_August2017_5", "32:47", "36:34", "707-Writing an Endpoint with Spring Web Services"
- What is an Endpoint?
- Can you show an example endpoint written with Spring Web Services?

"SpringInterviewGuide_August2017_5", "36:59", "39:37", "708-MessageDispatcherServlet and configuration"
- What is a MessageDispatcherServlet?
- How do you configure a MessageDispatcherServlet?

"SpringInterviewGuide_August2017_5", "39:40", "41:55", "709-Generating a WSDL with Spring Web Services"
- How do you generate a WSDL using Spring Web Services?

"SpringInterviewGuide_August2017_5", "42:15", "45:50", "710-Error Handling for SOAP Web Services"
- How do you implement error handling for SOAP Web Services?
- What is a SOAP Fault?

## RESTful Web Services


"SpringInterviewGuide_August2017_6", "00:41", "05:45","801-What is REST?"
- What is REST?

"SpringInterviewGuide_August2017_6", "06:02", "09:42","802-Best Practices of RESTful Services"
- What are the Best Practices of RESTful Services?

"SpringInterviewGuide_August2017_6", "09:47", "12:01","803-GET Resource method with Spring REST"
- Can you show the code for an example Get Resource method with Spring REST?
- What happens when we return a bean from a Request Mapping Method?
- What is GetMapping and what are the related methods available in Spring MVC?

"SpringInterviewGuide_August2017_6", "12:09", "16:45","804-POST Resource method with Spring REST and ResponseEntity"
- Can you show the code for an example Post Resource method with Spring REST?
- What is the appropriate HTTP Response Status for successful execution of a Resource Creation?
- Why do we use ResponseEntity in a RESTful Service?

"SpringInterviewGuide_August2017_6", "16:57", "21:22", "805-Implementing HATEOAS for RESTful Web Services"
- What is HATEOAS? 
- Can you give an Example Response for HATEOAS?
- How do we implement it using Spring?

"SpringInterviewGuide_August2017_6", "21:32", "35:32", "806-Documenting RESTful web services with Swagger"
- How do you document RESTful web services?
- Can you give a brief idea about Swagger Documentation?
- How do you automate generation of Swagger Documentation from RESTful Web Services?
- How do you add custom information to Swagger Documentation generated from RESTful Web Services?
- What is Swagger-UI?

"SpringInterviewGuide_August2017_6", "36:44", "42:22", "807-Content Negotiation and Representation of a Resource"
- What is "Representation" of a Resource?
- What is Content Negotiation? 
- Which HTTP Header is used for Content Negotiation?
- How do we implement it using Spring Boot?
- How do you add XML support to your RESTful Services built with Spring Boot?

"SpringInterviewGuide_August2017_6", "42:37", "53:07", "808-Exception Handling and Validation for RESTFul Web Services"
- How do you implement Exception Handling for RESTFul Web Services?
- What are the best practices related to Exception Handling with respect to RESTful Web Services?
- What are the different error status that you would return in RESTful Web Services?
- How would you implement them using Spring Boot?
- What HTTP Response Status do you return for validation errors?
- How do you handle Validation Errors with RESTful Web Services?

"SpringInterviewGuide_August2017_6", "53:18", "01:00:32", "809-Versioning for  RESTful Web Services"
- Why do we need Versioning for  RESTful Web Services?
- What are the versioning options that are available?
- How do you implement Versioning for RESTful Web Services?


"SpringInterviewGuide_August2017_7","00:18","02:02","001-Preview To Spring Interview Guide"
"SpringInterviewGuide_August2017_7","02:06","03:30","002-Introduction To Our Github Repository"
"SpringInterviewGuide_August2017_7","03:50","06:12","003-Setting up the Course Presentation"
"SpringInterviewGuide_August2017_7","06:14","11:14","004-Overview of Spring Interview Guide"
"SpringInterviewGuide_August2017_7","11:24","12:28","901-Conclusion To  Spring Interview Guide"