À l'aide du framework Springboot, vous pouvez créer facilement et rapidement des applications Spring autonomes au niveau de la production. springboot a principalement les fonctionnalités suivantes :
1. Créez des applications Spring indépendantes
2. Intégrez directement Tomcat et d'autres conteneurs Web (pas besoin de déployer des fichiers WAR)
3. 4. Assemblez automatiquement les bibliothèques de classes Spring et tierces lorsque le code-barres est satisfait
5. Fournissez des fonctionnalités d'exploitation et de maintenance, telles que des informations sur les indicateurs, des contrôles de santé et une configuration externe
6. Aucune configuration XML n'est requise.
Démarrez l'analyse à partir de l'utilisation du programme
<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.2.0</version> </dependency>
Utilisation du programme
//程序的启动类 @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(); }
Tout le monde connaît le code ci-dessus. Comment Springboot implémente-t-il l'annotation @Mapper ? Pouvez-vous faire fonctionner la base de données (il y a un pont au milieu, comment connecter springboot et mybatis, et comment ce pont est-il implémenté)
Recherchez le pont dans la classe de démarrage
Vous pouvez le connaître grâce à la source code
bridge = @SpringBootApplication=>@EnableAutoConfiguration=>@Import({AutoConfigurationImportSelector.class})L'analyse du code source montre la fonction principale d'AutoConfigurationImportSelector
C'est-à-dire que lorsque Spring-boot démarre [il créera un conteneur Spring], il exécutera la logique de MybatisAutoConfiguration [traitant les classes @Mapper (scannées et injectées dans le conteneur SRping) et connexions à la base de données et autres fonctions 】.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!