连接查询
    内连接和外连接(左外和右外)

    聚合函数
    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实现的