springboot整合mybatis+oracle

第一步

认识springboot :springboot是为了解决配置文件多,各个组件不统一的问题,它省去了很多配置文件,同时实现了spring产品的整合。

创建springboot项目:通过选择springinit初始化springboot,我们发现它的pom.xml拥有绝大部分的spring所需要的包。

第二步

打开项目的结构,发现有了有趣的部分

在原有的java结构上,公司名称下多了一级叫做自己的项目名的一个目录,这个目录下才是相应的Controlller等层,而且在此目录下面有了一个文件,此文件可以作为主函数的入口,相同的是再整合mybatis时,我们仍然将dao层改为Mapper层,而且这里只定义接口。

往下看,在resources的目录下,有com,lib,static,templates,views文件夹,以及一个springboot最为主要的一个配置文件。

介绍一下这些文件夹或者文件的作用:

com   下是和上面java下的目录结构一样,不多只有一个Mapper文件夹和一个config文件夹,mapper里放对应接口的xml文件来提供sql语句,config文件夹放的是修改过的mybatis-config.xml配置文件.

lib 里面放一些添加的jar包

static 里面放的是静

态的文件css,js,img之类

templates 未知...

views放我们的页面

第三步

导入jar包

我们只需要导入需要的jar包,关于spring产品的jar包springboot帮我们安排好了,我们大概需要这些jar包。

1<!--oracle jar包--> 2 <dependency> 3 <groupId>com.oracle</groupId> 4 <artifactId>ojdbc6</artifactId> 5 <version>11.1.0.6.0</version> 6 <scope>system</scope> 7 <systemPath>${basedir}/src/main/resources/lib/ojdbc6-11.1.0.6.0.jar</systemPath> 8 </dependency> 9 <!--mysql jar包--> 10 <dependency> 11 <groupId>mysql</groupId> 12 <artifactId>mysql-connector-java</artifactId> 13 <version>5.1.46</version> 14 </dependency> 15 <!--springboot和mybatis结合的jar包--> 16 <dependency> 17 <groupId>org.mybatis.spring.boot</groupId> 18 <artifactId>mybatis-spring-boot-starter</artifactId> 19 <version>1.3.0</version> 20 </dependency> 21 <!--fastjson包--> 22 <dependency> 23 <groupId>com.alibaba</groupId> 24 <artifactId>fastjson</artifactId> 25 <version>1.2.47</version> 26 </dependency> 27 <!--springboot模板--> 28 <dependency> 29 <groupId>org.springframework.boot</groupId> 30 <artifactId>spring-boot-starter-thymeleaf</artifactId> 31 </dependency> 32 <!--日志--> 33 <dependency> 34 <groupId>org.apache.logging.log4j</groupId> 35 <artifactId>log4j-core</artifactId> 36 <version>2.10.0</version> 37 </dependency> 38 <!--使用不严格的页面标签--> 39 <!-- https://mvnrepository.com/artifact/net.sourceforge.nekohtml/nekohtml --> 40 <dependency> 41 <groupId>net.sourceforge.nekohtml</groupId> 42 <artifactId>nekohtml</artifactId> 43 <version>1.9.22</version> 44 </dependency>

配置配置文件

application.properties文件

1#spring.datasource.platform=mysql 2#spring.datasource.url=jdbc:mysql://localhost/mydb 3#spring.datasource.username=root 4#spring.datasource.password=hnqy 5#spring.datasource.driverClassName=com.mysql.jdbc.Driver 6 7spring.datasource.platform=oracle 8spring.datasource.url=jdbc:oracle:thin:@localhost:1521/orcl 9spring.datasource.username=scott 10spring.datasource.password=tiger 11spring.datasource.driverClassName=oracle.jdbc.driver.OracleDriver 12 13server.port=8080 14server.session-timeout=30 15server.tomcat.uri-encoding=UTF-8 16 17#####springboot 整合 mybatis 18mybatis.mapper-locations= classpath:/com/qy/springboot01/mapper/*Mapper.xml 19mybatis.config-location= classpath:/com/qy/springboot01/mapper/config/mybatis-config.xml 20#####定义别名 21#####mybatis.type-aliases-package=com.qy.springboot01.domain 22 23 24#-----------------------日志------------------------------ 25 #启用调试日志。 26#debug = true 27 #启用跟踪日志。 28#trace = true 29 30#LOGGING 31 #日志配置文件的位置。例如,Logback的`classpath:logback.xml`。 32#logging.config = 33 #记录异常时使用的转换字。 34#logging.exception-conversion-word =%wEx 35#名称可以是确切的位置或相对于当前目录。 36#logging.file = #? 37 #要保留的归档日志文件的最大数量。仅支持默认的登录设置。 38#logging.file.max-history = 0 39 #最大日志文件大小。仅支持默认的登录设置。 40#logging.file.max-size = 10MB 41 #日志级别严重性映射。例如`logging.level.org.springframework = DEBUG`。 42#logging.level.* = 43 #日志文件的位置。例如,`/ var 44#logging.path = 45#-------------------------模板------------------------------ 46###Thymeleaf配置 47spring.thymeleaf.prefix=classpath:/view/ 48spring.thymeleaf.suffix=.html 49spring.thymeleaf.cache=false 50spring.thymeleaf.encoding=UTF-8 51spring.thymeleaf.mode=LEGACYHTML5 52###过滤中文乱码 53spring.http.encoding.force=true 54spring.http.encoding.charset=UTF-8 55spring.http.encoding.enabled=true

配置mybatis-config配置文件

1<?xml version="1.0" encoding="UTF-8" ?> 2 <!DOCTYPE configuration 3 4 PUBLIC "-//mybatis.org//DTD Config 3.0//EN" 5 6 "http://mybatis.org/dtd/mybatis-3-config.dtd"> 7 8<configuration> 9 10<settings> 11 12 <!--是否使用缓存 开发中禁用--> 13 14 <setting name="cacheEnabled" value="false"/> 15 16 <!--下划线和驼峰式命名法的匹配 --> 17 18 <setting name="mapUnderscoreToCamelCase" value="true"/> 19 20 <!--使用启用懒加载机制 true启用--> 21 22 <setting name="lazyLoadingEnabled" value="true"/> 23 24 <!--配置myabtis日志--> 25 26 <setting name="logImpl" value="LOG4J2"/> 27<setting name="multipleResultSetsEnabled" value="true"/> 28 <setting name="useColumnLabel" value="true"/> 29 <setting name="useGeneratedKeys" value="true"/> 30 <setting name="autoMappingBehavior" value="PARTIAL"/> 31 <setting name="autoMappingUnknownColumnBehavior" value="WARNING"/> 32 <setting name="defaultExecutorType" value="SIMPLE"/> 33 <setting name="defaultStatementTimeout" value="25"/> 34 <setting name="defaultFetchSize" value="100"/> 35 <setting name="safeRowBoundsEnabled" value="false"/> 36 <setting name="localCacheScope" value="SESSION"/> 37 <setting name="jdbcTypeForNull" value="OTHER"/> 38 <setting name="lazyLoadTriggerMethods" value="equals,clone,hashCode,toString"/> 39</settings> 40<typeAliases> 41 <!--给类起别名--> 42 <!--给包中所有的类起别名 默认名字为类名 --> 43 <package name=""></package> 44</typeAliases> 45</configuration>

第四步

一些细节

1.我们发现,controller层我们的mybatis需要@Controller

但是我们的springboot所需要的确是@Controller

2.service层注解没有变化

但在Mapper层我们要写上@Mapper和@conment两个注解

3.我们不需要tomcat,应为springboot内置了tomcat,而且启动的很快

4.在配置文件里的细节自己去深究吧。

5.这里只是简单的介绍,具体实操还需要自己去熟悉。

6.还有,config文件夹在mapper下面。。。

附上目录结构图

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

SpringBoot自定义序列化的使用方式

场景及需求:项目接入了SpringBoot开发,现在需求是服务端接口返回的字段如果为空,那么自动转为空字符串。例如:\    {        "id":1,        "name":null    },    {        "id":2,        "name":"x

KVM调整cpu和内存

一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid

springboot整合mybatis+oracle - HelloWorld