springboot與mybatis整合實例詳解(完美融合)
簡介
從 Spring Boot 項目名稱中的 Boot 可以看出來,Spring Boot 的作用在于創(chuàng)建和啟動新的基于 Spring 框架的項目。它的目的是幫助開發(fā)人員很容易的創(chuàng)建出獨立運行和產(chǎn)品級別的基于 Spring 框架的應(yīng)用。Spring Boot 會選擇最適合的 Spring 子項目和第三方開源庫進行整合。大部分 Spring Boot 應(yīng)用只需要非常少的配置就可以快速運行起來。
Spring Boot 包含的特性如下:
創(chuàng)建可以獨立運行的 Spring 應(yīng)用。
直接嵌入 Tomcat 或 Jetty 服務(wù)器,不需要部署 WAR 文件。
提供推薦的基礎(chǔ) POM 文件來簡化 Apache Maven 配置。
盡可能的根據(jù)項目依賴來自動配置 Spring 框架。
提供可以直接在生產(chǎn)環(huán)境中使用的功能,如性能指標(biāo)、應(yīng)用信息和應(yīng)用健康檢查。
沒有代碼生成,也沒有 XML 配置文件。
好了,上面說這么多都是給下文做鋪墊,感興趣的朋友繼續(xù)往下閱讀吧。
大家都知道springboot搭建一個spring框架只需要秒秒鐘。
下面給大家介紹一下springboot與mybatis的完美融合:
首先:創(chuàng)建一個名為springboot-mybatis的maven項目,記?。阂欢ㄒ猰aven哦,不懂maven的可以自己惡補一下maven知識,這里就不介紹maven了。
下面給出pom.xml的完整配置:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>springboot-mybatis</groupId> <artifactId>springboot-mybatis</artifactId> <version>1.0.0</version> <packaging>war</packaging> <name>springBoot-mybatis</name> <description>Spring Boot project</description> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.3.2.RELEASE</version> <relativePath/> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.1.1</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.21</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <skip>true</skip> </configuration> </plugin> </plugins> </build> </project>
之后創(chuàng)建一個啟動類:
package org.shenlan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; /** * Created by wangwei on 2016/9/2. */ @SpringBootApplication public class Application { public static void main(String[] args){ SpringApplication.run(Application.class,args); } }
這樣一個完整的springboot項目就完成了,是不是很簡單。
接下來就可以整理與mybatis的東東了。
首先,創(chuàng)建配置文件:application.properties
spring.datasource.url=jdbc:mysql://localhost:3306/test spring.datasource.username=root spring.datasource.password=root spring.datasource.driver-class-name=com.mysql.jdbc.Driver server.port=1111
這里server.port=1111是定義了改項目的端口,默認的是8080.
然后,定義一個java的實體類:
package org.shenlan.web; /** * Created by wangwei on 2016/9/2. */ public class User { private Integer id; private String name; private Integer age; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } }
這里實體類的字段要和數(shù)據(jù)庫的字段對應(yīng)起來,不然就要取別名了。
之后,定義一個dao的接口:
package org.shenlan.web; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; /** * Created by Administrator on 2016/9/2. */ @Mapper public interface UserMapper { @Select("select * from user where name = #{name}") User findUserByName(@Param("name")String name); }
@Mapper就是我們要與mybatis融合關(guān)鍵的一步,只要一個注解就搞定了。
哈哈哈,最后我們就來寫一個測試類吧:
package org.shenlan.web; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.RestController; /** * Created by wangwei on 2016/9/2. */ @RestController @RequestMapping({"/home"}) public class UserController { @Autowired UserMapper userMapper; @RequestMapping(value = "/user") @ResponseBody public String user(){ User user = userMapper.findUserByName("王偉"); return user.getName()+"-----"+user.getAge(); } } @RestController是對應(yīng)的restful風(fēng)格的控制器,@RequestMapping里面可以對應(yīng)一個數(shù)組哦
打開瀏覽器,輸入:http://localhost:1111/home/user
效果如下:
以上所述是小編給大家介紹的springboot與mybatis整合實例詳解(完美融合),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- springboot+mybatis-plus 兩種方式打印sql語句的方法
- springboot整合mybatis將sql打印到日志的實例詳解
- Springboot中MyBatisplus使用IPage和Page分頁的實例代碼
- SpringBoot項目的logback日志配置(包括打印mybatis的sql語句)
- SpringBoot Mybatis Plus公共字段自動填充功能
- springboot下mybatis-plus如何打印sql日志和參數(shù)到日志文件
- springboot+springmvc+mybatis項目整合
- springboot+mybatis配置控制臺打印sql日志的方法
- springboot+mybatis通過實體類自動生成數(shù)據(jù)庫表的方法
- 關(guān)于SpringBoot+Mybatis報MapperScan.factoryBean()問題
相關(guān)文章
SpringBoot @JsonDeserialize自定義Json序列化方式
這篇文章主要介紹了SpringBoot @JsonDeserialize自定義Json序列化方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-10-10Mybatis-Plus開發(fā)提速器mybatis-plus-generator-ui詳解
這篇文章主要介紹了Mybatis-Plus開發(fā)提速器mybatis-plus-generator-ui,本文簡要介紹一款基于Mybatis-Plus的代碼自助生成器,文章通過實例集成的方式來詳細講解mybatis-plus-generator-ui,從相關(guān)概念到實際集成案例,以及具體的擴展開發(fā)介紹,需要的朋友可以參考下2022-11-11Java 注冊時發(fā)送激活郵件和激活的實現(xiàn)示例
這篇文章主要介紹了Java 注冊時發(fā)送激活郵件和激活的實現(xiàn)示例的相關(guān)資料,需要的朋友可以參考下2017-07-07Java構(gòu)造方法 super 及自定義異常throw合集詳解用法
異常是程序中的一些錯誤,但不是所有錯誤都是異常,且錯誤有時候是可以避免的,super可以理解為是指向自己超(父)類對象的一個指針,而這個超類指的是離自己最近的一個父類,構(gòu)造器也叫構(gòu)造方法、構(gòu)造函數(shù),是一種特殊類型的方法,負責(zé)類中成員變量(域)的初始化2021-10-10