什么是mybatis:
Mybatis快速入门程序:
@Select 表示是一个查询语句.
#驱动类名称
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
#数据库连接的url
spring.datasource.url=jdbc:mysql://localhost:3306/mybatis
#连接数据库的用户名
spring.datasource.username=root
#连接数据库的密码
spring.datasource.password=1234
配置SQL提示
JDBC介绍:
数据库连接池:
如果想切换默认的连接池,
1,引入依赖
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.8</version>
</dependency>
2,配置信息
原始的方式,或者:
数据库连接池总结:
总结:
lombok
快速生成实体类的方法:
1,先引入依赖
2,给实体类上面写上注解
Mybatis基础操作:(核心)
1,准备工作
数据库,表。。
创建一个模块,springboot框架,引入三个依赖
删除用不到的文件
配置文件中链接数据库:
创建项目的架构,mapper是放接口的,pojo是放实体类的
创建实体类对象,
创建接口:
删除:
用#{}会生成预编译SQL
预编译SQL
增加:
更新:
查询
运行之后打印出:
封装的实体对象会有属性值为空,这是因为什么呢?
原因:
解决方案:
1,给字段起别名,让别名与实体类属性一致
2,手动映射封装
3,开启mybatis的驼峰命名自动映射开关 camel自动提示 ------推荐。
前提是:严格遵循字段名下划线格式,属性名驼峰命名
查询:
解决问题:
用concat字符串拼接函数
测试;
通过xml映射文件操作数据库:
XML映射文件:
第一步:
创建xml映射文件,同包同名
在resources下创建包lcy.mapper
Directory是目录的意思,创建包时用的不是”.”而是”/”,这里就创建了同包
在lcy.mapper包下创建xml映射文件:
要与接口的名字相同,这就是同包同名。
然后在xml文件里创建约束。约束在官网里面复制入门_MyBatis中文网
这里就创建好了一个基本的框架。
mapper里的属性namespace的属性值是对应接口的全类名。
例如要查询,
接口中的方法:
复制方法的全类名:
resultType对应的是返回值,是接口中方法返回值的全类名,这里是Emp的全类名。因此:
属性id里面的是要用此SQL的方法名,一般是mapper里面的。
<Select>里面的是查询语句就是SQL语句,没有引号扩着。
这就完成了。可以用测试类测试了。
mybatisX插件
一款插件,快速开发xml:
使用注解的方式还是映射的方式呢?
mybatis动态SQL
<foreach>:
<sql id=””>SQL片段的抽取
<include refid=””>SQL片段的引用
他俩是一块用的。
Mybatis简化分页查询的插件
下面是原始方式:
pageHelper方式
文件上传:
接收到文件怎么存到本地?
解决文件名重复问题:
Uuid
上传文件大于1M怎么解决:
在application.properties中配置
上传到本地的缺点
和一些获取上传的文件的信息的方法:
上传阿里云看另个文件。
参数配置化: