Spring is the most popular Java development technology, and its internal source code design is excellent. If you can’t Spring, chances are the interviewer will tell you to go home and wait for notifications.

What is Spring?

There was a site where hundreds of men were digging holes with shovels and shovels.

If you drive an excavator, the work done in one day is equivalent to a worker’s work in a month. And this excavator is free and open source, do not spend money to buy, just need to learn how to operate. What would you choose?

The construction site of several hundred people is the implementation team of enterprise application project, and the excavator is Spring.

Spring’s fundamental mission is to address the complexities of enterprise application development by simplifying Java development.

The Spring framework provides comprehensive infrastructure support for developing Java applications. Spring includes some nice features such as dependency injection and out-of-the-box modules:

Spring JDBC

Spring MVC

Spring Security

Spring AOP

Spring ORM

Spring Test

These modules can greatly reduce application development time and improve our work efficiency.

Spring can do a lot of things, and it provides rich functionality for enterprise development, but the underlying functionality is dependent on its two core features, dependency injection, DI) and aspect-oriented Programming (AOP).

I sorted out a Spring framework knowledge points, I hope to help you! Need students at the end of the article with the way to receive.

Summary of the Spring

What is spring?

What are the design goals, philosophy, and core of the Spring framework

What are the advantages and disadvantages of Spring?

What are the applications of Spring

What modules does Spring consist of?

What design patterns are used in the Spring framework?

Take a closer look at the core Container (Spring Context application Context) module

What are the different types of events in the Spring framework

What are the different components of a Spring application?

What are some ways to use Spring?

Spring Inversion of Control (IOC)

What is the Spring IOC container?

What does inversion of control (IoC) do

What are the advantages of IOC?

Implementation mechanism of Spring IoC

What features does Spring’s IoC support

What’s the difference between BeanFactory and ApplicationContext?

How does Spring design the BeanFactory and ApplicationContext context

What is the usual implementation of ApplicationContext?

What is Spring’s dependency injection?

The basic principles of dependency injection

What are the advantages of dependency injection

What are the different types of dependency injection implementations?

Constructor dependency injection versus Setter method injection

Spring Beans

What are Spring beans?

What does a Spring Bean definition contain?

How do I provide configuration metadata to the Spring container? Spring can be configured in several ways

What information is contained in the Spring configuration file

Spring is based on several ways of injecting BEANS with XML

How do you define the scope of a class?

Explains the scope of several beans supported by Spring

Are singleton beans in the Spring framework thread-safe?

How does Spring handle thread concurrency?

Explains the life cycle of beans in the Spring framework

What are the important bean lifecycle methods? Can you reload them?

What are Spring’s internal beans? What are Spring inner beans?

How do I inject a Java collection in Spring?

What is bean assembly?

What is bean autowiring?

Explain the different ways to autowire. What are the ways spring autowire beans?

What is the process of auto-assembly using @Autowired annotations?

What are the limitations of autowiring?

Can you inject a null and an empty string into Spring?

The Spring annotations

What is the Java-based Spring annotation configuration? Give some examples of annotations

How to start annotation assembly?

What is the difference between @Component, @Controller, @repository, and @service?

@required What are annotations for

What does the @autowired annotation do

The difference between @Autowired and @Resource

What are the @qualifier annotations for

What are the @requestMapping annotations for?

Spring data Access

Explains the object/relational mapping integration module

How can I use JDBC more effectively in the Spring framework?

Explains the JDBC abstraction and DAO modules

What does the Spring DAO do?

What classes exist in the Spring JDBC API?

What is the JdbcTemplate

How do YOU access Hibernate using Spring? What are the ways to access Hibernate using Spring?

How to combine Spring and Hibernate with Hibernateda Support?

What transaction management types are supported by Spring, and how are Spring transactions implemented?

How and how Spring transactions are implemented

Talk about Spring’s transaction propagation behavior

What about Transaction isolation in Spring?

What are the advantages of transaction management in the Spring framework?

Which transaction management style do you prefer?

Spring Faceted Programming (AOP)

What is the AOP

What is the difference between Spring AOP and AspectJ AOP? What are the implementations of AOP?

Differences between JDK dynamic proxies and CGLIB dynamic proxies

How do you understand proxies in Spring?

Explain some terms in Spring AOP

Spring notifies objects at run time

Spring only supports method-level join points

What is the difference between concerns and crosscutting concerns in Spring AOP? The difference between Concern and cross-cutting Concern in Spring AOP

What are the types of Spring notifications?

What is a sectional Aspect?

Explains the implementation of aspects based on XML Schema

Explains annotation-based aspect implementations

How many different types of automatic agents are there?

It took a lot of effort to compile this information, thanks to the support and advice of many friends!

Jin SAN Yin 4 is coming soon, also hope can be helpful to everyone’s interview! Help to your words hope that you can point to support it!

If you have any shortcomings or better suggestions, please leave them in the comments section. Need this information can comment, collect after the private letter I get ha.