成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

SpringBoot2.0之五 優(yōu)雅整合SpringBoot2.0+MyBatis+druid+Pa

hatlonely / 3539人閱讀

摘要:當(dāng)禁用時,所有關(guān)聯(lián)對象都會即時加載。不同的驅(qū)動在這方便表現(xiàn)不同。參考驅(qū)動文檔或充分測試兩種方法來決定所使用的驅(qū)動。需要適合的驅(qū)動。系統(tǒng)默認(rèn)值是設(shè)置字段和類是否支持駝峰命名的屬性。

??上篇文章我們介紹了SpringBoot和MyBatis的整合,可以說非常簡單快捷的就搭建了一個web項目,但是在一個真正的企業(yè)級項目中,可能我們還需要更多的更加完善的框架才能開始真正的開發(fā),比如連接池、分頁插件等。下面我們就來看看在SpringBoot中怎么快速的集成這些東西。

一、新建一個項目,引入相關(guān)依賴,加粗的是本項目中新引入的依賴


      
        org.springframework.boot
        spring-boot-starter-test
    
    
    
    
        org.springframework.boot
        spring-boot-starter-web
    
    
    
        org.mybatis.spring.boot
        mybatis-spring-boot-starter
        1.3.1
    
    
    
    
       com.alibaba
       druid
       1.1.8
   
   
    
    
    
        mysql
        mysql-connector-java
    
    
    
    
    
      com.github.pagehelper
      pagehelper
      5.1.2
   
   

二、為了項目配置的整潔性,在SpringBoot-mybatis的項目基礎(chǔ)上,我將數(shù)據(jù)庫和MyBatis的相關(guān)操作進(jìn)行了統(tǒng)一配置,使得配置根據(jù)清晰簡單,項目結(jié)構(gòu)如下

后期項目會將所有的配置放在configuration包下,具體數(shù)據(jù)庫配置如下

@Configuration
@MapperScan(value = "com.somta.springboot.dao")
public class MyBatisConfiguration {

    @Value("${spring.datasource.driver-class-name}")
    private String driverClassName;

    @Value("${spring.datasource.url}")
    private String url;

    @Value("${spring.datasource.username}")
    private String username;

    @Value("${spring.datasource.password}")
    private String password;

    @Bean
    public DruidDataSource dataSource() {
        DruidDataSource dataSource = new DruidDataSource();
        dataSource.setDriverClassName(this.driverClassName);
        dataSource.setUrl(this.url);
        dataSource.setUsername(this.username);
        dataSource.setPassword(this.password);

        dataSource.setInitialSize(5);
        dataSource.setMaxActive(30);
        dataSource.setMinIdle(5);
        dataSource.setMaxWait(60000);
        return dataSource;
    }

    @Bean(name="sqlSessionFactory")
    public SqlSessionFactoryBean sqlSessionFactory(DataSource dataSource) throws IOException {
        SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();
        sqlSessionFactoryBean.setDataSource(dataSource);
        sqlSessionFactoryBean.setConfigLocation(new ClassPathResource("mybatis-config.xml"));
        sqlSessionFactoryBean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath*:mybatis/**/Mysql_*Mapper.xml"));
        return sqlSessionFactoryBean;
    }
}

1、將Dao層掃描和MyBatis文件的掃描統(tǒng)一放在配置文件中

2、使用了阿里開源的Druid連接池,SpringBoot默認(rèn)使用的連接池是Hikari,兩者之間的優(yōu)缺點后續(xù)將會多帶帶介紹,配置成功后啟動項目,我們可以看到項目當(dāng)前使用的是那種連接池,如下圖:

3、在src/main/resources下面新增了一個mybatis-config文件,該文件配置了MyBatis與數(shù)據(jù)庫的相關(guān)信息,和PageHelper的相關(guān)配置,注意:(在不同的PageHelper版本中PageHelper的攔截器發(fā)生了變化,PageHelper-4.1.1中使用的是com.github.pagehelper.PageHelper,在PageHelper-5.1.2中使用的攔截器是com.github.pagehelper.PageInterceptor,具體小版本以官網(wǎng)公告為準(zhǔn))




    
        
    
    
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
          
          
    
    
        
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
        
    

三、PageHelper的使用方法

PageHelper.startPage(pageNum, pageSize)只作用離它最近的一個查詢,更多與分頁相關(guān)的信息我們都可以在page對象中拿到,完全可以滿足各種情況下的分頁查詢。

@Test
public void testQueryUserList() throws Exception {
        int pageNum=1;
        int pageSize=10;
        Page page = PageHelper.startPage(pageNum, pageSize);
        userDao.queryUserList();
        System.out.println("總共條數(shù):"+page.getTotal());
        for (User user : page.getResult()) {
            System.out.println(user.getName());
        }
    }

看到如圖所示的輸出表示分頁插件配置成功了

Git代碼地址:https://gitee.com/Somta/Sprin...
原文地址:http://somta.com.cn/#/blog/vi...

本文由明天的地平線創(chuàng)作,如想了解更多更詳細(xì)的內(nèi)容,請關(guān)注一下公眾號,公眾號內(nèi)將進(jìn)行最新最實時的更新!

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/71211.html

相關(guān)文章

  • 基于 SpringBoot2.0+優(yōu)雅整合 SpringBoot+Mybatis

    摘要:基于最新的,是你學(xué)習(xí)的最佳指南。驅(qū)動程序通過自動注冊,手動加載類通常是不必要。由于加上了注解,如果轉(zhuǎn)賬中途出了意外和的錢都不會改變。三的方式項目結(jié)構(gòu)相比于注解的方式主要有以下幾點改變,非常容易實現(xiàn)。公眾號多篇文章被各大技術(shù)社區(qū)轉(zhuǎn)載。 Github 地址:https://github.com/Snailclimb/springboot-integration-examples(Sprin...

    gghyoo 評論0 收藏0
  • SpringBoot2.0之四 簡單整合MyBatis

    摘要:從最開始的到后來的,到目前的隨著框架的不斷更新?lián)Q代,也為我們廣大的程序猿提供了更多的方便,一起搭建一個從控制層到持久層的項目可能需要一兩天的時間,但是采用的方式,我們可能只需要分鐘就能輕松完成一個項目的搭建,下面我們介紹一下整合的方法一新建 ??從最開始的SSH(Struts+Spring+Hibernate),到后來的SMM(SpringMVC+Spring+MyBatis),到目前...

    Sanchi 評論0 收藏0
  • SpringBoot2.0之三 優(yōu)雅整合Spring Data JPA

    摘要:的配置后在其他低版本的中也有使用這種配置的,具體根據(jù)版本而定。等注解是的相關(guān)知識,后面的文章將詳細(xì)講述。 ??在我們的實際開發(fā)的過程中,無論多復(fù)雜的業(yè)務(wù)邏輯到達(dá)持久層都回歸到了增刪改查的基本操作,可能會存在關(guān)聯(lián)多張表的復(fù)雜sql,但是對于單表的增刪改查也是不可避免的,大多數(shù)開發(fā)人員對于這個簡單而繁瑣的操作都比較煩惱。 ??為了解決這種大量枯燥的簡單數(shù)據(jù)庫操作,大致的解決該問題的有三種方...

    ningwang 評論0 收藏0
  • 這是一篇優(yōu)雅Springboot2.0使用手冊

    最近再研究springboot的原理

    ?。琛?/span> 評論0 收藏0
  • 新手也能實現(xiàn),基于SpirngBoot2.0+ 的 SpringBoot+Mybatis 多數(shù)據(jù)源配

    摘要:下面基于,帶著大家看一下中如何配置多數(shù)據(jù)源。注意版本不一致導(dǎo)致的一些小問題。配置配置兩個數(shù)據(jù)源數(shù)據(jù)庫和數(shù)據(jù)庫注意事項在配置數(shù)據(jù)源的過程中主要是寫成和。五啟動類此注解表示啟動類這樣基于的多數(shù)據(jù)源配置就已經(jīng)完成了,兩個數(shù)據(jù)庫都可以被訪問了。 在上一篇文章《優(yōu)雅整合 SpringBoot+Mybatis ,可能是你見過最詳細(xì)的一篇》中,帶著大家整合了 SpringBoot 和 Mybatis...

    shiina 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<