Spring Boot est un nouveau framework fourni par l'équipe Pivotal. Il est conçu pour simplifier le processus initial de construction et de développement de nouvelles applications Spring. Le framework utilise une approche ad hoc de la configuration, éliminant ainsi le besoin pour les développeurs de définir des configurations standard. De cette manière, Spring Boot s’efforce de devenir un leader dans le domaine en plein essor du développement rapide d’applications.
Avant d'intégrer MyBatis, nous configurons d'abord une source de données druide.
Série Spring Boot
1. Premiers pas avec Spring Boot
2. Configuration et utilisation des propriétés Spring Boot
3.Spring Boot intègre MyBatis4.Traitement des ressources statiques Spring Boot5.Spring Boot - compétences en matière de dépendance de tri de configurationSpring Boot Integrated Druid
druid possède de nombreuses options de configuration. Druid peut être facilement configuré à l'aide du fichier de configuration Spring Boot. Écrivez dans le fichier de configuration application.yml : spring :datasource: name: test url: jdbc:mysql://192.168.16.137:3306/test username: root password: # 使用druid数据源 type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.mysql.jdbc.Driver filters: stat maxActive: 20 initialSize: 1 maxWait: 60000 minIdle: 1 timeBetweenEvictionRunsMillis: 60000 minEvictableIdleTimeMillis: 300000 validationQuery: select 'x' testWhileIdle: true testOnBorrow: false testOnReturn: false poolPreparedStatements: true maxOpenPreparedStatements: 20Configurez ici en tapant : com.alibaba.druid.pool.DruidDataSource !
Spring Boot intègre MyBatis
Il existe deux façons d'intégrer Spring Boot à MyBatis. Un moyen simple consiste à utiliser la solution officielle MyBatis : mybatis-spring-boot-starterUne autre méthode consiste à toujours utiliser une méthode de configuration similaire à mybatis-spring. Cette méthode vous oblige à écrire du code vous-même, mais elle peut facilement contrôler MyBatis. . Diverses configurations.1. Méthode mybatis-spring-boot-starter
Ajouter des dépendances dans pom.xml :<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.0.0</version> </dependency>L'arbre de dépendances Mybatis-spring-boot-starter est la suivante : La version 3.3.0 utilisée par mybatis peut être passée :
typeAliasesPackage : tk.mapper.model
2. méthode mybatis-spring
Cette méthode est la même que l'usage courant est relativement proche. Vous devez ajouter la dépendance mybatis et la dépendance mybatis-spring. Créez ensuite une classe de configuration MyBatisConfig :/** * MyBatis基础配置 * * @author liuzh * @since 2015-12-19 10:11 */ @Configuration @EnableTransactionManagement public class MyBatisConfig implements TransactionManagementConfigurer { @Autowired DataSource dataSource; @Bean(name = "sqlSessionFactory") public SqlSessionFactory sqlSessionFactoryBean() { SqlSessionFactoryBean bean = new SqlSessionFactoryBean(); bean.setDataSource(dataSource); bean.setTypeAliasesPackage("tk.mybatis.springboot.model"); //分页插件 PageHelper pageHelper = new PageHelper(); Properties properties = new Properties(); properties.setProperty("reasonable", "true"); properties.setProperty("supportMethodsArguments", "true"); properties.setProperty("returnPageInfo", "check"); properties.setProperty("params", "count=countSql"); pageHelper.setProperties(properties); //添加插件 bean.setPlugins(new Interceptor[]{pageHelper}); //添加XML目录 ResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(); try { bean.setMapperLocations(resolver.getResources("classpath:mapper/*.xml")); return bean.getObject(); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException(e); } } @Bean public SqlSessionTemplate sqlSessionTemplate(SqlSessionFactory sqlSessionFactory) { return new SqlSessionTemplate(sqlSessionFactory); } @Bean @Override public PlatformTransactionManager annotationDrivenTransactionManager() { return new DataSourceTransactionManager(dataSource); } }Le code ci-dessus crée un SqlSessionFactory et un SqlSessionTemplate Afin de prendre en charge les transactions d'annotation, l'annotation @EnableTransactionManagement est ajoutée et un PlatformTransactionManagerBean est renvoyé. . Il convient également de noter qu'il n'y a pas de MapperScannerConfigurer dans cette configuration. Si nous voulons scanner l'interface Mapper de MyBatis, nous devons configurer cette classe. Nous devons mettre cette configuration dans une classe distincte.
/** * MyBatis扫描接口 * * @author liuzh * @since 2015-12-19 14:46 */ @Configuration //TODO 注意,由于MapperScannerConfigurer执行的比较早,所以必须有下面的注解 @AutoConfigureAfter(MyBatisConfig.class) public class MyBatisMapperScannerConfig { @Bean public MapperScannerConfigurer mapperScannerConfigurer() { MapperScannerConfigurer mapperScannerConfigurer = new MapperScannerConfigurer(); mapperScannerConfigurer.setSqlSessionFactoryBeanName("sqlSessionFactory"); mapperScannerConfigurer.setBasePackage("tk.mybatis.springboot.mapper"); return mapperScannerConfigurer; } }Assurez-vous de faire attention à @AutoConfigureAfter(MyBatisConfig.class) pour cette configuration, sinon il y aura des exceptions. La raison en est que cette classe est exécutée relativement tôt, puisque sqlSessionFactory n'existe pas encore, des erreurs d'exécution ultérieures se produisent. Après avoir terminé la configuration ci-dessus, vous pouvez utiliser MyBatis. À propos de l'intégration du plug-in de pagination et du Mapper universelUn exemple de plug-in de pagination en tant que plug-in se trouve dans le code ci-dessus. La configuration générale du Mapper consiste en fait à utiliser tk.mybatis.spring.mapper.MapperScannerConfigurer lors de la configuration de MapperScannerConfigurer et à configurer les propriétés à l'aide de Propriétés. Projet de base pour Spring Boot intégrant MyBatisJ'ai téléchargé sur github un projet d'intégration en utilisant la deuxième méthode, et intégré le plug-in de pagination et le mapper universel. Le projet contient une configuration et des opérations simples, pour référence seulement. Adresse du projet : https://github.com/abel533/MyBatis-Spring-BootDes informations connexes sur le plug-in de pagination et le mappeur général peuvent être trouvées à l'adresse ci-dessus. Références associées : Guide de démarrage rapide de Spring BootTutoriel de démarrage rapide de Spring Boot
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!