1. 程式人生 > >spring boot和mybatis整合

spring boot和mybatis整合

maven的依賴配置
	<!-- spring boot 版本號 -->
  	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>1.3.0.RELEASE</version>
	</parent>

	<!-- 依賴 -->
	<dependencies>
		<!-- spring boot web包  包含Spring MVC/SLF4j/Jackson/Hibernate Validator等依賴 -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
			<!-- 不使用預設的預設的日誌框架 Logback -->
			<exclusions>
				<exclusion>
					<groupId>org.springframework.boot</groupId>
					<artifactId>spring-boot-starter-logging</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<!-- 支援freemarker作為模板引擎 -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-freemarker</artifactId>
		</dependency>
		<!-- 支援使用jdbc訪問資料庫 -->
<!-- 		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-jdbc</artifactId>
		</dependency> -->
		<!-- 支援log4j -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-log4j</artifactId>
		</dependency>
		<!-- 支援aop程式設計  包含spring-aop 和  AspectJ -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-aop</artifactId>
		</dependency>
		<!-- 包含常用的測試所需的依賴,如 JUnit、Hamcrest、Mockito 和 spring-test 等。 -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
		</dependency>
		<!-- 自動應用程式碼更改到最新的App上面(熱部署) -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-devtools</artifactId>
			<optional>true</optional>
		</dependency>
		<!-- 使用tomcat作為伺服器 -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-tomcat</artifactId>
			<scope>provided</scope>
		</dependency>
		<!-- redis依賴 -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-redis</artifactId>
		</dependency>
		<!-- mybatis依賴 -->
		<dependency>
		    <groupId>org.mybatis.spring.boot</groupId>
		    <artifactId>mybatis-spring-boot-starter</artifactId>
		    <version>1.0.0</version>
		</dependency>
		
		<!-- 其他依賴 -->
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>5.1.28</version>
		</dependency>
	</dependencies>
	
	<build>
		<plugins>
			<plugin>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-maven-plugin</artifactId>
			<executions>
			<execution>
			<goals>
			<goal>repackage</goal>
			</goals>
			</execution>
			</executions>
			</plugin>
		</plugins>
	</build>

mysql驅動哪兒會提示一個5.1.37版本的驅動被覆蓋,當我不配置這個依賴的時候,專案會提示找不到mysql的驅動,這個我不確定是什麼原因.

我的依賴並不是最簡依賴,是我找到的一個比較全的配置,並且有註解,可以根據自己的需求進行刪減.

application.yml的配置檔案   此配置檔案需要放在classpath目錄下

# Server settings  
server:  
    port: 8080  
    address: localhost
    contextPath: /boot-mybatis
  
# SPRING PROFILES  
spring:         
    # HTTP ENCODING  
    http:  
        encoding.charset: UTF-8  
        encoding.enable: true  
        encoding.force: true  
    datasource:  
        url: jdbc:mysql://***.***.***.***:3306/test?useUnicode=true&characterEncoding=utf-8  
        username: ***
        password: ***
        max-active: 100
        max-idle: 10
        min-idle: 5

mybatis-config.xml的配置
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <typeAliases>
        <package name="com.liutong.application.domain"/>
    </typeAliases>
    <mappers>
        <mapper resource="com/liutong/application/dao/UserDao.xml" />
    </mappers>
</configuration>
這兒有個注意的地方是,我的mapper.xml雖然放置在了src/main/resources下,但是路徑是和Dao的介面在同一目錄下,而且名字也是相同的.

實體類

package com.liutong.application.domain;

public class User {
	private Long id;
	private String username;
	private String password;
	public Long getId() {
		return id;
	}
	public void setId(Long id) {
		this.id = id;
	}
	public String getUsername() {
		return username;
	}
	public void setUsername(String username) {
		this.username = username;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	@Override
	public String toString() {
		return "User [id=" + id + ", username=" + username + ", password="
				+ password + "]";
	}
}

UserDao的Mapper
<?xml version="1.0" encoding="UTF-8" ?>  
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">  
<mapper namespace="com.liutong.application.dao.UserDao">  
	<resultMap type="com.liutong.application.domain.User" id="User">
		<id property="id" column="id" javaType="java.lang.Long"/>  
		<result property="username" column="username" javaType="java.lang.String"/>
		<result property="password" column="password" javaType="java.lang.String"/>
	</resultMap>
	
	<select id="queryUserById"  parameterType="java.lang.Integer" resultMap="User">
		select id,username,password from user
		<where>
			id = #{id}
		</where>
	</select>
</mapper>

Dao實現類
package com.liutong.application.dao.impl;

import org.mybatis.spring.SqlSessionTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;

import com.liutong.application.dao.UserDao;
import com.liutong.application.domain.User;

@Repository
public class UserDaoImpl implements UserDao{
	@Autowired
	private SqlSessionTemplate sqlSessionTemplate;
	
	public User queryUserById(Long id){
		return sqlSessionTemplate.selectOne("queryUserById",id);
	}
}

最重要的Application類
package com.liutong.application;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.Configuration;

@Configuration
@EnableAutoConfiguration 
public class Application {
	public static void main(String[] args) {  
        SpringApplication.run(Application.class, args);  
	}
}

我能想到的,需要放上來的就都放上來了,為了怕有些遺漏,我把整個demo也打包上傳了,連結在後面

連結在這兒

---------------------------- 分割線 --------------------------

很久沒有上CSDN了,看到有人評價我的原始碼,打的是jar包,無法看到程式碼,我深表歉意,當年我對這些也分不太清楚。。。

我已經將程式碼傳到了這兒,有問題可以和我溝通

相關推薦

spring bootmybatis整合

maven的依賴配置 <!-- spring boot 版本號 --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>

spring bootmybatis整合分頁外掛

MyBatis提供了攔截器介面,我們可以實現自己的攔截器,將其作為一個plugin裝入到SqlSessionFactory中。  首先要說的是,Spring在依賴注入bean的時候,會把所有實現MyBatis中Interceptor介面的所有類都注入到SqlSession

spring-bootmybatis整合

在idea裡建立一個spring-boot工程 選依賴的時候把web裡的web勾上,sql裡的mysql和mybatis也勾上 ,

快速通過Spring Bootmybatis製作登陸Demo(內附原始碼)

國慶小長假用 Spring Boot 和 mybatis 寫了一個帶有登陸功能的後臺文章管理微服務,感覺非常的快捷和愉快,在這裡總結一下登入部分的做法和實現思路,希望大家多提寶貴意見。 在這裡先分享我之前的一篇一篇部落格:一個基於Spring Boot的API、RESTfu

Spring BootMyBatis整合Druid

Spring Boot中MyBatis整合Druid MyBatis整合Druid 1. 引入依賴 2. 配置application.properties 3. DruidConfiguration 4. DruidStatFil

Spring BootDubbo整合

  程式碼demo http://git.oschina.net/zhangxh20/spring-boot-dubbo 專案共分成4個模組 dubbo-api dubbo-dao dubbo-service dubbo-web dubbo-

6、Spring BootMyBatis整合

1.6 Spring Boot 與MyBatis整合 簡介 詳細介紹如何在Spring Boot中整合MyBatis,並通過註解方式實現對映。 完整原始碼: 1.6.1 建立 spring-boot-mybatis 專案 pom檔案如下 <?xml version="1

Spring Boot學習筆記(Spring Boot activeMQ整合

Spring Boot學習筆記使用步驟: Spring Boot:並不是不對 Spring 功能上的增強,而是提供了一種快速使用 Spring 的方式。 使用步驟: 1、起步依賴:pom.xml中配置起步依賴,會自動匯入spring相關的許多jar包 <

輕輕鬆鬆學習SpringBoot2:第二十五篇: Spring BootMongodb整合(完整版)

今天主要講的是Spring Boot和Mongodb整合我們先來回顧一下前面章節的相關內容前面我們講了SpringBoot和mysql整合,並且講了操作資料庫的幾種方式自動生成表資料庫操作操作篇回到正題,mongodb的安裝在這就不累述了,win版本的去官網下載,然後一直下一

利用spring bootmybatis構建介面

想做一個心情收納箱的軟體,幫助我在心情低落的時候找找合適的排憂途徑。人嘛,總有低落的時候,只有在低落的時候能夠快速恢復,才能不會更低落 注:因為這是真實專案下來的,所以我把import去掉了 1、首先應該弄明白 mapper.xml 和 mapper 之間是如何聯絡起來的 看一個

spring bootMyBatis整合

application.properties增加spring配置資料庫連結地址 spring.datasource.url=jdbc:mysql://localhost:3306/***?useUnicode=true&characterEncoding=utf

spring bootmybatis整合

本專案使用的環境: 開發工具:Intellij IDEA 2018.1.3 springboot: 2.0.5.RELEASE jdk:1.8.0_161 maven:3.5.3 首先先建立springboot專案 選擇需要的模組 填寫包名 1.開始在專案

spring-boot redis 整合的一個小例子

轉自:http://blog.csdn.net/a67474506/article/details/52595053 在網上看到好多的spring-boot和redis整合的,弄到本地一直報Error resolving template "get", template m

在使用 Spring Boot MyBatis 動態切換資料來源時遇到的問題以及解決方法

1. org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)在使用了動態資料來源後遇到了該問題,從錯誤資訊來看是因為沒有找到 *.xml 檔案而導致的,但是在配置檔案中 確實添加了相關的配置,這種錯誤的原因

spring bootMybatis整合(*)

業務層 tomcat ng- quest map big selectall esp 連接 在pom.xml文件中加入數據庫、spring-mybatis整合 <!-- spring boot 整合mybatis --> <de

Spring BootThymeleaf整合,結合JPA實現分頁效果

    在專案裡,我需要做一個Spring Boot結合Thymeleaf前端模版,結合JPA實現分頁的演示效果。做的時候發現有些問題,也查了現有網上的不少文件,發現能全棧實現的不多,所以這裡我就把我的做法,全部程式碼和步驟貼出來供大家參考。 1 建立專案,用pom.xml引入依賴 &nb

Spring+SpringMVC+MyBatis深入學習及搭建(十四)——SpringMVCMyBatis整合

文件拷貝 conf lips glib ide doc from ive body 轉載請註明出處:http://www.cnblogs.com/Joanna-Yan/p/7010363.html 前面講到:Spring+SpringMVC+MyBatis深入學習及搭建(

Springmybatis整合 org.mybatis.spring.mapper.MapperScannerConfigurer

註冊 rop repo html itl tar hive mybatis property 在springmvc與mybatis整合時,需要對每一個mapper定義對應的一個MapperFactoryBean,可以使用MapperScannerConfigurer自動掃描

Spring Mybatis 整合

inter 映射文件 rem sna import enc -m lap sql 首先我們創建一個Java Project,名稱任意,然後導入所需要包:spring3.1.1, mybatis-3.1.1.jar, mysql-connector-java-5.1.2-be

spring boot配置mybatis事務管理

生成 很多 -s 順序 south 位置 ron 技術 username spring boot配置mybatis和事務管理 一、spring boot與mybatis的配置 1.首先,spring boot 配置mybatis需要的全部依賴如下: <!-- Spri