连接查询
内连接和外连接(左外和右外)
聚合函数
count、sum、avg、max等
SQL关键字
limit、group by、distinct
SQL Select 语句完整的执行顺序
from、where、group by、order by
SQL 语言包括哪几部分?每部分都有哪些操作关键
ddl:定义数据库或表
dml:执行增删改操作
dql:执行查询操作
dcl:进行权限控制
CHAR 和 VARCHAR 的区别?
char:char的长度固定为创建时的长度
varchar:varchar只要不超过定义的最大长度,那么长度为其存储的数据长度
LIKE 声明中的%和_是什么意思?
%:匹配0个到多个字符
_:匹配1个字符
如何显示前 50 行?
select * from table limit 50;
数据库中的事务是什么?
事务是指一组sql语句的集合,这组集合的执行要么一起成功,要么一起失败,如果是增删改操作,还需要提交事务,如果其中的sql语句执行不通过,那么事务需要回滚
事务特性
acid:原子性、一致性、隔离性、持久性
JDBC操作的步骤
导包
加载驱动
获取connection对象
获取statement或者preparestatement
执行excuteQuery或者excuteUpdate操作
关闭资源
在使用jdbc的时候,如何防止出现sql注入的问题。
在获取sql语句执行对象这一步使用的是preparestatement而不是statement
是否了解连接池,使用连接池有什么好处?
使连接对象可复用,减少连接对象创建销毁的次数,提高效率
你所了解的数据源技术有那些?使用数据源有什么好处?
c3p0,减少了硬编码,如果数据库信息发生改变的话,只需要改配置文件就行
谈一谈你对Mybatis框架的理解
mybatis是一个持久层的框架,封装了jdbc的一些sql操作,底层是通过jdbc实现的
MyBatis编程步骤是什么样的
导入maven依赖
创建核心配置文件
创建sqlsessionfactorybuilder
创建sqlsessionfactory
创建sqlsession
利用sqlsession执行数据库操作
提交/回滚事务
释放资源
在mybatis中,${} 和 #{} 的区别是什么
${}:sql执行对象用的是statement,使用字符串拼接的方式,有sql注入风险
#{}:sql执行对象用的是preparestatement,使用占位符的方式,没有sql注入风险
如何获取自动生成的(主)键值?
在insert语句中加入usergeneratekeys=true keyproperty=”id”
在mybatis中,resultType和ResultMap的区别是什么
如果查询结果的列名跟实体类的属性名能一一对上就用resultType,否则用ResultMap
在Mybatis中你知道的动态SQL的标签有哪些?作用分别是什么?
where:自动添加where,可以删除多余的and
set:自动添加set,可以删除多余的逗号
foreach:遍历集合,将集合中的每一个元素放到sql中执行
谈一下你对mybatis缓存机制的理解
mybatis有一级缓存和二级缓存,当第二次调用同一个sql语句时,先从缓存里面查找
一级缓存:存放在sqlsession中,默认开启
二级缓存:存放在namespace中,需要手动开启
在 mapper 中如何传递多个参数?
全参传入
对象封装传入
map集合传入
MyBatis 实现一对一有几种方式?具体怎么操作的?
级联查询和嵌套查询
级联查询:在resultmap中配置association映射另外一个resultmap
嵌套查询:把一个表的返回结果套到另外一个sql语句中
MyBatis 实现一对多有几种方式,怎么操作的?
级联查询和嵌套查询
级联查询:在resultmap中配置collection映射另外一个resultmap
嵌套查询:把一个表的返回结果套到另外一个sql语句中
Mybatis 的一级、二级缓存
一级缓存:存放在sqlsession中,默认开启
二级缓存:存放在namespace中,需要手动开启
html的作用
用于布局标签
html有哪些常用标签
h1
b
i
hr
br
img
a
div与span的区别
div是块级元素,会换行
span是内联元素,不会换行
表格标签都有哪些?作用是什么?
th:加粗居中表头
tr:定义行
td:普通单元格
表单的作用和常用表单元素
负责采集数据送给服务端,input,select,textarea
javascript的作用
用于控制网页元素,数据操作管理
javascript的BOM对象有哪些?
window history location
javascript的DOM对象如何获取?
getelementbyid
getelementsbyname
getelementsbytagname
getelementsbyclassname
javascript有哪些常用的事件?
onclick
onblur
onload
onfocus
onsubmit
javascript 内置对象有哪些?
array
string
regexp
date
什么是HTTP协议?
超文本传输协议,用来定义浏览器和服务器数据传输的规则
Servlet的生命周期
init service destory
Get和Post的区别?
get的参数是放在请求行,post的参数是放在请求体
HTTP中重定向和请求转发的区别?
重定向是2次请求,请求域数据会丢失
请求转发是1次请求,请求域数据不会丢失
Jsp和Servlet的区别?
jsp侧重数据的展示,servlet侧重控制数据的读取
cookie和session的区别?(必会)
cookie是存在浏览器的,session是存在服务器的,而session是基于cookie实现的