自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 自定义过滤器通过request获取POST请求参数

自定义过滤器通过request获取POST请求参数场景:自定义一个过滤器,过滤验证码是否填写(集成SpringSecurity)前端:<!--登录页面--><template> <div class="login-container"> <el-form :model="loginForm" :rules="rules2" status-icon ref="logi

2021-12-14 23:55:30 1398

原创 No identifier specified for entity: com.aoshen.entity.User

问题描述在整合JPA的时候,用代码来生成数据库表和数据,在实体类User的主键ID上加@Id注解有一个坑@Id:有两个注解方法,当你引入第二个时候就会报错:org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoco

2021-11-29 10:06:23 781

原创 计算机网络原理——第一章:计算机网络概述

学习目标:1):理解计算机网络、网络协议、计算机网络的分类、计算机网络结构等基本概念2):掌握电路交换、报文交换、分组交换网络的工作原理及其特点3):掌握计算机网络主要性能指标与分组交换网络性能分析方法4):理解网络体系结构概念,掌握OSI参考模型及TCP/IP参考模型5):;了解计算机网络发展历史第一节:计算机网络基本概念1:什么是计算机网络?从技术范畴来看,计算机网络是计算机技术与通信技术相互融合的产物。计算机网络是互连的自治的计算机的集合自治:指互连的计算机系统之间彼此独立,不.

2021-08-23 15:51:46 1081 2

原创 Reids的持久化操作:RDB和AOF

Reids的持久化操作:RDB和AOF本文参考资料、视频:狂神说Java视频链接:https://www.bilibili.com/video/BV1S54y1R7SB?from=search&seid=16411168459329395537什么是RDB?解释:在指定的时间间隔内将内存中的数据集...

2021-06-18 17:01:16 144

原创 Redis和Memcache的区别及各种数据结构的应用场景

Memcache使用多线程I/O 充分利用CPU多核优势功能简单,使用内存存储key不能超过250个字节value不能超过1Mkey最大失效期是30天只支持K-V结构,不提供持久化和主从同步功能RedisRedis主要采用单线程模式处理请求Redis支持持久化支持多种数据类型。五种基本的数据类型:K-V,List,Set,ZSet,Hash三种特殊的数据类型:GeospatialL:地理位置Hyperloglog :技术统计Bitmap:位图使用场景String

2021-06-18 16:37:48 252

原创 解决Redis的热点缓存问题(双重检查锁)

使用双重检查锁解决热点缓存问题首先,我们来认识一下什么是热点缓存我们用redis来做缓存的时候,都碰到过缓存穿透问题吧,这个就是我要说的热点缓存问题怎么引起的?就是当我们存在缓存中的数据有一个失效时间,这个时间过期了,在这个期间,有大量的请求访问过来,看redis中没有该数据,会直接去访问MySql数据库,给数据库造成很大的压力解决我们来说解决热点缓存的方案:双重检查锁业务场景:查询学生总人数 //使用双重检查锁 //不存在线程安全问题 @Override p

2021-05-20 09:13:54 1245 1

原创 设计模式

文章目录OOP和OOAD介绍UML是什么?面向对象七大设计原则介绍面向对象常用设计模式介绍概述:创建型为什么使用创建型设计模式?简单工厂模式工厂方法模式介绍抽象工厂模式构建者者模式1、直接在实体类中进行构建2、在原有的实体类的基础上进行构建(更符合构建者模式的初衷)构建者创建对象的方式和new、setter方式有何不同原型模式介绍:优点代码实现参考:单例模式单例三部曲懒汉式牵扯的线程安全问题分析1、饿汉式单例2、懒汉式单例(存在线程安全问题)3、懒汉式单例(加synchronized锁)4、懒汉式单例(双重

2021-04-08 08:47:30 142

原创 没有BUG的Docker安装及其他

文章目录Docker1、安装Docker2、Docker安装nginx3、Docker安装MySql4、Docker安装Redis5、Docker安装MongoDB6、Docker安装Node.js7、Docker部署jenkinsDocker1、安装Docker1、通过 uname -r 命令查看你当前的内核版本uname -r2、 使用 root 权限登录 Centos。确保 yum 包更新到最新。yum -y update3、 卸载旧版本(如果安装过旧版本的话)yum remove

2021-03-29 17:00:58 179

原创 数据结构——栈

栈(Stack)栈是只允许在一端进行插入或者删除操作的线性表(LILO:先进后出)栈的基本操作创 InitStack(&S):初始化栈,构建一个空栈S,分配内存空间销 DestoryStack(&L):销毁栈,销毁并释放栈L所占用的内存空间增 PushStack(&S,x):进栈,若栈S未满,则将x加入使之成为新栈顶删 Pop(&S,&x):出栈,若栈S非空,则弹出栈顶元素,并用x返回查 GetTop(S,&x):读栈顶元素,若栈S非空,则用x

2021-01-23 13:24:18 166 2

原创 数据结构——线性表(链表)

文章目录单链表单链表声明单链表初始化(带头结点)单链表判断是否为空(带头结点)单链表判断是否为空(不带头结点)单链表按位序插入(带头结点)单链表按位序插入(不带头结点)单链表后插操作单链表前插操作单链表删除(带头结点)单链表删除(不带头结点)单链表删除指定节点单链表按位查找单链表按值查找求单链表的长度(带头结点)求单链表的长度(不带头结点)尾插法建立单链表(带头结点)尾插法建立单链表(不带头结点)头插法建立单链表(带头结点) (可以用于链表逆置!!!!!!!!!)头插法建立单链表(不带头结点)单链表单

2021-01-08 10:36:11 330

原创 数据结构——线性表(顺序表)

文章目录线性表顺序表的声明(静态分配方式)顺序表的声明(动态分配+扩容)线性表的插入线性表的删除线性表按位查找线性表按值查找线性表定义:具有相同特性的数据元素的一个有限序列,同一线性表中的元素必须具有相同特征,数据元素间的关系事线性关系特点:随机访问:可以在O(1)的时间复杂度内找到第n个元素存储密度高:每个节点只存储数据元素拓展容量不方便,即使采用动态分配的方式,时间复杂度也比较高插入、删除操作不方便,需要移动大量的元素先来看一下关于顺序表的一些操作顺序表的声明(静态分配方式)

2021-01-07 19:27:19 157

原创 数据结构——前言

数据结构的研究内容我们首先看一下数据结构的研究内容 首先是通过计算机解决问题,具体问题抽象为数学模型,实质又分为三步:分析问题、提取操作对象、找出操作对象之间的关系、用数学语言描述==》数据结构,然后就是设计算法,编程、调试、运行。描述...

2021-01-07 13:35:15 444

原创 为什么会出现Date类型传到数据库后面的时分秒变为0?

前言:今天写代码的时候遇到了一个问题,现在来和大家分享一下:创建时间:crea_time在数据中是Datetime类型但是当我在实体类上使用 @Temporal 注解来给这个日期类型进行转换时,如果要是用@Temporal(TemporalType.Date)然后再向数据库中添加的时候用的setCreateTime(new Date());这种写法在添加到数据库之后,后面的时分秒回变成0,这种情况的发生一般是由于时间日期对象使用错误造成的。java.util.Date是不能直接插入数据库

2020-12-09 15:03:06 4647

原创 我们这个年龄应该要做的事

大家好,我是一名入门的菜鸟,如果你不经意间翻开了我的文章,谢谢您,您的支持是我前进的动力,让我们一起加油!!由于不是名牌大学,只是一个普普通通的专科生,所以,我想通过自己的努力来获得我想要的,我不会放弃我的梦想,我也曾幻想着我成功的时候在朋友边吹嘘,也曾想象到我失败时候潦倒的样子,幻想始终是幻想,我会努力的,加油,你一定能行应该大部分00后还在忙着学业,忙着答辩,忙着专升本吧,更少一部分...

2020-11-16 10:43:47 222 3

原创 分享一

这篇文章及这个专栏的所有文章都记录了我自己在公司分享自己的代码和技术,但听不亏

2020-11-09 11:21:08 87

原创 谈谈入职前后的一个月吧

嗨,大家好,好久不见了,刚过完十一假期,难得静下心来写篇博客。距离上一次写博客已经过去两个月了,总说着要坚持写博客,这一忙也没能坚持下来,感觉博客这个东西吧,也不能强求,强求的话很容易写水文,就比如我之前写的博客,总想着要高访问量、高关注,这几十篇博客下来,能拿得出手的确实每几篇,大都是匆匆写过,当时看着确实很高大上、自我感觉很棒,但现在想想,也是最普通的技术文章,也没有心意,大都是别人写过很多的文章,当时也是因为身边的人确实也很少写博客的,能坚持下来总归是好事,以后能坚持下来才是好事,静下心来,投入精力

2020-10-11 00:52:50 369 6

原创 spring-security 权限控制,结合项目

spring-security 权限控制,结合项目1 权限控制执行流程1:导入依赖2:配置spring-security.xml配置文件3:编写service权限控制,自己编写的form表单,提交之后会自动提交到security框架的service中,然后调用业务层方法进行判断存储4:把用户信息存到框架的上下文中,返回。框架会根据数据库中存储的用户拥有的角色、权限进行相应页面的跳转。5:在controller层进行权限控制,根据查询数据库权限判断这个用户是否有这个权限操作。2 详细代码执行过程

2020-08-12 13:05:08 306

原创 SpringBoot自动配置原理

SpringBoot1:起步依赖SpringBoot通过提供众多起步依赖降低项目依赖的复杂度,起步依赖本质上是一个Maven项目对象模型,定义了对其他库的 传递依赖,这些东西加在一起支持了某项功能。例如,SpringBoot中的传递依赖往往定义了统一的版本号,和SpringBoot版本紧紧相连,再也不用担心版本冲突。我们只要引入了起步依赖,就相当于导入了起步依赖中自动配置的jar包。2:自动配置原理在SpringBoot启动类中,通过启动类的@SpringBootApplication注解实现了Be

2020-08-12 12:58:17 143

原创 解决redis高并发问题的几种思路

解决redis高并发问题的几种思路1:布隆过滤器首先,布隆过滤器能解决绝大部分恶意攻击的请求,比如我们数据库中的id通常都设为自增的,是有一定范围大小的,如果有黑客恶意用数据库中没有的id一直访问我们的数据库,这就会给数据库造成很大的压力,为了解决这个bug,去我们可以使用布隆过滤器来过滤大部分恶意请求。1.1 实现原理布隆过滤器(Bloom Filter)是1970年由布隆提出的。它实际上是一个很长的二进制向量和一系列随机映射函数。布隆过滤器可以用于检索一个元素是否在一个集合中。它的优点是空间效

2020-08-03 16:20:54 7011

原创 使用 Arrays.asList 把数据转换为 List 的三个坑

使用 Arrays.asList 把数据转换为 List 的三个坑在如下代码中,我们初始化三个数字的 int[]数组,然后使用 Arrays.asList 把数组转换为 List: int[] arr = {1, 2, 3}; List list = Arrays.asList(arr); System.out.println(list); System.out.println(list.size()); System.out.pri

2020-08-03 16:14:49 1983 1

原创 Spring整合MyBatis(半注解半xml)

Spring整合MyBatis(半注解半xml)1导入依赖1.1要导入的依赖包介绍1:Spring容器的依赖2:Spring操作JDBC的依赖3:MyBatis的依赖4:Spring与MyBatis整合的依赖5:Druid连接池的依赖6:Junit的测试依赖7:Lombok依赖8:Spring的测试依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/

2020-06-04 20:11:13 206

原创 Servlet3.0文件上传详解!!!

文件上传的例子有很多,这个博客来带你进入每个功能,每个方法的详解!我们学过的上传的方式有两种:传统:common-fileuplad上传文件Servlet3.0:新增的上传方式,比传统的要容易得多语法介绍文件上传大多用在用户添加数据的时候使用,其实是把表单中的每一项都设计成一个part对象,无论是普通项还是文件项,都是一个part(部分)对象HttpServletRequest接口说明Part getPart(String name)获取表单中一项,这个Part.

2020-05-29 21:55:24 1300

原创 异步开发我竟然犯下了这么重大的失误!!

异步开发我竟然犯下了这么重大的错误!!我们知道,在进行项目开发中,我们通常异步进行开发,进行前后端的分离,降低代码的耦合度,更方便后期维护开发,但是这其中一定要仔细!!一定要仔细,不要“山本大意失仙人”在昨天写了一个项目,中间也是用前后端分离开发的,我们知道,客户端传给服务端数据,服务端进行响应返还给客户端的数据是json数据格式,一定要记住!!服务端传给客户端的数据是json格式千万不要忘了进行数据转换!例如:首先进行数据编码:application/json;charset=utf-8调用

2020-05-25 08:50:52 215

原创 Jedis的API介绍和连接池工具类

## Jedis的API介绍```javaJedis简单来说就是使用java代码来操作redis数据库```Redis不仅可以使用命令来操作,现在基本上主流的语言都有API支持,比如Java、C#、C++、PHP、Node.js、Go等。在官方网站里列一些Java的客户端,有Jedis、Redisson、Jredis、JDBC-Redis等其中官方推荐使用Jedis和Redisson。

2020-05-20 08:12:55 328

原创 MyBatis:延时加载

什么是延迟加载概念:如果一张表关联了另一张表的数据,只加载这张表中的数据,它关联的另一张表中的数据等到需要用的时候才去加载,称为延迟加载,也叫懒加载。多表关联查询缺点:查询速度更慢更加占用对象的资源,还可能造成资源的浪费。延迟加载介绍一对一使用标签:association一对多使用标签:collection使用场景:就是我们模糊查询的时候,需要有多个框选择填属性,如果没有延时加载的话,就会一次性的把多个表中的数据全部查询了出来,达不到效果。所以我们就要使用延时加载,进行分布加载,打到延

2020-05-17 22:30:36 513

原创 自定义配置MyBatis的核心和实体映射文件

最后我也给大家整理了我们MyBatis开发所需要的配置文件MyBatis核心配置xml文件:<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration> ..

2020-05-17 21:34:33 386

原创 数据库连接池(常用的德鲁伊)

总结了常用的数据库连接池及其详细介绍和只用,以及对前面的数据工具类的再增强

2020-05-16 22:58:21 12381 9

原创 JDBC高级

本篇就有点高深的意思了,希望对读者们有帮助

2020-05-14 21:58:56 99

原创 JDBC初级

本篇为JDBC初级入门篇,主要介绍一些常用接口的属性及其使用

2020-05-13 22:01:03 132

原创 各种数据库连接的字符串URL

连接数据库必需品

2020-05-13 16:49:00 736

原创 MySql总结

较为详细的mySql总结,帮助很大

2020-05-10 23:05:13 268

原创 MySql语句的分类和语法

大家好,我是一名入门的菜鸟,如果你不经意间翻开了我的文章,谢谢您,您的支持是我前进的动力,让我们一起加油!!由于不是名牌大学,只是一个普普通通的专科生,所以,我想通过自己的努力来获得我想要的,我不会放弃我的梦想,我也曾幻想着我成功的时候在朋友边吹嘘,也曾想象到我失败时候潦倒的样子,幻想始终是幻想,我会努力的,加油,你一定能行什么是SQL?SQL:Structured Query Lang...

2020-05-07 21:31:06 252

原创 怎样链接小伙伴的MySql 删库跑路喽!

大家好,我是一名入门的菜鸟,如果你不经意间翻开了我的文章,谢谢您,您的支持是我前进的动力,让我们一起加油!!由于不是名牌大学,只是一个普普通通的专科生,所以,我想通过自己的努力来获得我想要的,我不会放弃我的梦想,我也曾幻想着我成功的时候在朋友边吹嘘,也曾想象到我失败时候潦倒的样子,幻想始终是幻想,我会努力的,加油,你一定能行首先要通过MySql链接其他人的数据库,必须要知道账号和密码…...

2020-05-07 20:33:31 108

原创 怎样快速彻底铲除MySql!!!

如何彻底的删除MySQL数据库?以下操作以Window7操作系统为例:停止window的MySQL服务。找到“控制面板”-> “管理工具”-> “服务”,停止MySQL后台服务。卸载MySQL安装程序。找到“控制面板”-> “程序和功能”,卸载MySQL程序。删除MySQL安装目录下的所有文件。删除c盘ProgramDate隐藏目录中关于MySQL...

2020-05-07 19:56:35 204

原创 MySql数据库最详细的安装教程

安装的两个步骤文件复制的过程(简单)配置数据库服务器(详细)如果上面的勾勾上,会自动运行下面的程序C:\Program Files\MySQL\MySQL Server 5.5\bin\MySQLInstanceConfig.exe使用UTF-8编码,默认是ISO-8859-1不支持汉字管理员名字和密码,下面勾表示可以在其它机器上访问安装完后的MySql可以再...

2020-05-07 19:51:03 278

原创 动态代理实现过滤敏感词汇变成***

大家好,我是一名入门的菜鸟,如果你不经意间翻开了我的文章,谢谢您,您的支持是我前进的动力,让我们一起加油!!由于不是名牌大学,只是一个普普通通的专科生,所以,我想通过自己的努力来获得我想要的,我不会放弃我的梦想,我也曾幻想着我成功的时候在朋友边吹嘘,也曾想象到我失败时候潦倒的样子,幻想始终是幻想,我会努力的,加油,你一定能行首先,使用动态代理最重要的是要找到要增强的方法,找到目标,目标明确...

2020-04-29 22:05:56 390

原创 关于跳转页面报404、500错误设置自定义图片和文字

大家好,我是一名入门的菜鸟,如果你不经意间翻开了我的文章,谢谢您,您的支持是我前进的动力,让我们一起加油!!由于不是名牌大学,只是一个普普通通的专科生,所以,我想通过自己的努力来获得我想要的,我不会放弃我的梦想,我也曾幻想着我成功的时候在朋友边吹嘘,也曾想象到我失败时候潦倒的样子,幻想始终是幻想,我会努力的,加油,你一定能行先看一下效果图吧(404图片不知道还合不合大家胃口)下面来说明...

2020-04-28 22:06:50 2341

原创 Cookie实现自动登录案例实现

分析:在这里我采用了用原生js判断用户名密码和cookie中保存的用户名密码比较Servlet步骤:获取文本框中的用户名和密码判断用户名密码是否正确,实现登录如果登录成功,就判断用户是否勾选了记住我按钮用户勾选了按钮之后,就把用户名和密码存到Cookie中,保存一定的时间跳转到登录成功页面用户名密码错误跳转到登录失败页面Servlet代码:package com.a...

2020-04-23 21:52:30 5494 5

原创 使用原子类解决多个用户登录的安全问题

流程步骤:首先在servlet中创建init()方法,初始化计数为0用户输入账号密码, 跳转到Servlet进行判断如果账号密码正确,创建得到上下文对象从上下文域中得到num计数创建原子类并把域中的内容存到原子类中计数+1,并且把+1后的计数再更新到上下文域中重定向到另一个显示第多少个用户登录的servlet账号密码错误,返回登录页面重新登录效果图这里我用了三个不同...

2020-04-22 21:45:16 239

原创 使用Servlet实现下载文件

案例需求完成文件下载功能。案例效果用户点击页面的链接,浏览器开始下载文件。案例分析创建一个页面,展示所有要被下载文件的链接链接将要下载的文件名称,发送给服务器的servlet,让servlet进行处理服务器加载文件资源提示浏览器,以下载的方式,获取服务器资源使用IO的方式,将文件数据输出到浏览器(response.getOutputStream())代码实现html页面...

2020-04-22 21:08:00 2223

空空如也

空空如也

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

TA关注的人

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