实训day4


Spring入门3

Java体系操作数据库的框架:

  • 全ORM: Hibernate,JPA 完全隔离sql语句,不写sql即可实现相应的数据库操作。相对半ORM来说执行速度会慢一点。
  • 半ORM:Mybatis 隔离sql和java语句,java和 sql是分开的。更适合web项目的开发

什么是 MyBatis

MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以对配置和原生Map使用简单的 XML 或注解,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。

原理图

20210603114409

MtBatis进行数据查询

  • 导入依赖 maven包
  • 配置数据源 确定数据库的类型、账号、密码
  • Mybatis相关文件的创建

1.创建实体类
数据库中的表 — 类
数据库表中的字段 — 类属性
数据 – 对象
2.创建接口 AdminMapper
3.创建对应的映射文件 Xml
4.配置mybatis 指定映射文件的位置、打印sql语句等
5.扫描接口 在启动类上面扫描
6.单元测试 去test目录下的Tests进行

SpringBoot查找静态资源的顺序

先从resources > static > public
如果在这几个文件夹中任意一个文件中找到静态资源,就不会再去其他的文件夹查找。都没有,就会直接抛出404.

MySQL数据库中的字段类型varchar和char的主要区别是什么?哪种字段的查找效率要高,为什么

区别一,定长和变长
char 表示定长,长度固定,varchar表示变长,即长度可变,当所插入的字符串超出它们的长度时,视情况来处理,如果是严格模式,则会拒绝插入并提示错误信息,如果是宽松模式,则会截取然后插入。如果插入的字符串长度小于定义长度时,则会以不同的方式来处理,如char(10),表示存储的是10个字符,无论你插入的是多少,都是10个,如果少于10个,则用空格填满。而varchar(10),小于10个的话,则插入多少个字符就存多少个。varchar怎么知道所存储字符串的长度呢?实际上,对于varchar 字段来说,需要使用一个(如果字符串长度小于255)或两个字节(长度大于255)来存储字符串的长度。
区别之二
存储的容量不同对char来说,最多能存放的字符个数 255,和编码无关。而varchar呢,最多能存放 65532 个字符。VARCHAR的最大有效长度由最大行大小和使用的字符集确定。整体最大长度是65,532 字节,最大有效长度是 65532 字节,在varchar存字符串的时候,第一个字节是空的,不存任何的数据,然后还需要两个字节来存放字符串的长度。所以有效长度就是 65535 - 1 - 2= 65532


文章作者: 老叭美食家
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 老叭美食家 !
评论
  目录