Home > Java > javaTutorial > How to implement automatic assembly in Springboot framework

How to implement automatic assembly in Springboot framework

王林
Release: 2023-05-18 09:49:38
forward
1516 people have browsed it

Preface

Using the springboot framework, you can easily and quickly build standalone production-level spring applications. springboot mainly has the following features:

1. Create an independent Spring application

2. Directly embed Tomcat and other Web containers (no need to deploy WAR files)

3. Provide Solid "starter" dependency simplifies build configuration

4. Automatically assemble Spring and third-party class libraries when the barcode is satisfied

5. Provide operation and maintenance features, such as indicator information and health checks and external configuration

6. No XML configuration is required.

Start with the analysis from the use of the program

Introduce the starter dependency of mybatis and related database drivers

      <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.2.0</version>
      </dependency>
Copy after login

Use of the program

//程序的启动类
@SpringBootApplication
public class HelloApplication {
	public static void main(String[] args) { 
		SpringApplication.run(HelloApplication.class, args);
	}
//服务类
@Service
public interface UserService {
    @Autowired
    private UserXmlMapper userXmlMapper;
    @Test
    public void testFindAll2() {
        List<User> list = userXmlMapper.findAll();
        System.out.println(list);
    }
}
//Dao 操作
@Mapper
public interface UserXmlMapper {
    public List<User> findAll();
}
Copy after login

The above code, everyone They are all very familiar. How does springboot implement the @Mapper annotation so that it can operate the database (there is a bridge in the middle, how to connect springboot and mybatis, and how is this bridge implemented)

Find the bridge from the startup class

How to implement automatic assembly in Springboot framework

You can know it through the source code

Bridge=@SpringBootApplication=>@EnableAutoConfiguration=>@Import({ AutoConfigurationImportSelector.class})

Analysis of the source code shows the main function of AutoConfigurationImportSelector

  • Scan all jar packages under the classpath

  • AutoConfiguration configured in META-INF/spring.factories

  • Scan out the AutoConfguration that needs to be executed

Recall when I use mybatis again , you need to introduce the starter dependency package of mybatis, and combined with the second function of AutoConfigurationImportSelector, you can find the AutoConfguration of mybatis under the corresponding jar.

How to implement automatic assembly in Springboot framework

How to implement automatic assembly in Springboot framework

That is to say, when spring-boot starts [it will create a spring container], it will execute the logic of MybatisAutoConfiguration [process@ Mapper classes (scanned and injected into the srping container) and database connection functions].

The above is the detailed content of How to implement automatic assembly in Springboot framework. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:yisu.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template