java基础笔记(一)
java基础笔记(一)学了这么久java,给我的感觉还是得基础要扎实,基础不牢,学再牛批的技术都是空中楼阁,所以来复习一下基础吧
1. 数据类型计算机中的数据存储 计算机用于各种数据,无论内存和硬盘,最终都是以二进制数据形式存储。 计算机中最小信息单元叫“位”又称之为“比特位”,由0和1组成,通常用小写的字母”b”表示。 计算机中最小的存储单位叫做”字节(byte)”由8个连续的位组成,通常用大写字母”B”表示 存储单位换算 1B(字节) = 8bit 1KB = 1024B 1MB = 1024KB 1GB = 1024MB 1TB = 1024GBjava中的数据类型 Java是强类型语言,对于每种数据都给出了明确的数据类型。 不同数据类型分配不同的内存空间,所以各种数据范围大小也是不一样的。
在java中数据类型分为两类分别是 基本数据类型 和 引用数据类型
1.1 基本数据类型①整数类型:long、int、short、byte②浮点类型:float、double③字符类型:char④布尔 ...
Redis
Redis基础1. 前言1.1 什么是RedisRedis是一个基于内存的key-value结构数据库。Redis 是互联网技术领域使用最为广泛的存储中间件,它是「Remote Dictionary Service」的首字母缩写,也就是「远程字典服务」。
基于内存存储,读写性能高
适合存储热点数据(热点商品、资讯、新闻)
企业应用广泛
1.2 使用Redis能做什么
数据缓存
消息队列
注册中心
发布订阅
2. Redis入门2.1 Redis简介Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache, and message broker. 翻译为:Redis是一个开源的内存中的数据结构存储系统,它可以用作:数据库、缓存和消息中间件。
官网:https://redis.io
Redis是用C语言开发的一个开源的高性能键值对(key-value)数据库,官方提供的数据是可以达到100000+的QPS(每秒内查询次数)。它存 ...
Linux常见问题笔记
1. VMWare安装Linux操作系统找不到IP地址输入linux指令ip addr 查看ip端口发现ip不存在
从图中可以看到,没有获取到linux系统的IP地址,这是为什么呢?
是由于启动服务器时未加载网卡,导致IP地址初始化失败而造成的。
那么接下来我们就需要来修改网络初始化配置,设定网卡在系统启动时初始化。
具体操作步骤如下:
第一种方法
1). 修改网卡的配置项
cd / 进入根目录
cd etc 进入etc目录
cd sysconfig 进入sysconfig目录
cd network-scripts 进入network-scripts
vi ifcfg-ens33 编辑ifcfg-ens33文件
#进入文件后执行如下操作:
①. 按 i 键 进入编辑状态
②. 按↑↓键来移动光标, 删除no,输入yes
③. 按 ESC 键
④. 输入 :wq
⑤. 按 ENTER 保存退出
配置内容
2). 重新启动虚拟机
重启之后, 再次输入root的用户名密码,登录到Linux系统之后,可以通过指令 ip addr 来查看IP地址。这时候查 ...
Linux笔记
课程内容
Linux简介
Linux安装
Linux常用命令
1. 前言1.1 什么是Linux
Linux是一套免费使用和自由传播的操作系统。说到操作系统,大家比较熟知的应该就是Windows和MacOS操作系统,我们今天所学习的Linux也是一款操作系统。
1.2 为什么要学Linux那么我们为什么要学习Linux呢,主要出于两个方面的原因。
1). 企业用人要求
以下,是从知名招聘网站上搜索的java开发工程师的岗位要求,在很多的岗位要求中都提到了Linux操作系统的经验。
为什么作为javaEE开发工程师,企业还要求我们会Linux操作系统的相关知识呢?
这是因为Linux操作系统提供了很多稳定的发行版本,广泛的应用在我们的各种服务器操作系统领域,我们将来开发出来的项目,最终要上线运行,就需要将项目部署在Linux服务器中。
2). 个人发展需要
我们作为javaEE开发工程师,将来在企业中开发时会涉及到很多的数据库、中间件等技术,比如MySQL、Redis、MQ等技术,而这些应用软件大多都是需要安装在Linux系统中使用的。我们做为开发人员,是需要通过远程工具连接 ...
docker常用命令小抄
镜像命令
docker image ls:列出所有镜像
docker image pull [镜像名称]:拉取指定的镜像到本地
docker image push [镜像名称]:将本地的镜像推送到镜像仓库
docker rmi [镜像名称]:删除指定的镜像
docker image build -t [镜像名称]:[标签名] [Dockerfile所在目录]:构建自定义镜像
容器命令
docker container ls:列出当前正在运行的容器
docker container ps:同上
docker container ls -a:列出所有容器,包括已停止的
docker container start [容器名称]:启动指定的容器
docker container stop [容器名称]:停止指定的容器
docker container rm [容器名称]:删除指定的容器
docker container exec -it [容器名称] [命令]:在指定的容器中执行命令
docker container logs [容器名称]:查看指定容器的日志信息
仓库命令
docker ...
docker软件安装笔记
1 安装docker--卸载旧版本
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
--设置仓库
yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
--设置仓库源 使用阿里云 还是比较慢 得需要配置/etc/docker/damone.json
yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/li ...
git 分布式版本控制工具
Git 分布式版本控制工具课程内容
Git概述
Git代码托管服务
Git常用命令
在IDEA中使用Git
1. 前言1.1 什么是GitGit是一个分布式版本控制工具,主要用于管理开发过程中的源代码文件(Java类、xml文件、html页面等),在软件开发过程中被广泛使用。
在IDEA开发工具中可以集成Git(后面会讲解Git安装和集成过程):
集成后在IDEA中可以看到Git相关图标:
可以通过启动两个IDEA窗口模拟两个开发人员来展示Git的使用:
其他的版本控制工具:
SVN
CVS
VSS
1.2 使用Git能做什么
代码回溯:Git在管理文件过程中会记录日志,方便回退到历史版本
版本切换:Git存在分支的概念,一个项目可以有多个分支(版本),可以任意切换
多人协作:Git支持多人协作,即一个团队共同开发一个项目,每个团队成员负责一部分代码,通过Git就可以管理和协调
远程备份:Git通过仓库管理文件,在Git中存在远程仓库,如果本地文件丢失还可以从远程仓库获取
2. Git概述2.1 Git简介Git 是一个分布式版本控制工具,通常用来对软件开发过程中的源代码文 ...
Spring Security
Spring Security入门一、Spring Security简介1. 概述
Spring Security 是 Spring 家族中的一个安全管理框架,应用程序的两个主要区域是“认证”和“授权”(或者访问控制)
认证:
系统提供的用于识别用户身份的功能,通常提供用户名和密码进行登录其实就是在进行认证,认证的目的是让系统知道你是谁。
授权:
用户认证成功后,需要为用户授权,其实就是指定当前用户可以操作哪些功能。
权限数据模型
前面已经分析了认证和授权的概念,要实现最终的权限控制,需要有一套表结构支撑:
用户表t_user、权限表t_permission、角色表t_role、菜单表t_menu、用户角色关系表t_user_role、角色权限关系表t_role_permission、角色菜单关系表t_role_menu。
上述的7张表就构成了RBAC权限模型:
2. 快速入门1. 创建maven工程,pom文件导入依赖,创建启动类<!--继承boot父工程-->
<parent>
<artifactId>spring-boot-st ...
瑞吉外卖(六)
瑞吉外卖(六)课程内容
用户地址簿功能
菜品展示
购物车
下单
1. 用户地址簿功能1.1 需求分析地址簿,指的是移动端消费者用户的地址信息,用户登录成功后可以维护自己的地址信息。同一个用户可以有多个地址信息,但是只能有一个默认地址。
对于地址簿管理,我们需要实现以下几个功能:
新增地址
地址列表查询
设置默认地址
编辑地址
删除地址
1.2 数据模型用户的地址信息会存储在address_book表,即地址簿表中。具体表结构如下:
这里面有一个字段is_default,实际上我们在设置默认地址时,只需要更新这个字段就可以了。
1.3 导入功能代码对于这一类的单表的增删改查,我们已经写过很多了,基本的开发思路都是一样的,那么本小节的用户地址簿管理的增删改查功能,我们就不再一一实现了,基本的代码我们都已经提供了,直接导入进来,做一个测试即可。
对于下面的地址管理的代码,我们可以直接从资料拷贝,也可以直接从下面的讲义中复制。
1). 实体类 AddressBook(直接从课程资料中导入即可)
所属包: com.itheima.reggie.entity
import ...
瑞吉外卖(五)
瑞吉外卖(五)课程内容
新增套餐
套餐分页查询
删除套餐
短信发送
手机验证码登录
1. 新增套餐1.1 需求分析套餐就是菜品的集合。
后台系统中可以管理套餐信息,通过新增套餐功能来添加一个新的套餐,在添加套餐时需要选择当前套餐所属的套餐分类和包含的菜品,并且需要上传套餐对应的图片,在移动端会按照套餐分类来展示对应的套餐。
1.2 数据模型新增套餐,其实就是将新增页面录入的套餐信息插入到setmeal表,还需要向setmeal_dish表插入套餐和菜品关联数据。所以在新增套餐时,涉及到两个表:
表
说明
备注
setmeal
套餐表
存储套餐的基本信息
setmeal_dish
套餐菜品关系表
存储套餐关联的菜品的信息(一个套餐可以关联多个菜品)
两张表具体的表结构如下:
1). 套餐表setmeal
在该表中,套餐名称name字段是不允许重复的,在建表时,已经创建了唯一索引。
2). 套餐菜品关系表setmeal_dish
在该表中,菜品的名称name,菜品的原价price 实际上都是冗余字段,因为我们在这张表中存储了菜品的ID ...