使用springboot框架,您可以輕鬆快速地建立獨立的生產層級的spring應用程式。 springboot主要有以下的特性:
1.創建獨立的Spring應用
2.直接嵌入Tomcat等Web容器(不需要部署WAR檔案)
3.提供固化的「starter」依賴,簡化構建配置
4.當條碼滿足時自動裝配Spring貨第三方類庫
5.提供運維的特性,如指標信息,健康檢查和外部設定
6.不需要XML設定。
引入mybatis的starter依賴和相關的資料庫驅動
<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.2.0</version> </dependency>
程式使用
//程序的启动类 @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(); }
上面的程式碼,大家都是很熟悉的,springboot是如何實現@Mapper的註解,就可以操作資料庫呢(就是中間有個橋樑,如何將springboot和mybatis連接起來的,而這個橋樑是如何實現的呢)
從啟動類別尋找橋樑
透過原始碼可以知道
橋樑=@SpringBootApplication=>@EnableAutoConfiguration=>@Import({ AutoConfigurationImportSelector.class})
分析原始碼可知AutoConfigurationImportSelector的主要作用
掃描classpath下所有的jar套件
掃描classpath下所有的jar套件
掃描classpath下所有的jar套件
# ##在META-INF/spring.factories配置好的AutoConfiguration############掃描出來需要執行的AutoConfguration#############回想再使用mybatis的時候,是需要引入mybatis的starter依賴套件的,再結合AutoConfigurationImportSelector的第二點功能,可以到對應的jar下找到mybatis的AutoConfguration。 #########################也就是說spring-boot啟動【會建立個spring容器】的時候,會去執行MybatisAutoConfiguration的邏輯【處理@ Mapper的類別(掃描出來注入srping容器)和資料庫連線等功能】。 ###以上是Springboot框架怎麼實現自動組裝的詳細內容。更多資訊請關注PHP中文網其他相關文章!