一、maven引入
<dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>mssql-jdbc</artifactId><!--sqlserver依赖 驱动jar--> <scope>runtime</scope> <version>6.4.0.jre8</version> </dependency> <dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>sqljdbc4</artifactId> <version>4.0</version> <scope>test</scope> </dependency>
<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId><!--mybatis 依赖--> <version>2.1.0</version> </dependency>
二、application.properties配置
sqlserver数据库配置:
#数据库连接 spring.datasource.url=jdbc:sqlserver://localhost:1433;DatabaseName=localdemo spring.datasource.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver spring.datasource.username=sa spring.datasource.password=123456 #连接池配置 spring.datasource.initialSize=5 spring.datasource.maxActive=50 spring.datasource.minIdle=5 #连接等待超时时间 spring.datasource.maxWait=60000 #spring.datasource.validationQuery=select 1 # 打开PSCache,并且指定每个连接上PSCache的大小 #spring.datasource.poolPreparedStatements=true #spring.datasource.maxOpenPreparedStatements: 20 #配置隔多久进行一次检测(检测可以关闭的空闲连接) #spring.datasource.timeBetweenEvictionRunsMillis: 60000 #配置连接在池中的最小生存时间 #spring.datasource.minEvictableIdleTimeMillis: 300000 #spring.datasource.validationQuery=SELECT 1 FROM DUAL #spring.datasource.testWhileIdle=true #spring.datasource.testOnBorrow=true #spring.datasource.testOnReturn=true # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙 #spring.datasource.filters=stat,wall,log4j # 通过connectProperties属性来打开mergeSql功能;慢SQL记录 #pring.datasource.connectionProperties=druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
mybatis配置:
#配置.xml文件路径(classpath表示src/main/resources/ classpath下的META-INF/resources目录、resources目录、static目录和public目录中的静态资料是可以直接通过 ” http://xxx.com/ 静态资源” 的方式访问到的(浏览器访问,直接是项目域名+静态资源名称 即可访问,不用带上静态资源所在的目录名称)) mybatis.config-location =classpath:resources/mybatis-config.xml #Mybatis SQL文件、实体类别名扫描的包 mybatis.mapper-locations=classpath*:mapper/**/*Mapper.xml #mybatis.type-aliases-package=com.nsoft.gkzp.system.sysuserser.entity #实体类包名 (例子项目的包名是com.shizhao.project.springdemo.model)
resources/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> <settings> <!-- 使用全局的映射器启用或者禁用缓存。 --> <setting name="cacheEnabled" value="true"/> <!-- Sets the number of seconds the driver will wait for a response from the database --> <setting name="defaultStatementTimeout" value="3000"/> <!-- 使用驼峰命名法转换字段。 --> <setting name="mapUnderscoreToCamelCase" value="true"/> <!-- 获取数据库自增主键值 default:false (允许JDBC 生成主键。需要驱动器支持。如果设为了true,这个设置将强制使用被生成的主键,有一些驱动器不兼容不过仍然可以执行。) --> <setting name="useGeneratedKeys" value="true"/> <!-- 使用列标签替换列别名 default:true (是否可以使用列的别名) --> <setting name="useColumnLabel" value="true"/> <!-- 全局启用或禁用延时加载,当禁用时,所有关联对象都会即时加载。 --> <setting name="lazyLoadingEnabled" value="true" /> <!-- 日志输出 (即打印sql语句及结果。开发环境可放开)--> <!-- <setting name="logImpl" value="STDOUT_LOGGING" /> --> <!-- 当查询数据为空时字段返回为null,不加这个查询数据为空时,字段将被隐藏 --> <setting name="callSettersOnNulls" value="true"/> </settings> <!--配置常用的 typeAliases,设置类型别名,为 Java 类型设置一个短的名字。它只和 XML 配置有关,存在的意义仅在于用来减少类完全限定名的冗余。--> <typeAliases> <typeAlias alias="String" type="java.lang.String" /> <typeAlias alias="Integer" type="java.lang.Integer" /> <typeAlias alias="Long" type="java.lang.Long" /> <typeAlias alias="HashMap" type="java.util.HashMap" /> <typeAlias alias="LinkedHashMap" type="java.util.LinkedHashMap" /> <typeAlias alias="ArrayList" type="java.util.ArrayList" /> <typeAlias alias="LinkedList" type="java.util.LinkedList" /> </typeAliases> </configuration>
路径相关如下:
ok基础完成,后面引入druid连接池管理,看我的另一个博文:
https://www.cnblogs.com/zdyang/p/druid.html
日志打印:
当开发环境想控制台打印mybatis的SQL语句时,可将"日志输出放开"如下图:
当然,如果把"日志输出"这个配置注释掉,把log4j2的日志级别改为debug时,也会打印sql,只是没有查询结果而已:
本文来自博客园,作者:东方飘雪,转载请注明原文链接:https://www.cnblogs.com/zdyang/p/mybaits.html