自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 如何确定你访问的网站的真实性——证书体系

X.509证书的结构优势在于它是由公钥和私钥组成的密钥对而构建的。X.509证书就是基于国际电信联盟(ITU)制定的X.509标准的数字证书。X.509证书无处不在,比如我们每天使用的网站、移动应用程序、电子文档以及连接的设备等都有它的身影。部署X.509证书的关键是找到一个受信任的证书颁发机构(CA)或代理商,让它们来颁发证书,并提高与私钥相关的公钥。如果没有受信任的CA,发件人就不知道他们实际上使用的公钥到底是与收件人私钥相关联的正确公钥,还是与意图拦截敏感信息的恶意行为者相关联的公钥。...

2022-07-20 09:48:23 1031 1

原创 线程应用实例

3.1线程池的作用 3.2线程池的优势3.3 线程池中的几个参数3.4线程池工作流程 3.5Executor和Executors的区别3.6你知道怎么创建线程池吗?

2022-06-27 20:19:52 427

原创 JVM内存溢出和垃圾回收策略

JVM的一些

2022-06-09 22:02:54 299

原创 两个栈实现一个队列

两个栈实现一个队列

2022-06-07 22:24:25 257

原创 单链表实现增删改查

Node类单链表类

2022-06-07 21:46:02 97

原创 Java接口,内部类,代理的详解

Java接口,内部类,代理的详解

2022-06-06 22:30:23 609

原创 看完这篇文章,你也能手写MVC

我们执行程序从这个类开始,类加载的时候,先执行静态块(扫描所有的文件,把类文件的实例和类文件的方法 用HashMap存起来)main方法中的exec是模拟调用接口,第一个参数是类的@RequestMapping的value值,第二个参数是方法的@ReqeustMapping的value值...

2022-06-06 11:53:14 158

原创 一篇文章搞定Java继承

一篇文章搞定Java继承

2022-06-05 22:32:48 90

原创 一篇文章搞定Java设计结构以及对象与类

Java设计结构以及对象与类

2022-06-04 22:10:08 145

原创 freemark实现一个论坛

首先新建一个站点创建之后会在front-template文件夹下面自动创建gblt的资源同时在hosts文件中 把域名写好,这样访问域名的时候就会为其分配对应的资源我们在common包下创建对应的domain,mapper,service,因为后台管理系统和对应的站点都会使用到这些文件,同时xml文件也放在common包下的resources的mybatis文件夹中在admin包中创建controller用于后台管理系统进行交互在font包中创建路由c...

2022-05-29 22:52:26 166 1

原创 关于评分表部分的逻辑

写在前面:一场考试对应一个标准表,考官对考生评分的时候,需要讲看到评分标准,考场秘书对考试成绩汇总的时候需要看到评分标准,所以需要将标准表的数据展示出来。当我们创建一个考试创建了两个t_score_chart中的数据为了能够表达汇总表中的(总分,签字,评语)部分的数据,我们在创建考试的时候,对这些位置的数据在标准表中做了一个占位,方便在汇总表中(获取总分,签字,评语)的时候能够获取到对应标准表的id这些地方就有了对应的标准表id,方便对数据进行操作为了能有评分标准,..

2022-05-20 18:06:38 575

原创 文件上传的后端详解

NiuaConfig此时filePath就是 profile( C:/Users/10565/Desktop/niuniu/) + uploadC:/Users/10565/Desktop/niuniu/uploadFileUploadUtils2把绝对路径中profile的部分(C:/Users/10565/Desktop/niuniu/)用(profile/)代替的目的是防止服务器中的路径暴露到前端,用/profil...

2022-05-17 18:32:16 499

原创 Word导出

首先我们要把要生成的word的模板做一个占位目的是为了修改xml文件的时候,能够找到数据存放的位置把word文件另存为xml文件然后再把xml文件改成ftl文件这个时候我们拿到了带占位的ftl文件这里我们用的是汇总表的数据作为数据进行导出我们首先把这些通过学生id查到的学生信息先用HashMap存起来这些数据不需要循环遍历,很简单所以直接加进去下面是评分标准和分数一些的数据我们先新建几个数组,把对应位置的数据放进取,...

2022-05-17 18:31:15 869

原创 AOP实现RBAC权限验证

首先引入AOP的依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> </dependency>TokenUtil工具类 作用:1.通过用户生成token ...

2022-05-17 16:35:43 442

原创 mysql索引

mysql索引一种帮助mysql提高查询效率的数据结构优点:1.大大加快查询速度缺点:1.维护索引需要耗费数据库资源2.索引需要磁盘空间3.当对表的数据进行增删改的时候,因为要维护索引,速度收影响索引分类-InnoDB引擎a主键索引设定主键后数据库会自动建立索引,innodb为聚簇索引 ,主键索引不能有空b单值索引 单列索引 普通索引 ---相当于一个列即一个索引只包含单个列,一个表可以有多个单列索引c唯一索引索引列的值必须唯一,.

2022-05-13 13:49:46 481

原创 盘点项目中的那些注解

1@Autowired默认通过类型注入,如存在多个类型则通过名称注入 小写首字母作为名称@Resource默认通过名称注入,如名称无法找到,则通过类型注入2@PreAuthorize权限控制 @PreAuthorize("hasAuthority('/questionBank')")3实体类中@TableId主键注解的意思@TableId(type=IdType.AUTO) 根据当前表中id最大值自增+1实体类中的@TableName数.

2022-05-11 20:17:30 1621 1

原创 mybatis相关

mapper层其中的方法语句时直接对数据库中的数据进行操作的,mapper层的方法在mybatis中与 .xml文件一一对应xml配置文件<mapper namespace="com.qcby.mapper.UserMapper">namespace中写的类就是xml对应的mapper层文件resultMap结果类型mapper层public List<User> findAllResultaMap();xml文件<res...

2022-05-11 18:18:06 252

原创 excel导入功能

需要用到ExcelUtils工具类package test.excel;import java.io.IOException;import java.io.InputStream;import java.math.BigDecimal;import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.Date;import java.util.List;import org.apache.poi

2022-04-26 16:26:05 1872

原创 第一个商业项目复盘

多表查询想在前端连表查询一个新的表,可以在展示当前表的时候把新的表也查询出来,还可以在后端新建一个方法,新建新的方法调用,接口方面不能直接传id查询,要通过token获取id来查询查询投诉的接口的时候,要将投诉人的商户id一并查询,因为查询的话传入id不能被别的商户看到下拉框查询要考虑数据量是否大,如果大的话,就不能将全部都查询,输哪些查哪些防止重复查询有些业务在要求某些数据不能重复,就需要在后台中进行判断业务要了解客户需求,不多加需求也不少写需求些项目的时候要有好习

2022-04-25 15:13:24 117

原创 docker部署项目

docker核心解决项目部署在不同操作系统各种环境的部署,简化部署流程,让项目搭建在云服务器上更简单,占用的空间小,但会占用系统进程。每个目录下都会有一个Dockerfile里面会记录一些镜像信息 ,比如版本信息。server里面的Dockerfile里面还包含了一些我们一些部署程序的一些信息,还有启动的命令。在web目录里的docker-compose.yml文件里定义了一些映射规则和与docker容器的挂载的镜像,如下图所示:1.我们先要将easy-backend-ui(前端目录)执

2022-04-24 22:02:02 8201 1

原创 项目上传部分

OSS 通用上传接口 /** * OSS文件上传 * @param file * @return */ @PostMapping("/uploadFileByOSS") public ResultJson uploadFileByOSS(MultipartFile file){ try { QueryWrapper<OssConfig> ossConfigQueryWrapper = n.

2022-04-22 18:09:42 168

原创 防止输入重复数据,价格展示前后端不同

public ResultJson saveOrUpdate(@RequestBody RentalHouse rentalHouse){ Long merchId = rentalHouseService.findMerchIdByMerchName(rentalHouse.getMerchName()); rentalHouse.setMerchId(merchId); //输入的订单号 String orderNumber = ren.

2022-04-21 18:55:46 694

原创 处理状态按钮以及建议输入框

增加一个处理按钮,未处理状态展示,处理时间是点处理按钮的时间,已处理的投诉,不显示处理按钮 @GetMapping("/deal/{id}") public ResultJson dealHandle(@PathVariable Long id){ UpdateWrapper<Complain> updateWrapper =new UpdateWrapper<>(); updateWrapper.eq("id",id).set(

2022-04-20 13:54:54 143

原创 实际项目上的多表联查以及vue获取值

ShopsVO类xml配置文件,sql连表查数据mapper层controller层在controller层中定义了一个HashMaphashMap.put("pageList",pageList);hashMap.put("dicRegion",dicRegionList);方便在查询栏和增加更新栏中获取所有的dic_region表的信息搜索部分这里做一个下拉框编辑添加部分前端接受后端数据逻辑...

2022-04-18 10:57:19 1861 1

原创 freemaker模板

controller生成模板package ${package.Controller};import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;import com.baomidou.mybatisplus.core.metadata.IPage;import com.baom.

2022-04-13 22:47:02 414

原创 八大算法拿下

快速排序public class sort { public static void main(String[] args){ int arr[]={59,6,3,8,51,23}; QuickSort(arr,0,arr.length-1); System.out.println(Arrays.toString(arr)); } public static void QuickSort(int[] arr,int left,i.

2022-04-05 20:30:07 5331 2

原创 B树与B+树

二叉排序树简单的实现在多数情况能够达到预期的查找效率,但是每个节点只能存储一个元素和只能有两个孩子,使得在大量数据下会造成二叉排序树的深度特别大,那么在进行查找时多次的访问会造成查找效率的下降,同时,在对二叉查找树进行插入时,可能会破坏二叉查找树的平衡。为了降低对于树的访问次数,实现树的平衡,我们需要新的数据结构来处理这样的问题。1.B树的特点B树中允许一个节点包含多个Key,可以是3个、4个、5个甚至是更多,并不确定,需要看具体实现。现在我们选择一个参数M来构建一个B树,我们可以将其称为M阶..

2022-04-05 15:26:37 178

原创 红黑树的生成

红黑树:创建平衡二叉树的成本不小红黑树的定义:每个数的节点不是红色就是黑色根节点是黑色每个叶子节点(空节点)是黑色的如果一个节点是红色的,那么它的子节点一定是黑色的一个节点到该节点的子孙节点的所有路径上包含相同数目的黑色节点确保没有一条路径会比其他路径长两倍,最相对接近平衡的二叉树红黑树的生成2-3-4树变化过来的(4阶B树)下面一个2-3-4树转化成红黑树...

2022-04-05 14:59:20 937

原创 平衡二叉树简介和旋转方式

有序二叉树可能存在的问题给一个数列{1,2,3,4,5,6},要求创建一颗二叉排序树(BST)并分析问题所在二叉平衡树的特点1.它是一棵空树或者它两课子树的高度差的绝对值不超过1,并且左右子树都是一棵平衡二叉树2.平衡因子:左子树的高度-右子树的高度我们将平衡因子绝对值小于1的有序二叉树称为平衡二叉树构建平衡二叉树平衡调整的步骤:1.如果发现新插入一个节点之后,造成原有节点的平衡因子>=2,造成了不平衡,需要调整2.找到旋转类型:LL型,RR型,L...

2022-04-05 14:38:17 488

原创 力扣数组类型题目

力扣283class Solution { public void moveZeroes(int[] nums) { int j=0; //先把非0的数在nums中依次排列,剩下再给它们安排上0 for(int i = 0 ; i<nums.length; i++){ if(nums[i]!=0){ nums[j]=nums[i]; j++; .

2022-04-01 21:46:27 243

原创 Springboot项目

下一步勾选lombok和web(SpringMVC)--------(引入lombok和SpringMVC依赖)引入Mybatis依赖 <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <...

2022-04-01 15:48:23 2103

原创 通过注解读取配置文件中的值

配置中文件spring: thymeleaf: cache: false # 关闭缓存,默认开启 datasource: url: jdbc:mysql://localhost:3306/qcby_db?useUnicode=true&characterEncoding=utf-8 username: root password: 12345678 driver-class-name: com.mysql.cj.jdbc.Driver

2022-03-30 14:57:09 4667

原创 通用的返回结果封装

WebResultJson@Datapublic class WebResultJson { /** * 1 返回成功 * 0 返回失败 */ public final static int OK = 1; public final static String OK_MSG = "操作成功!"; public final static int FAIL = 0; public final static String FAIL_

2022-03-30 14:41:58 573

原创 AOP以及操作日志

AOP意思是:面向切面编程,通过预编译和@Aspect 加上这个注解就是切面连接点:Controller 或Service层的方法切入点:将切面与连接点关联起来,切入点表达式定义了“增强哪些包下面的哪些方法”...

2022-03-29 15:15:39 740

原创 树-BST(二叉搜索树)

class Solution { public TreeNode trimBST(TreeNode root, int low, int high) { if(root == null){ return root; } //当根节点值大于最大值,直接返回修剪过的左节点 if(root.val>high){ return trimBST(root.left,low,high);...

2022-03-27 16:43:14 434

原创 快速排序的递归实现

public class quickSort { public static void main(String[] args){ int[] arr={2,7,9,3,6,5,4}; quickSort(arr,0,arr.length-1); System.out.println(Arrays.toString(arr)); } public static void quickSort(int[] arr,int left,int .

2022-03-27 13:47:50 459

原创 二叉树的前-中-后 序遍历

二叉树的前序遍历class Solution { public List<Integer> preorderTraversal(TreeNode root) { List<Integer> ret = new ArrayList<>(); Stack<TreeNode> stack = new Stack<>(); stack.push(root); while(!.

2022-03-24 15:16:37 125

原创 力扣-树-层序遍历

1.一棵树每层节点的平均数class Solution { public List<Double> averageOfLevels(TreeNode root) { Queue<TreeNode> q = new LinkedList<>(); List<Double> result = new ArrayList<>(); if(root==null){..

2022-03-23 20:12:09 471

原创 算法-BFS广度优先搜索

class Solution { public List<List<Integer>> levelOrder(TreeNode root) { //新建一个二维数组 List<List<Integer>> result =new ArrayList<>(); //如果根节点为空,直接返回空了 if(root==null){ return resu...

2022-03-23 15:58:47 335

原创 算法-深度优先遍历DFS

思想:从root节点开始,尽可能深的搜索每一个分支,把一个分支的结果搜索完了以后,再去看下一个分支。例子:走迷宫走一条路到终点,再去走其他的路class Solution { public int numIslands(char[][] grid) {//当二位数组为空的时候,岛屿肯定是0 if(grid == null){ return 0; }//统计岛屿数 int result=0;//从头..

2022-03-23 15:40:59 263

空空如也

空空如也

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

TA关注的人

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