自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(75)
  • 收藏
  • 关注

原创 解决MySQL删除/var/lib/mysql下的所有文件后无法启动的问题

其中的mysql用户不要改成root。

2024-06-28 20:16:25 261

原创 CentOS7安装apache2并启动

centos7安装apache2并启动

2022-12-22 09:46:40 891 1

原创 树的层次遍历相关leetcode

树的层次遍历相关leetcodeNo.102 二叉树的层序遍历思路:创建一个list类型的result接收最后的结果。创建一个队列,将每一层的元素入队。先将根节点入队,while循环队列不为空,计算队列的长度size,循环判断size>0,依次出队size个元素直到size等于0,依次将出队的元素存入list类型的临时变量list中,然后将list加入到result中。返回result。/** * Definition for a binary tree node. * public cla

2021-04-03 21:12:26 191

原创 前缀和相关leetcode

前缀和相关leetcode前缀和即元素i前面的元素和,包括元素i。No.724 寻找数组的中心下标class Solution { public int pivotIndex(int[] nums) { if(nums == null || nums.length == 0) return -1; int[] sum = new int[nums.length]; sum[0] = nums[0]; for

2021-04-03 20:58:18 230

原创 leetcode算法-递归

递归函数直接或间接地调用自己。生活中的例子从前有座山的故事。从前有座山,山里有座庙,庙里有个老和尚和小和尚,老和尚在给小和尚讲故事:从前有座山,山里有座庙,庙里有个老和尚和小和尚,老和尚在给小和尚讲故事:。。。4个要素接受的参数返回值递归终止条件递归拆解:如何递归到下一层斐波拉契数列0,1,1,2,3,5,8…f(n) = f(n - 1) + f(n - 2),其中f(0) = 0,f(1) = 1recursion(int n) { if(n < 2) return

2021-03-22 09:36:31 175

原创 leetcode算法-滑动窗口

滑动窗口目的:减少while循环的次数目标题型:数组定长问题,比如求数组中k个数为一组最大的和/最小的和例子:给定一个数组,数组中三个数为一组,求最大和。常规方法:将指针指向数组的第一位,求该元素和后两个元素的和;然后移动指针到第二位,求和;直到数组的最后三位求和为止。这样做每次都是三个数相加,会有重复的相加过程,比如第一轮和第二轮求和都要将第二位和第三位数相加。滑动窗口法:第一轮求前三位数的和,然后第二轮将之前的和减去第一位数,再加上第四位数,以此类推,每轮只需要减去一个数,再加上一个数。

2021-03-18 21:59:06 181

原创 在线教育项目第十天

一、微服务概念 本项目中父工程中的不同模块占用不同的端口号 微服务是一种架构风格/方式 一个项目拆分为多个服务,每个服务独立运行,每个服务占用独立进程,可以将每个服务单独部署在不同的服务器上优点 程序扩展方便,部署方便,代码量减少,容易定位问题 每个模块可以使用不得存储方式,有的使用redis,有的使用MySQL 每个模块可以使用不同的语言开发如果系统提供的业务是偏底层的,比如操作系统内核、存储系统、网络系统、数据库系统等,功能之间紧密配合,不适合使用微

2021-03-18 19:53:02 187

原创 在线教育项目第九天

一、课程列表与讲师列表类似有查询表单和分页条每条数据之后有编辑课程基本信息、编辑课程大纲、删除按钮后端1、创建CourseQuery类,用于封装多条件组合查询课程信息的条件数据public class CourseQuery { @ApiModelProperty(value = "课程标题,模糊查询") private String title; @ApiModelProperty(value = "状态 Draft未发布 Normal已发布") priva

2021-03-18 19:33:31 712 1

原创 阿里云视频点播上传视频踩的坑

问题使用阿里云视频点播中的本地流方法上传视频时,回调失败,控制台打印ErrorMessage = sun/misc/BASE64Encoder解决查了网上的方法,发现是JDK1.8以上的版本已经不使用上面这个包了?可以直接将JDK版本换成1.8就不会出现这个问题或者要使用JDK1.8以上版本的话,依赖版本严格参考阿里云的文档,如下: <dependency> <groupId>com.aliyun</groupId> &l

2021-03-16 15:38:16 665

原创 在线教育项目第八天

一、添加项目基本信息完善课程添加的简介整合文本编辑器1、准备工作复制富文本编辑器组件到项目中 复制Tinymce到components,复制tinymce4.7.5到static编辑build/webpack.dev.conf.js,加上 new HtmlWebpackPlugin({ ..., templateParameters: { BASE_URL: config.dev.assetsPublicPath + config.dev.a

2021-03-15 18:07:26 5381

原创 leetcode算法-二分查找法

二分查找法例子:猜数字猜100以内的一个数字,先猜50,大了就锁定范围1-49,小了就锁定范围51-100。以此类推,每次猜中间的数来锁定范围,直到猜出数字。例子:数组搜索元素给定一个有序数组,搜索数组重是否存在某个元素。如果使用遍历,时间复杂度是O(N)。如果使用二分查找发,时间复杂度是O(log2Nlog_2Nlog2​N),因为每次排除一半的元素。特点查找的元素必须有序。二分查找法相关leetcodeNo.704 二分查找思路:先判断数组是否为空,是则返回-1。然后定义左指针和右指针

2021-03-12 20:25:23 387

原创 leetcode常用算法-双指针

双指针普通双指针:两个指针往一个方向移动对撞双指针:两个指针面对面移动快慢双指针例子普通双指针i=0,j从1开始遍历,判断两数之和是否为12。然后i=1,j从2开始遍历判断和是否为12,以此类推,直到找到两数之和为12为止。这里i和j往同一个方向移动,都要遍历数组,因此时间复杂度为O(N2N^2N2)对撞双指针i=0,j=4开始遍历,此时和为10<12,说明需要更大的数相加才可能使得和为12,而j已经指向了数组中最大的数,因为这是一个有序数组,因此i需要向右移动才可能使得和更大。i=

2021-03-12 17:41:55 144

原创 在线教育项目第七天

一、添加课程分类前端1、添加课程分类的路由/router/index.js { path: '/subject', component: Layout,//布局 redirect: '/subject/list',//访问subject默认访问list name: '课程分类管理', meta: { title: '课程分类管理', icon: 'example' }, children: [ {

2021-03-12 16:00:22 599

原创 在线教育项目第六天

一、添加讲师实现头像上传准备工作1、使用阿里云对象存储oss打开阿里云,注册账号,最好使用支付宝,方便实名认证登录账号充值一两毛,防止欠费无法使用进入产品-对象存储oss,点击立即开通,开通后点击管理控制台小于1GB不收费2、管理控制台的使用创建存储空间Bucket,类似于文件夹 文件被频繁访问使用标准存储,归档存储无法被访问 同城冗余存储会进行备份,需要收费 版本控制针对数据的覆盖和删除操作将会以历史版本的形式保存下来。 读写控制 选择公共读点击文件管理

2021-03-12 15:33:45 401

原创 Java图基本知识及数据结构回顾

图Graph与树不同,图里面的节点与节点之间可能不止一条路径。图分为点和边,点称为顶点,相邻的点称为邻居节点。度:顶点连着的边的条数无向图:边没有方向有向图:边有方向入度:有几条边指向该节点初度:有几条边从该节点指向其它节点权重图:边上有权重,一般用于求解最短路径,    常用方法有贝尔曼-福特算法Bellman-Ford和迪克斯特拉算法Dijkstra数据结构回顾数组读多写少访问和更新的时间复杂度是O(1)搜索的时间复杂度是O(N)插入和删除的时间复杂度是O(N)链表写多

2021-03-11 17:55:24 131

原创 Java堆常用操作及相关leetcode算法题

堆Heap堆是一种完全二叉树且满足以下条件:每个节点都大于等于孩子节点,称为最大堆,堆顶元素最大每个节点都小于等于孩子节点,称为最小堆,堆顶元素最小判断数据结构的好坏要对比四个操作1、访问Access堆没有索引的概念,不存在访问的操作。2、搜索Search一般只搜索堆顶元素,时间复杂度为O(1)。如果要搜索任意元素,时间复杂度为O(N)。3、插入Insert插入一个元素,先插入在二叉树的下一个位置,然后比较该元素和父节点,如果大于父节点,进行交换,直到小于父节点为止。因为只需要和父节点

2021-03-11 16:28:46 205

原创 JavaTree常用操作及相关leetcode算法题

Tree树描述的是节点之间的父子关系节点:树中的每一个元素根节点:树中最上层的唯一的节点叶子节点:没有孩子的节点高度:从最底层算起,从0开始深度:从最高层算起,从0开始层:从最高层算起,从1开始二叉树普通二叉树:每个节点最多两个孩子满二叉树:除了叶子节点,每个节点都是两个孩子,并且所有叶子节点都在一层。完全二叉树:从根节点起,从上到下,从左到右,依次填满节点形成的二叉树满二叉树一定是完全二叉树,完全二叉树不一定是满二叉树遍历根据根节点的访问顺序分为前中后,左右子树都是依次遍历的。

2021-03-11 11:08:40 391

原创 JavaSet集合常用操作及相关leetcode算法题

Set特点:1、无序,元素的顺序不是按照插入的顺序,也不是根据大小来排序。2、不重复。插入元素时先比较哈希值,不同则插入,相同再调用equals方法比较,不同则是哈希冲突,可以通过链表法或再哈希法等方法解决,否则插入失败。主要作用:1、判断某个元素是否存在2、判断元素是否重复。将一组数插入集合,比较插入前的元素个数和集合的长度。leetcode大部分使用的是HashSet,偶尔会用到TreeSet。HashSet插入元素时,先通过哈希函数得到哈希值,判断哈希值在哈希表中对应位置是否已经存在

2021-03-11 10:14:54 236

原创 Java哈希表常用操作及相关leetcode算法题

哈希表以键值对的形式存储存储:将key通过哈希函数映射到一个内存地址,然后将value存入该内存地址获取:通过key传入哈希函数得到内存地址,将value取出来哈希冲突:不同的key传入哈希函数得到的内存地址一样解决:以链表的形式存储统一内存地址的value,要获取值时先定位到内存地址,再遍历链表判断数据结构的好坏要对比四个操作1、访问Access哈希表没有索引的概念,不存在访问的操作。2、搜索Search时间复杂度是O(1)。将key传入哈希函数得到内存地址,取出value。如果有哈

2021-03-10 17:43:21 264

原创 Java栈常用操作及相关leetcode算法题

栈先进后出,后进先出。只有一个口。例子:浏览器的页面前进后退操作。判断数据结构的好坏要对比四个操作1、访问Access时间复杂度是O(1),只能访问栈顶的元素。2、搜索Search时间复杂度是O(N)。需要遍历才能找到对应的元素。3、插入Insert时间复杂度是O(1)。只能在栈顶插入元素。4、删除Delete时间复杂度为O(1)。只能在栈顶删除元素。Java链表常用操作1、创建栈Stack<Integer> stack = new Stack<>();

2021-03-09 17:07:29 443

原创 Java队列常用操作及相关leetcode算法题

单端队列leetcode中大部分是使用单端队列,一个口进,一个口出底层使用链表实现判断数据结构的好坏要对比四个操作1、访问Access时间复杂度是O(N),需要遍历才能找到要访问的元素。2、搜索Search时间复杂度是O(N)。和访问一样,也是需要遍历才能找到对应的元素。3、插入Insert时间复杂度是O(1)。只能在队尾插入元素。4、删除Delete时间复杂度为O(1)。只能在队头删除元素。Java链表常用操作1、创建队列Queue<Integer> queue =

2021-03-09 14:56:29 221

原创 Java链表常用操作及相关leetcode算法题

单链表leetcode中使用单链表就足够了。判断数组结构的好坏要对比四个操作1、访问Access时间复杂度是O(N),因为链表的存储位置不是连续的,需要遍历才能找到要访问的元素。2、搜索Search时间复杂度是O(N)。和访问一样,也是需要遍历才能找到对应的元素。3、插入Insert时间复杂度是O(1)。在位置2和3之间插入元素5,只需要将2的next指针指向5,将5的next指针指向3即可。4、删除Delete时间复杂度为O(1)。删除位置3,只需要将2的指针指向4即可。Java链表

2021-03-09 11:41:23 161

原创 Java数组常用操作及相关leetcode算法题

1、创建已知数组元素int [] array = {1, 2, 3}int [] array = new int[]{1, 2, 3};已知数组长度int [] array = new int[3];使用ArrayList,不用确定长度和元素AraayList<Integer>list = new ArrayList<>();2、添加元素前三种创建数组的方法要添加元素,需要新建一个长度更长的数组,这里使用ArrayList的方法默认在尾部添加元素list.add

2021-03-08 14:45:46 284

原创 在线教育项目第五天

讲师管理模块前端开发使用vue-admin-template框架,其基于vue和element-ui文章目录讲师管理模块前端开发1、登录功能改造将登录请求的地址改为本地地址开发接口修改前端src/api/login.js中的请求url注意前端修改配置文件需要重启服务器出现Network Error说明代码有问题细节2、前端框架使用过程添加路由在api中创建文件在views中写vue页面 .vue3、讲师列表添加路由创建路由对应的页面在api文件夹中定义请求接口的文件teacher.js 定义要访问的地

2021-03-06 21:41:42 218

原创 使用CrossOrigin注解解决跨域问题无效的坑

在做在线教育项目前端开发部分条件的查询功能时,一点击查询按钮就出现跨域错误原因:是因为在前端的查询表单中调用vue中methods里定义的方法时没有加上括号加上后就没有跨域问题了这是methods里定义的方法...

2021-03-06 15:15:26 1155

原创 在线教育项目第四天

一、axios概念独立于vue的项目,但常和vue一起使用,实现ajax操作应用场景前端发送ajax请求后端接口,后端接口返回数据用于前端展示使用创建html页面,引入js文件,vue和axios将json文件中的数据显示到页面上<div id="app"> <table border="1" cellspacing="0" cellpadding="0"> <tr v-for="user, index in userList"&gt

2021-03-05 19:15:22 113

原创 在线教育项目第三天

前端开发一、准备工作安装vscode网址:https://code.visualstudio.com/Download推荐System版本 因为User版本是根据计算机用户安装的,换一个用户就使用不了了官网下载很慢,可以将下载网址中的az764295.vo.msecnd.net换成vscode.cdn.azure.cn安装的附加任务: ①将“通过code 打开“操作添加到windows资源管理器文件上下文菜单 ②将“通过code 打开”操作添加到windows资源管理器目录上下文

2021-03-03 21:50:56 317 1

原创 在线教育项目第二天

一、前后端分离开发前端 html css js jq 主要作用:数据显示 使用Ajax调用接口,返回json数据后端 controller service mapper 主要作用:返回数据或操作数据 开发接口指的是开发controller service mapper的过程开发文档 后端根据开发文档开发接口 前端根据开发文档调用接口二、讲师管理模块后端1、创建数据库和数据表create database inline_educat

2021-02-25 17:43:38 375

原创 在线教育项目第一天

前置知识Java基础MySQL JDBCJavaWeb servlet jsp cookie session filter listenerSSM Spring SpringMVC mybatisJava高级 Redis Nginx Maven Git版本控制 Springboot背景在线教育是以网络为介质的教育方式优势:随时随地都可以学习在很多领域都很流行 母婴 学前教育 少儿教育 中小学生 高校学生 留学 执业考试 职业技能 成人外语 个人兴趣商业模式B2C Business

2021-02-23 14:20:05 403

原创 JavaWeb第二十二天(二)

webfilter/CharacterFilterpackage com.xm.web.filter;import javax.servlet.*;import javax.servlet.annotation.WebFilter;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;//访问服务器内所有资源

2021-02-22 00:25:55 176

原创 JavaWeb第二十二天(一)

旅游网案例导入项目在maven对话框中点击+,选择项目travel的pom.xml,点击OK启动项目注意:在tomcat相关依赖中加上scope标签,设置为provided,否则会报org.apache.catalina.deploy.WebXml addServlet错误技术选型web层 servlet 前端控制器 html 视图 如果做的是互联网系统,给用户使用的,要保证访问的速度和前后端分离,就使用html 如果做后台管理系统,如OA系统

2021-02-22 00:17:24 2797

原创 JavaWeb第二十一天

MavenMaven可以解决的问题jar包冲突,引用冲突编译Java文件一次性执行指定目录下的所有单元测试打包项目maven核心功能依赖管理 maven工程对jar包的管理过程使用maven开发相同框架,相同功能的crm项目所占空间比传统web工程开发的crm项目小得多 传统web工程开发的crm项目,jar包在项目中 maven开发的crm项目,jar包不在项目中,在jar包仓库中,编译运行项目时会根据项目中存放的jar包坐标找到jar包仓库中的jar包一键构建编译

2021-02-21 23:37:41 85

原创 JavaWeb第二十天

Redis概念一款高性能的NoSQL系列的非关系型数据库关系型:MySQL Oracle 数据之间有关联关系 数据存储在硬盘的文件中非关系型:Redis HBase 数据使用键值对/列/文档/图形进行存储,数据之间没有关联关系 数据存储在内存中数据量很大时,操作非关系型数据库很耗时,因此如果经常查询一些不太经常发生变化的数据,可以使用缓存的思想 在内存中开辟一块区域作为缓存 从缓存中获取数据 有数据 返回数据

2021-02-21 23:28:27 135

原创 JavaWeb第十九天

AJAX概念Asynchronous JavaScript And XML 异步JavaScript和XML异步和同步 在客户端和服务器相互通信的基础上 同步 客户端发送请求给服务器和服务器返回响应给客户端之间,也就是服务器处理请求做出响应的这段时间里,客户端只能等待服务器的响应,不能做其他事 异步 客户端发送请求给服务器之后,不需要等待服务器的响应,在服务器处理请求的时间段内,客户端可以做其他事AJAX是一种在无需重新加载整个网页的情况下,能

2021-02-21 23:01:42 3575

原创 JavaWeb第十八天

FilterJava web 三大组件  Filter过滤器 Listener监听器 Servlet概念Filter 过滤器 概念 web中的过滤器 浏览器发送请求给服务器获取资源,过滤器拦截请求,增强请求的功能,请求资源,返回时再次拦截,再次增强请求的功能之后再响应 请求资源的通用操作可以放在过滤器中,如登录验证、统一编码处理、敏感字符过滤 快速入门 1、定义一个类,实现接口Filter 2、重写方法

2021-02-21 22:35:32 90

原创 JavaWeb第十七天

用户信息列表展示案例需求  用户信息的增删改查设计  技术选型    Servlet+JSP+MySQL+JDBCTemplate+Druid+BeanUtils+服务器    控制器+展示界面+数据库+数据库操作的封装+数据库连接池+数据封装+Tomcat  数据库设计    create database day17; – 创建数据库    use day17; – 使用数据库    create table user(      id int primary key auto_i

2021-02-21 22:15:24 250

原创 JavaWeb第十六天

会话技术1、会话会话  一次会话中包含多次请求和响应一次会话  浏览器第一次给服务器西元发送请求,会话建立,  直到有一方断开为止(服务器或客户端关闭)功能  在一次会话的范围内的多次请求之间共享数据  HTTP协议无状态,即浏览器发送多次请求,服务器发送多次响应,每次请求响应和其它的请求响应之间不共享数据  栗子:将多件商品分多次加入购物车,是多次请求响应,最终进入购物车结算又是一次请求响应,它们彼此间应该交换数据,否则不知道结算的商品是什么方式  客户端会话技术 Cookie 

2021-02-21 20:53:43 144

原创 JavaWeb第十五天

JQuery1、基础概念  一个JavaScript的框架,简化JS开发  JavaScript框架:本质上就是封装了js原生代码的js文件快速入门步骤:(1)下载JQuery  三大版本:   1.兼容IE678 使用最广泛 官方只做bug维护,不再新增功能 一般项目够用   2.不兼容IE678 很少人使用 官方只做bug维护,不再新增功能   3.不兼容IE678 只支持最新的浏览器 是官方主要更新维护的版本     很多老的jQuery插件不支持这个版本  .js与.min

2021-02-20 23:48:03 104

原创 JavaWeb第十四天

HTTP1、概念Hyper Text Transfer Protocol超文本传输协议传输协议  定义了客户端和服务器通信时,发送数据的格式 客户端请求,服务器响应特点  (1)基于TCP/IP的高级协议  (2)默认端口号:80  (3)基于请求/响应模型 一次请求对应一次响应  (4)无状态:每次请求之间相互独立,不能交互数据         每张图片、css、js都是一次请求历史版本  1.0 每次请求响应都会建立新连接  1.1 短时间内多次请求默认复用连接2、请求消息数

2021-02-20 22:57:02 419

原创 JavaWeb第十三天

1、web相关概念回顾软件架构  C/S 客户端/服务器端  B/S 浏览器/服务器端资源分类  静态资源    所有用户访问后,得到的结果都是一样的,称为静态资源,    静态资源可以直接被浏览器解析    如:html css JavaScript  动态资源    每个用户访问相同资源后,得到的结果可能不一样,称为动态资源,    动态资源被访问后,需要先转换为静态资源,再返回给浏览器    如:servlet/jsp php asp网络通信三要素  IP 电子设备(计算机

2021-02-20 20:46:53 125

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除