日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

spring中使用mybatis plus連接sqlserver的方法實現

瀏覽:174日期:2023-07-27 16:30:56

本文主要關注如何使用mybatis/mybatis plus連接SQL Server數據庫,因此將省略其他項目配置、代碼。

框架選擇

應用框架:spring bootORM框架:mybatis plus(對于連接數據庫而言,mybatis和mybatis plus其實都一樣)數據庫連接池:druid

pom依賴

此處僅給出我的配置,mybatis/druid請依據自己項目的需要進行選擇。方便起見我用的是mybatis plus

<!--mybatis plus --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.1.0</version> </dependency><dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>1.3.7</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>2.0.0</version> </dependency> <!-- druid 連接池 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.12</version> </dependency> <!--for SqlServer--> <dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>sqljdbc4</artifactId> <version>4.0</version> </dependency>配置數據源

添加數據庫配置

YAML文件中添加自己數據庫的地址

# SQL Server數據庫spring.datasource.xx.url: jdbc:sqlserver://你的數據庫地址:1433;databaseName=你的數據庫名稱spring.datasource.xx.username: xxxxspring.datasource.xx.password: xxxxspring.datasource.xx.driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver添加數據源

此處和平時我們在spring boot中集成mybatis/mybatis plus一樣,添加bean即可。由于平時經常用到多個數據庫,此處展示一個多數據源的例子:一個是mysql,一個是SQL Server有關mybatis plus配置數據源的注意事項,比如配置mapper文件夾等,請自行問度娘,此處不再一一指出。注意:下面代碼來自實際代碼,但批量刪除了敏感信息、重新命名,因而可能存在與前面配置信息不一致的地方,僅僅是一個示例

Mysql數據源

mysql數據源配置,注意,由于是多數據源,需要有一個數據源配置中加上@Primary注解

@Configuration@MapperScan(basePackages = 'com.xxx.mapper', sqlSessionFactoryRef = 'mysqlSqlSessionFactory')public class MySQLMybatisPlusConfig { @Autowired private MybatisPlusProperties properties; @Autowired private ResourceLoader resourceLoader = new DefaultResourceLoader(); @Autowired(required = false) private Interceptor[] interceptors; @Autowired(required = false) private DatabaseIdProvider databaseIdProvider; @Autowired private Environment env; @Bean(name = 'mysqlDataSource') @Primary public DataSource getRecruitDataSource() throws Exception { Properties props = new Properties(); props.put('driverClassName', env.getProperty('spring.datasource.mysqlData.driver-class-name')); props.put('url', env.getProperty('spring.datasource.mysqlData.url')); props.put('username', env.getProperty('spring.datasource.mysqlData.username')); props.put('password', env.getProperty('spring.datasource.mysqlData.password')); return DruidDataSourceFactory.createDataSource(props); } /** * mybatis-plus分頁插件 */ @Bean public PaginationInterceptor paginationInterceptor() { PaginationInterceptor page = new PaginationInterceptor(); page.setDialectType('mysql'); return page; } @Bean(name = 'mysqlSqlSessionFactory') @Primary public MybatisSqlSessionFactoryBean mybatisSqlSessionFactoryBean(@Qualifier('mysqlDataSource') DataSource mysqlDataSource) throws IOException { MybatisSqlSessionFactoryBean mybatisPlus = new MybatisSqlSessionFactoryBean(); try { mybatisPlus.setDataSource(mysqlDataSource); } catch (Exception e) { e.printStackTrace(); } mybatisPlus.setVfs(SpringBootVFS.class); // 設置分頁插件 MybatisConfiguration mc = new MybatisConfiguration(); mc.setDefaultScriptingLanguage(MybatisXMLLanguageDriver.class); mc.setMapUnderscoreToCamelCase(true);// 數據庫和java都是駝峰,就不需要 mybatisPlus.setConfiguration(mc); if (this.databaseIdProvider != null) { mybatisPlus.setDatabaseIdProvider(this.databaseIdProvider); } mybatisPlus.setTypeAliasesPackage('com.xxx.mysql.bean.model'); mybatisPlus.setTypeHandlersPackage(this.properties.getTypeHandlersPackage()); mybatisPlus.setMapperLocations(this.properties.resolveMapperLocations()); // 設置mapper.xml文件的路徑 ResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(); Resource[] resource = resolver.getResources('classpath:mapper/*.xml'); mybatisPlus.setMapperLocations(resource); return mybatisPlus; }}

SQL Server數據源

@Configuration@MapperScan(basePackages = 'com.xxx.survey.mapper', sqlSessionFactoryRef = 'xxSqlSessionFactory')public class SqlServerMybatisConfig { @Autowired private MybatisPlusProperties properties; @Autowired private ResourceLoader resourceLoader = new DefaultResourceLoader(); @Autowired(required = false) private Interceptor[] interceptors; @Autowired(required = false) private DatabaseIdProvider databaseIdProvider; @Autowired private Environment env; @Bean(name = 'xxDataSource') public DataSource getAttendanceDataSource() throws Exception { Properties props = new Properties(); props.put('driverClassName', env.getProperty('spring.datasource.xx.driver-class-name')); props.put('url', env.getProperty('spring.datasource.xx.url')); props.put('username', env.getProperty('spring.datasource.xx.username')); props.put('password', env.getProperty('spring.datasource.xx.password')); return DruidDataSourceFactory.createDataSource(props); } @Bean(name = 'xxSqlSessionFactory') public MybatisSqlSessionFactoryBean mybatisSqlSessionFactoryBean(@Qualifier('xxDataSource') DataSource xxDataSource) throws IOException { MybatisSqlSessionFactoryBean mybatisPlus = new MybatisSqlSessionFactoryBean(); try { mybatisPlus.setDataSource(xxDataSource); } catch (Exception e) { e.printStackTrace(); } mybatisPlus.setVfs(SpringBootVFS.class); // 設置分頁插件 MybatisConfiguration mc = new MybatisConfiguration(); mc.setDefaultScriptingLanguage(MybatisXMLLanguageDriver.class); mc.setMapUnderscoreToCamelCase(true);// 數據庫和java都是駝峰,就不需要 mybatisPlus.setConfiguration(mc); if (this.databaseIdProvider != null) { mybatisPlus.setDatabaseIdProvider(this.databaseIdProvider); } mybatisPlus.setTypeAliasesPackage('com.xxx.survey.bean.model'); mybatisPlus.setTypeHandlersPackage(this.properties.getTypeHandlersPackage()); mybatisPlus.setMapperLocations(this.properties.resolveMapperLocations()); // 設置mapper.xml文件的路徑 ResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(); Resource[] resource = resolver.getResources('classpath:mapper/*.xml'); mybatisPlus.setMapperLocations(resource); return mybatisPlus; }}生成ORM代碼

到這里,程序啟動應該沒什么問題,接著就應該生成DAO層、Service層代碼了mybatis和mybatis plus在此處按照和連接mysql時一樣的方法,根據需要寫代碼即可。比如對于mybatis plus,需要寫3處代碼:

實體bean,可以利用Spring Boot Code Generator!來根據SQL表結構自動生成

Mapper代碼:都有模板,mybatis plus自己封裝的方法已經很夠用,有單獨需求可以自己寫xml來自定義SQL

@Mapperpublic interface XXXMapper extends BaseMapper<XXX> {}

Service代碼好像也有現成的工具可以自動生成mapper service代碼來著。Service接口

public interface XXXService extends IService<XXX> {}

ServiceImpl

@Servicepublic class XXXServiceImpl extends ServiceImpl<XXXMapper, XXX> implements XXXService {}參考資料

Spring Boot 集成 MyBatis和 SQL Server實踐springboo-mybatis SQL Server

到此這篇關于spring中使用mybatis plus連接sqlserver的方法實現的文章就介紹到這了,更多相關spring連接sqlserver內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Spring
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
好看不卡的中文字幕| 日韩成人午夜精品| 麻豆中文一区二区| 国产另类在线| 国产精品乱战久久久| 国产极品一区| 免费一级欧美片在线观看网站| 国产日韩高清一区二区三区在线| 91麻豆精品| 国产精品久久乐| 国产一区二区三区四区| 日韩免费av| 久久久久.com| jizzjizz中国精品麻豆| 日韩精品首页| 国产主播一区| 亚洲欧美日韩精品一区二区| 亚洲欧美在线专区| 日本久久一区| 国语精品一区| 一区二区三区四区在线看| 黑丝一区二区| 日韩高清不卡在线| 美女视频黄免费的久久| 成人久久一区| 午夜亚洲一区| 69堂精品视频在线播放| 精品国产一区二区三区噜噜噜| 国产精品久久观看| 五月天激情综合网| 日韩久久一区| 国内精品伊人| 亚洲调教视频在线观看| 在线国产精品一区| 麻豆一区在线| 久久精品国产99久久| 在线国产日韩| 久久影院资源站| av亚洲在线观看| 欧美日韩91| 日韩一区二区在线免费| 免费日韩av| 久久精品国产亚洲一区二区三区| 在线看片福利| 一区二区亚洲视频| 国产一区国产二区国产三区| 国产一区清纯| 日本精品国产| 91精品国产91久久久久久黑人| 亚洲精品影院在线观看| 国产成人在线中文字幕| 六月婷婷一区| 国产一区三区在线播放| 午夜宅男久久久| 成人精品国产亚洲| 亚洲免费福利一区| 日韩啪啪电影网| 日韩国产欧美视频| av资源中文在线天堂| 蜜桃视频在线观看一区二区| 麻豆精品在线视频| 性色一区二区| 精品国产第一福利网站| 日韩一区二区三区免费视频| 日韩免费一区| 欧美日韩a区| 欧美日韩免费观看一区=区三区| 国产毛片精品| 在线亚洲精品| 成人欧美一区二区三区的电影| 亚洲免费网址| 色爱综合网欧美| 国产探花在线精品一区二区| 99精品国产一区二区三区| 欧美日本久久| 亚洲综合电影一区二区三区| yellow在线观看网址| 日韩国产欧美在线播放| 激情综合亚洲| 久久久久久久欧美精品| 久久国产精品毛片| 亚洲伊人av| 91国内精品| 国产午夜精品一区二区三区欧美 | 久久不射网站| 欧美www视频在线观看| 欧美天堂一区二区| 视频精品一区二区| 老牛影视精品| 国产欧美另类| 亚洲综合图色| 欧美日韩色图| 中国字幕a在线看韩国电影| 国产欧美日韩精品高清二区综合区| 最新国产拍偷乱拍精品| 麻豆精品国产91久久久久久| 中文不卡在线| 亚洲自拍另类| 亚洲二区在线| 伊人久久av| 精品亚洲二区| 国产精品va视频| 国产美女精品视频免费播放软件| 一级成人国产| 综合亚洲自拍| 丝袜脚交一区二区| 亚洲激情av| 亚洲欧洲日本mm| 性欧美69xoxoxoxo| 日本国产精品| 国产一区一一区高清不卡| 蜜桃久久久久| 国产精品久久久久久久久免费高清| 午夜电影一区| 日本亚州欧洲精品不卡| 免费久久精品视频| 蜜桃一区二区三区在线观看| 日本 国产 欧美色综合| 亚洲伊人精品酒店| 亚洲精品日本| 午夜亚洲福利| 日韩精品第一| 欧美三级第一页| 欧美久久精品| 国产精品大片| 久久gogo国模啪啪裸体| 国产精品a久久久久| 精品欠久久久中文字幕加勒比| 美女在线视频一区| 精品日本视频| av免费不卡国产观看| 日韩一区欧美| 亚洲精品一区三区三区在线观看| а√天堂8资源中文在线| 亚洲精品福利电影| 日韩成人高清| 国产一区亚洲| 老司机久久99久久精品播放免费| 美国三级日本三级久久99| 一本一道久久a久久| 亚洲+小说+欧美+激情+另类| 日韩av在线免费观看不卡| 国产欧美日韩在线观看视频 | 免费av一区二区三区四区| 在线 亚洲欧美在线综合一区| 久久av一区二区三区| 亚洲aⅴ网站| 国产精品久久久网站| 国产videos久久| 99视频精品全国免费| 男女男精品网站| 国产精品免费不| 色爱综合网欧美| 99精品视频在线观看免费播放| 亚洲一区二区三区高清| 日韩精品欧美大片| 国产精品theporn| 欧美aa在线观看| 香蕉久久国产| 国产精品一区二区三区美女 | 国产亚洲人成a在线v网站| 久久一区亚洲| 久久网站免费观看| 日本一区二区三区视频在线看| 久久久91麻豆精品国产一区| 日韩一区二区三区在线免费观看| 午夜在线精品| 麻豆中文一区二区| 91成人精品| 97精品国产99久久久久久免费| 超碰在线99| 日韩精品一二三四| 美女视频黄 久久| 亚洲午夜黄色| 欧美在线看片| 在线看片福利| 亚洲影视一区二区三区| 国模精品一区| 丝袜美腿成人在线| 久久精品一区二区国产| 欧美日韩国产传媒| 国产剧情在线观看一区| 欧美日韩在线观看视频小说| 欧美一区91| 激情自拍一区| 国产精品va| 亚洲少妇一区| 国产一区二区色噜噜| 人人爽香蕉精品| 中文字幕人成乱码在线观看| 亚洲欧美久久久| 成午夜精品一区二区三区软件| 喷白浆一区二区| 国产精品国产一区| 日韩国产精品久久久久久亚洲| 性欧美xxxx免费岛国不卡电影| 国产毛片一区二区三区| 日韩网站在线| 国产夫妻在线| 国产欧美高清视频在线|