JavaWeb知识点总结

JavaWeb

数据库

关系型数据库

  • 关系型数据库是建立在关系模型基础上的数据库,简单说,关系型数据库是由多张能互相连接的二维表组成的数据库

SQL分类

  • DDL(Data Definition Language) 数据定义语言,用来定义数据库对象:数据库,表,列等
  • DML(Data Manipulation Language) 数据库操作语言,用来对数据库中的表进行增删改
  • DQL(Data Quert Language) 数据查询语言,用来查询数据库中表的记录
  • DCL(Data Control Language) 数据控制语言,用来定义数据库的访问权限和安全级别,及创建用户

DDL操作数据库语句

  • 查询:SHOW DATABASES;
  • 创建:CREATE DATABASE 数据库名称;或者(判断,如果不存在则创建)CREATE DATABASE IF NOT EXISTS 数据库名称;
  • 删除:DROP DATABASES 数据库名称;或者(判断,如果存在则删除)DROP DATABASE IF EXISTS 数据库名称;
  • 使用数据库:(查看当前使用的数据库)SELECT DATABASE();或者(使用数据库)USE 数据库名称;

JDBC

  • JDBC就是使用Java语言操作关系型数据库的一套API。

步骤

  • 创建工程,导入驱动jar包
  • 注册驱动Class.forName("com.mysql.jdbc.Driver");
  • 获取连接Connection conn = DriverManager.getConnection(url, username, password);
  • 定义SQL语句String sql = "";
  • 获取执行SQL对象Statement stmt = conn.createStatement();
  • 执行SQLstmt.executeUpdate(sql);

MyBatis

什么是MyBatis?

  • MyBatis是一款优秀的持久层框架,用于简化JDBC开发
  • 官网:https://mybatis.org/mybatis-3/zh/index.html

持久层

  • 负责将数据到保存到数据库的那一层代码
  • JavaEE三层架构:表现层、业务层、持久层

框架

  • 框架是一个半成品软件,是一套可重用的、通用的、软件基础代码模型
  • 在框架的基础之上构建软件编写更加高效、规范、通用、可扩展

xml配置时注意

  • 参数占位符:

    (1) #{}:会将其替换为?

    (2) ${}:拼sql,会存在SQL注入问题

    (3) 使用时机:

     * 参数传递的时候使用:#{};
     * 表明或者列名不固定的情况下,使用:${};
    
  • 参数类型: parameterType:可以省略

  • 特殊字符处理:

    (1) 使用转义字符:例如 <<

    (2) CDATA区:

    < 用如下代替

            <![CDATA[
                <
            ]]>

动态SQL

  • if: 条件判断
    • test:逻辑表达式
  • 问题:第一个条件不需要逻辑运算符
  • 解决方案:
    • 恒等式
    • 替换 where 关键字

MyBatis事务

  • openSession():默认开启事务,进行增删改查操作后需要使用sqlSession.commit();手动提交事务
  • openSession(true):可以设置为自动提交事务(关闭事务)

HTML

  • HyperText Markup Language:超文本标记语言
  • W3C标准:网页主要由三部分组成
    • 结构:HTML
    • 表现:CSS
    • 行为:JavaScript
  • 前端技术参考手册:w3cschools

基础标签

标签 描述

-

定义标题大小,h1最大,h6最小
定义文本的字体、字体尺寸、字体颜色
定义粗体文字
定义斜体文字
定义文本下划线
定义文本居中

定义段落

定义折行

定义水平线

图片、音频、视频标签

标签 描述
定义图片
定义音频
定义视频
  • img:定义图片
    • src:规定显示图像的URL(统一资源定位符)
    • height:定义图像的高度
    • width:定义图像的宽度
  • audio:定义音频。支持的音频格式:MP3、WAV、OGG
    • src:规定音频的URL
    • controls:显示播放控件
  • video:定义视频。支持的视频格式:MP4、WebM、OGG
    • src:规定视频的URL
    • controls:显示播放软件

超链接标签

标签 描述
定义超链接,用于链接到另一个资源
  • href:指定访问资源的URL
  • target:指定打开资源的方式
    • _self:默认值,在当前页面打开
    • _blank:在空白页面打开

列表标签

标签 描述
    定义有序列表
      定义无序列表
    • 定义列表项

      表格标签

      标签 描述
      定义表格
      定义行
      定义单元格
      定义表头单元格
      标签 描述
      定义表格
      定义行
      定义单元格
      定义表头单元格
      • table:定义表格
        • border:规定表格边框的宽度
        • width:规定表格的宽度
        • cellspacing:规定单元格之间的空白
      • tr:定义行
        • align:定义表格行的内容对齐方式
      • td:定义单元格
        • rowspan:规定单元格可横跨的行数
        • colspan:规定单元格可横跨的列数

      布局标签

      标签 描述
      定义HTML文档中的一个区域部分,经常与CSS一起使用,用来布局网页
      用于组合行内元素

      表单标签

      标签 描述
      定义表单
      定义表单项,通过type属性控制输入形式
      为表单项定义标注
      定义下拉列表
      定义下拉列表的列表项