1:web:万维网 www.
javaweb:用java技术解决web领域的技术栈
一个网站基本有俩部分组成,网页+数据
就是javaweb+数据库
2:学习数据库
mysql是一个关系型数据库管理系统,也有别的类
数据库,数据库管理系统,数据库操作语言sql,
mysql没有图标,是一个后台服务
有俩类软件(图形化客户端工具)可以控制mysql等数据库,
navicat premium 和 navicat for mysql
关系型数据库是建立在关系模型上的,就是由二维表(行,列)互相连接,数据是存储在硬盘当中(安全)。
sql:.结构化查询语言
语法: 以分号结尾 ;
不区分大小写
单行注释:-- (结尾空格) #号
sql分类
增删改查
1:DDL:定义 :操作数据库
创删用查
查:show databases
创:create databases 数据库名字(文件名)
删:drop databases 数据库名字(文件名)
用:use 数据库名字
select database()查看当前使用的数据库
2:DML:操作:操作表
增删改查
创:(首先得知道表的结构,以结构创建)
create table user(
id int,
usename varchar(20)(括号里为精度(总长度,小数点后保留的位数))
);(特殊,数据类型写在名的后面)
删:
删除表:
drop table 表名;
删除表时判断表是否存在:
drop table if exists 表名
改:(重点)
1:修改表名
alter table 原表名 rename to 新表名
2:添加一列
alter table 表名 add 列名 数据类型
3:修改数据类型
alter table 表名 modify 列名 新数据类型
4:修改列名和数据类型
alter table 表名 change 列名 新列名 新数据类型
5:删除列
alter table 表名 drop 列名
查:show tables
查询一个数据库里的所有表(首先你要进入一个数据库)
desc 表名
查询一个表的结构(field:字段,不是数据)
②操作数据:改变的是行
1:添加数据
一个空的表,再增添数据质量(二维表)
给指定列添加数据 insert into 表名(列名1,列名2,....)values(值1,值2):
insert into stu(id,name) values(1,'张三')
批量添加,在values后多写几个括号
2:修改数据
update 表名 set 列名1=值1,列名2=值2,
where 条件
update stu set sex = '女' where name='张三'
如果没有where 将会改变表中所有数据
3:查询所有数据
select * from stu;
4:删除数据
delete from 表名 where条件
3:DQL:查询(重要:查询过后成为一个更小更细的表)
记录:一行
字段集:一列 字段 :一个小列数据
select name,age from stu;
查询所有列的数据,可以用*代替
as 重命名 改表了
4:DCL:控制
①mysql数据的类型为三种
byte为字节
bit为比特(位)
1byte=8bit
数值
日期
字符串:char和varchar的区别
char为定长字符串
varchar为变长字符串
char(10)储存"张三"
为十个字符空间
varchar为俩个 ,超过十报错
navicate本机下面的是库
JDBC:用java语言操作关系数据库的一套API
接口就是规则
关系数据库有很多种,但java代码就一个,java给定一个语法,数据库里面对应这个接口,写一个各自的实现类,简称驱动(真正执行代码的是驱动类,所以我们要下载jar包),我们用驱动最后还是实现的是数据库操作
psvm快速创建主函数
JDBC简介
JDBC快速入门
七个步骤
JDBCapi详解
DriverManager
:驱动管理类
1:注册驱动
2:获取数据库连接
Connection
Statement
ResultSet
数据库连接池
简介
是一个大的容器,事先把一些数据库申请放到容器里,来了就发送出来,用完再放回去,就不用一个个在线申请了
接口和端口的区别,端口是服务区里面有很多程序服务,端口是为了区分不同的服务 来给别人使用,接口是一个程序里面的一个功能,把这个功能封装起来,给别的程序使用,都是自身程序是不变的
数据库连接池实现:
标准接口:DataSource
connection getConnection();
常见的数据库连接池
DBCP
C3P0
Druid(德鲁伊)
3:Maven
是一个结构化管理工具
maven提供了一套标准化的项目结构,所有IDE使用maven构建的项目结构完全一样,所有的IDE创建的maven项目可以通用
依赖管理机制:类似于jdbc需要导入mysql的架包才能使用mysql,就是依赖于这个架包。
基本使用:
生命周期:在同一生命周期内,执行面的命令,前面的命令会自动执行
编译 测试 打包 安装
maven坐标
坐标是资源的唯一标识,由三部分组成
groupld:隶属组织名
artifactld:模版项目名称
version
maven项目
web核心:
浏览器和服务器架构
静态资源:html cass js
动态资源:servelt jsp等
数据库:负责存储数据
通信:请求和响应直之间需要遵守一定的规则,http协议
http协议:定义通信规则
web服务器 tomcal:负责解析http协议,解析请求数据,发送响应数据
request对象 ,response对象
jsp 会话技术(cookie,session)
filter(过滤器) listener(监听器)
http:超文本传输协议 ,定义了浏览器和服务器之间数据传输的规则
servlet
:servlet是java提供的一门动态web资源开发技术,其实是javaEE规范之一,其实就是一个接口,我们需要定义Servlet类实现servlet接口 ,由web服务器运行servlet。