欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

springBoot詳細講解使用mybaties案例

 更新時間:2022年05月27日 08:36:05   作者:我要用代碼向我喜歡的女孩表白  
MyBatis本是apache的一個開源項目iBatis,2010年這個項目由apache software foundation遷移到了google code,并且改名為MyBatis。2013年11月遷移到Github。iBATIS一詞來源于“internet”和“abatis”的組合,是一個基于Java的持久層框架

首先創(chuàng)建springBoot項目,jdk選擇1.8

然后倒入mybaties的相關依賴

我們用的springBoot,當然spring全家桶里面含有mybaties,所以我們直接使用升級版的mybaties-plus。

引入這3個

lombok省的我每次創(chuàng)建對象,都需要get、set方法,以及toString

(IDEA里面也要安裝lombok插件-》file->setting->plugin->搜索lombok安裝,完后重啟idea,這樣lombok在idea中不報錯)

mybatis-plus,mybaties的相關jar

mysql-connector-java 基本的jdbc驅(qū)動鏈接mysql,mybatis也要依賴他

	<properties>
		<java.version>1.8</java.version>
		<mybatis-plus.version>3.4.2</mybatis-plus.version>
	</properties>
    <dependency>
		<groupId>com.baomidou</groupId>
		<artifactId>mybatis-plus-boot-starter</artifactId>
		<version>${mybatis-plus.version}</version>
	</dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
		<dependency>
			<groupId>org.projectlombok</groupId>
			<artifactId>lombok</artifactId>
			<version>1.18.4</version>
			<scope>provided</scope>
		</dependency>

然后像我這樣,假設我們要搭建一個非常2的大工程,建立這幾個目錄和文件

controller->TestController.java(class)

mapper->TestMapper.java(interface)

service->impl->TestServiceImpl.java(class)

service->TestService.java(interface)

resources->mapper->TestMapper.xml(映射xml)

接下來我們需要一個SqlSessionFactory,去解析一個個sql.xml。

而sqlSessionFactory,由SqlSessionFactoryBuilder 構建,構建一個SqlSessionFactoryBuilder ,需要鏈接mysql的賬號密碼地址。所以要讀取你的賬號密碼,那在resource目錄下創(chuàng)建一個xml用于他去讀取。

我在resources下的mapper里面創(chuàng)建一個mybaties-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>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
                <property name="url" value="192.168.19.88"/>
                <property name="username" value="m11"/>
                <property name="password" value="m11@2022"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="mapper/TestMapper.xml"/>
    </mappers>
</configuration>

創(chuàng)建一個domain包,用來與mysql做相關映射,我在里面創(chuàng)建了一個實體類,與數(shù)據(jù)庫做映射

@Data的就是我第一次導入的那個包,能夠自動通過@Data注解,生成這個實體類的get、set方法以及toString方法。

package com.example.demo.domain;
import lombok.Data;
@Data
public class BZGG {
    String req_date;
    String stock_code;
    String stock_name;
    double fNextIncrease;
    double fNextAvgIncrease;
    String updatetime;
    public BZGG(String req_date, String stock_code, String stock_name, double fNextIncrease, double fNextAvgIncrease, String updatetime) {
        this.req_date = req_date;
        this.stock_code = stock_code;
        this.stock_name = stock_name;
        this.fNextIncrease = fNextIncrease;
        this.fNextAvgIncrease = fNextAvgIncrease;
        this.updatetime = updatetime;
    }
    public BZGG() {
    }
}

在mapper中的TestMapper中編寫一個地址,并且加上Mapper映射

package com.example.demo.mapper;
import com.example.demo.domain.BZGG;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@Mapper
public interface TestMapper {
    List<BZGG> getBZGGonTime(String req_date);
}

mybaties的代碼流程圖

resources中的sql配置(TestMapper.xml)

<?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.example.demo.mapper.TestMapper">
    <select id="getBZGGonTime" resultType="com.example.demo.domain.BZGG">
        select * from   db_guoyuan.t_longhubang_stock_bzgg where req_date = #{req_date}
    </select>
</mapper>

controller層代碼(你到時候可以自己分離service),為了突出mybaties暫時寫到一起了

package com.example.demo.controller;
import com.example.demo.domain.BZGG;
import com.example.demo.mapper.TestMapper;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.springframework.web.bind.annotation.*;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
@RestController
public class TestController {
    @RequestMapping(value = "/Test", method = RequestMethod.GET)
    @ResponseBody
    public String getDemo(@RequestParam("num") int i) {
        String resource = "mapper/mybatis-config.xml";
        InputStream inputStream = null;
        try {
            inputStream = Resources.getResourceAsStream(resource);
        } catch (IOException e) {
            e.printStackTrace();
        }
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        SqlSession sqlSession = sqlSessionFactory.openSession();
        TestMapper mapper = sqlSession.getMapper(TestMapper.class);
        List<BZGG> bzgGonTime = mapper.getBZGGonTime("2022-04-08");
        return bzgGonTime.toString();
    }
}

另外SpringApplication啟動類,因為導入了mybaties,所以要啟動時加載某個類,否則會出現(xiàn)url找不到等錯誤。

將@springBootApplication改成下面的

@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class, DataSourceTransactionManagerAutoConfiguration.class })
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration;
//在啟動類的@SpringBootApplication加上
//避免沖突,加入exclude
@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class, DataSourceTransactionManagerAutoConfiguration.class })
public class DemoApplication {
	public static void main(String[] args) {
		SpringApplication.run(DemoApplication.class, args);
	}
}

測試:

到此這篇關于springBoot詳細講解使用mybaties案例的文章就介紹到這了,更多相關springBoot mybaties內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • java、springboot?接口導出txt方式

    java、springboot?接口導出txt方式

    這篇文章主要介紹了java、springboot?接口導出txt方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • java selenium Selenium IDE介紹及用法

    java selenium Selenium IDE介紹及用法

    本文主要介紹java selenium Selenium IDE,這里整理了相關資料和介紹如何安裝 Selenium IDE和使用方法,有需要的小伙伴可以參考下
    2016-08-08
  • SpringCloud使用Ribbon實現(xiàn)負載均衡的流程步驟

    SpringCloud使用Ribbon實現(xiàn)負載均衡的流程步驟

    在微服務架構中,負載均衡是一項關鍵的技術,它可以確保各個服務節(jié)點間的負載分布均勻,提高整個系統(tǒng)的穩(wěn)定性和性能,Spring Cloud 中的 Ribbon 就是一種負載均衡的解決方案,本文將深入探討 Ribbon 的原理和在微服務中的應用,需要的朋友可以參考下
    2024-02-02
  • java讀取wav文件(波形文件)并繪制波形圖的方法

    java讀取wav文件(波形文件)并繪制波形圖的方法

    這篇文章主要介紹了java讀取wav文件(波形文件)并繪制波形圖的方法,涉及java操作多媒體音頻文件轉(zhuǎn)換的相關技巧,需要的朋友可以參考下
    2015-06-06
  • IKAnalyzer結合Lucene實現(xiàn)中文分詞(示例講解)

    IKAnalyzer結合Lucene實現(xiàn)中文分詞(示例講解)

    下面小編就為大家?guī)硪黄狪KAnalyzer結合Lucene實現(xiàn)中文分詞(示例講解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • Java 讀取PDF中的文本和圖片的方法

    Java 讀取PDF中的文本和圖片的方法

    本文將介紹通過Java程序來讀取PDF文檔中的文本和圖片的方法。分別調(diào)用方法extractText()和extractImages()來讀取,需要的朋友可以參考下
    2019-07-07
  • SpringCloud Alibaba 基本開發(fā)框架搭建過程

    SpringCloud Alibaba 基本開發(fā)框架搭建過程

    這篇文章主要介紹了SpringCloud Alibaba 基本開發(fā)框架搭建過程,開發(fā)工具選用的idea,本文通過圖文實例相結合給大家分享搭建全過程,需要的朋友可以參考下
    2021-06-06
  • springboot2.3 整合mybatis-plus 高級功能(圖文詳解)

    springboot2.3 整合mybatis-plus 高級功能(圖文詳解)

    這篇文章主要介紹了springboot2.3 整合mybatis-plus 高級功能,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-08-08
  • SpringCloud超詳細講解Feign聲明式服務調(diào)用

    SpringCloud超詳細講解Feign聲明式服務調(diào)用

    Feign可以把Rest的請求進行隱藏,偽裝成類似Spring?MVC的Controller一樣。不用再自己拼接url,拼接參數(shù)等等操作,一切都交給Feign去做
    2022-06-06
  • 深入了解Spring中最常用的11個擴展點

    深入了解Spring中最常用的11個擴展點

    我們一說到spring,可能第一個想到的是?IOC(控制反轉(zhuǎn))?和?AOP(面向切面編程)。除此之外,我們在使用spring的過程中,有沒有發(fā)現(xiàn)它的擴展能力非常強。今天就來跟大家一起聊聊,在Spring中最常用的11個擴展點
    2022-09-09

最新評論