zoukankan      html  css  js  c++  java
  • Web学习

    JAVA - Web

    页面 - html 、 css 、 JavaScript 框架 vue 前端

    java程序 - > 数据库 后端

    Mysql

    添加环境变量 - MYSQL_HOME

    添加path %MYSQL_HOME%\bin

    配置文件

    [mysql]
    default-character-set=utf8

    [mysql]
    default-character-set=utf8
    
    [mysqld]
    character-set-server=utf8
    default-storage-engine=INNODB
    sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
    

    存放在根目录下 名称为 my.ini

    初始化

    cmd - 管理员模式

    mysqld --initialize-insecure
    

    注册mysql服务

    mysqld -install
    

    启动mysql服务

    net start mysql
    
    # 卸载mysql
    net stop mysql //停止mysql服务
    mysqld -remove mysql //移除mysql
    然后删除相关环境变量
    

    修改默认账户密码

    mysqladmin -u root password 123  //账户名root  密码 123
    

    登录

    mysql -u用户名 -p密码 -h要连接的mysql服务器的ip地址(默认127.0.0.1) -P端口号(默认3306)
    

    SQL 类型

    DDL : 操作数据库,表

    DML:对表中的数据进行增删改

    DQL: 对表中的数据进行查询

    DCL: 对数据库进行权限控制

    数据库常用操作

    单行注释  -- 内容 #内容
    多行注释 /*   */
    

    查询数据库名称

    show databases;  //加分号
    

    创建数据库

    create database db1;
    

    创建的时候判断数据库是否存在

    create database if not exists db1;
    

    删除数据库

    drop database db2;
    

    删除存在数据库

    drop database if exists db2;
    

    进入数据库

    use db1;
    

    查看当前使用的数据库

    select database(); //查询当前使用的数据库
    

    查询表

    show tables;
    

    查询表的字段

    desc 表名;//结构信息
    

    表的创建

    creat table 表名(
    	字段名1 数据类型1,
    	字段名2 数据类型2
    );
    

    数据类型

    MySQL 支持多种类型,可以分为三类:

    • 数值

      tinyint : 小整数型,占一个字节
      int	: 大整数类型,占四个字节
      	eg : age int
      double : 浮点类型
      	使用格式: 字段名 double(总长度,小数点后保留的位数)
      	eg : score double(5,2)   
      
    • 日期

      date : 日期值。只包含年月日
      	eg :birthday date : 
      datetime : 混合日期和时间值。包含年月日时分秒
      
    • 字符串

      char : 定长字符串。
      	优点:存储性能高
      	缺点:浪费空间
      	eg : name char(10)  如果存储的数据字符个数不足10个,也会占10个的空间
      varchar : 变长字符串。
      	优点:节约空间
      	缺点:存储性能底
      	eg : name varchar(10) 如果存储的数据字符个数不足10个,那就数据字符个数是几就占几个的空间	
      

    案例-创建表

    create table student(
    	id int,
    	name varchar(10),
    	gender char(1),
    	birthday date,
    	score double(5,2),
    	email varchar(64),
    	tle varchar(15),
    	status tinyint
    );
    

    修改表

    alter table 表名 rename to 新表名; // 修改表名alter table 表名 add 列名 数据类型; //增加列alter table 表名 modify 列名 新的数据类型;//修改数据类型alter table 表名 change 列名 新列名 新数据类型;//修改列alter table 表名 drop 列名; // 删除列
    

    DML主要是对数据进行增(insert)删(delete)改(update)操作。

    添加数据

    • 给指定列添加数据
    INSERT INTO 表名(列名1,列名2,…) VALUES(值1,值2,…);
    
    • 给全部列添加数据
    INSERT INTO 表名 VALUES(值1,值2,…);
    
    • 批量添加数据
    INSERT INTO 表名(列名1,列名2,…) VALUES(值1,值2,…),(值1,值2,…),(值1,值2,…)…;
    INSERT INTO 表名 VALUES(值1,值2,…),(值1,值2,…),(值1,值2,…)…;
    

    修改数据

    update stu set sex = '女' where name = '张三';
    update stu set birthday = '1999-12-12', score = 99.99 where name = '张三';
    

    删除数据

    delete from 表名 where 条件 //删除语句 
    delete from stu where name = 张三
    

    查询案例

    -- 删除stu表
    drop table if exists stu;
    
    
    -- 创建stu表
    CREATE TABLE stu (
     id int, -- 编号
     name varchar(20), -- 姓名
     age int, -- 年龄
     sex varchar(5), -- 性别
     address varchar(100), -- 地址
     math double(5,2), -- 数学成绩
     english double(5,2), -- 英语成绩
     hire_date date -- 入学时间
    );
    
    -- 添加数据
    INSERT INTO stu(id,NAME,age,sex,address,math,english,hire_date) 
    VALUES 
    (1,'马运',55,'男','杭州',66,78,'1995-09-01'),
    (2,'马花疼',45,'女','深圳',98,87,'1998-09-01'),
    (3,'马斯克',55,'男','香港',56,77,'1999-09-02'),
    (4,'柳白',20,'女','湖南',76,65,'1997-09-05'),
    (5,'柳青',20,'男','湖南',86,NULL,'1998-09-01'),
    (6,'刘德花',57,'男','香港',99,99,'1998-09-01'),
    (7,'张学右',22,'女','香港',99,99,'1998-09-01'),
    (8,'德玛西亚',18,'男','南京',56,65,'1994-09-02');
    

    查询数据——条件查询

    select 列名1,列名2 from 表名;select DISTINCT 列 from 表; //去除重复数据select name as 名称 from 表; //用as 来 重命名展示的列名select * from stu where age>20;selct * from stu where age>=20 and age<=30;= select * from stu where age between 20 and 30;select * from stu where hire_date between '1998-09-01' and '1999-09-01';select * from stu where age != 18;  - '<>'也是不等于或者  || = or in (18,20,22)select * from stu where age in (18,20,22)null值不能用等于来比较。需要用isselect * from stu where age is not null;-----------模糊查询---------------通配符 : _ 表示单个任意字符 % 表示任意个字符select * from stu where name like '马%';select * from stu where name like '_花%';
    

    查询数据——排序查询

    排序方式:ASC 升序排列 默认值DESC 降序排列select * from stu order by age asc;select * from stu order by math desc, englisg asc; //数学成绩一样,英语成绩按照升序排列
    

    查询数据——分组查询

    聚合函数
    cout(列名)  统计数量
    max()  min()  sum()  avg()
    select 聚合函数() from 表;
    select count(id) from stu;
    
    SELECT 字段列表 FROM 表名 [WHERE 分组前条件限定] GROUP BY 分组字段名 [HAVING 分组后条件过滤];
    
    SELECT sex, avg(math), count(*) from stu GROUP BY sex;
    
    select  sex, avg(math), count(*) from stu where math > 70 group by sex;
    
    select  sex, avg(math), count(*) from stu where math > 70 group by sex having count(*) > 2; -- 人数大于2才会被展示
    
    

    查询数据——分页查询

    SELECT 字段列表 FROM 表名 LIMIT  起始索引 , 查询条目数;
    select * from stu limit 0,3;
    
    

    约束

    前端

    基础标签

    web核心

    静态资源: HTML、 CSS 、 Jscript 、 图片

    动态资源: JSP servlet

    标签

    image-20220107143105599

    转义字符

    image-20220107143547291

    <a> 超链接

    • href : 指定访问资源的URL
    • target: 指定打开资源的方式
      • _self: 默认值,在当前页面打开
      • _blank: 在空白页面打开

    列表

    ol 有序列表

    ul 无序列表

    li 定义列表项

    1. 11
    2. 22
    3. 33

    可以通过type 修改前面的标识

    表格

    image-20220107150252994

    image-20220107150329538

    布局标签

    div - 换行

    span - 不换行

    表单

    form

    ​ action :指定表单数据提交的url

    ​ method :表单提交的方式

    ​ get:默认值

    ​ post :

    image-20220107160122975

    image-20220107161802238

    • <select>:定义下拉列表,<option> 定义列表项

      如下图就是下拉列表的效果:

      image-20210812223708205
    • <textarea>:文本域

      如下图就是文本域效果。它可以输入多行文本,而 input 数据框只能输入一行文本。

      image-20210812223744522

    注意:

    • 以上标签项的内容要想提交,必须得定义 name 属性。
    • 每一个标签都有id属性,id属性值是唯一的标识。
    • 单选框、复选框、下拉列表需要使用 value 属性指定提交的值。
    Title
        <label for="username">用户名:</label>
        <input type="text" name="username" id="username"><br>
    
        <label for="password">密码:</label>
        <input type="password" name="password" id="password"><br>
    
        性别:
        <input type="radio" name="gender" value="1" id="male"> <label for="male">男</label>
        <input type="radio" name="gender" value="2" id="female"> <label for="female">女</label>
        <br>
    
        爱好:
        <input type="checkbox" name="hobby" value="1"> 旅游
        <input type="checkbox" name="hobby" value="2"> 电影
        <input type="checkbox" name="hobby" value="3"> 游戏
        <br>
    
        头像:
        <input type="file"><br>
    
        城市:
        <select name="city">
            <option>北京</option>
            <option value="shanghai">上海</option>
            <option>广州</option>
        </select>
        <br>
    
        个人描述:
        <textarea cols="20" rows="5" name="desc"></textarea>
        <br>
        <br>
        <input type="submit" value="免费注册">
        <input type="reset" value="重置">
        <input type="button" value="一个按钮">
    </form>
    </body>
    </html>
    

    HTTP - 请求数据格式

    GET/HTPP/1.1

    Host:

    Connection:

    Cache-Control:

    User-Agent:

    image-20220102140722501

    云服务器配置

    应用程序:

    远程连接:Xshell

    远程文件:WinSCP

    安装jdk、 Tomcat 、 Mysql

    
    

    大佬文档的思维导图

    https://www.processon.com/mindmap/61d6f75907912973ef10d87e
    

    配置服务器的防火墙

    systemctl status firewalld //查看服务状态
    firewall-cmd --state //查看firewall的状态
    service firewalld start //开启服务器
    service firewalld restart //重启
    service firewalld stop //关闭
    firewall-cmd --query-port=8080/tcp //查询端口是否开放
    firewall-cmd --permanent --add-port=80/tcp //开放80端口
    firewall-cmd --permanent --remove-port=8080/tcp //移除端口
    firewall-cmd --reload //修改配置后重启防火墙
    
    
    

    配置安全组

    配置tomcat

    进入tomcat下的bin目录./startup.sh //开启服务器./shutdwon/sh //关闭服务器cd /../conf   vim server.xml //进入配置文件8080端口改为80端口host标签中复制如下内容<Context docBase="/usr/local/tomcat/***/webapps/项目名" path="" reloadable="false"/>/usr/local/tomcat/apache-tomcat-10.0.14/webapps
    

    image-20220106220432688

    image-20220106220528265

  • 相关阅读:
    寒假周总结一
    1657. Determine if Two Strings Are Close
    1656. Design an Ordered Stream
    695. Max Area of Island (BFS)
    695. Max Area of Island (DFS)
    Daily Coding Problem: Problem #713
    939. Minimum Area Rectangle
    259. 3Sum Smaller
    29. Divide Two Integers
    16. 3Sum Closest
  • 原文地址:https://www.cnblogs.com/jy00/p/15789863.html
Copyright © 2011-2022 走看看