自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

猫腻的博客

前任栽树,后人乘凉,偶尔也要自己栽点小树苗

  • 博客(104)
  • 收藏
  • 关注

原创 如何把PostMan导出的json文件生成md或html的接口文档

1.下载docgen插件并改名下载地址 : https://github.com/thedevsaddam/docgen下载完成后修改名字: docgen (D:\software\docgen 路径放在系统环境变量path下也行/不放也行 随个人)2.执行获得生成的接口文档(未添加进系统环境变量的)在当前目录下执行cmd 然后输入docgen生成接口文档指令要查看来自postman集合的实时 HTML 文档,请使用…这将打开postman集合的 html 版本到定义的端口do

2022-04-12 09:43:32 3887 1

原创 Java Time工具类

import java.time.LocalDateTime;import java.time.ZoneId;import java.time.format.DateTimeFormatter;import java.util.Date;public class TimeUtil { /** * time 转 字符串 * * @param time * @return */ public static String format(D

2022-03-25 15:08:08 310

原创 Java 通过请求获取ip,并解析ip获取所在ip位置

“拿来"的同时也要学会"分享”前言本博文主要介绍如何通过前端请求获取用户的ip,再通过调用第三方的api,获取数据data,分析数据,获取想要的ip所属国家/区域/城市,以及经纬度等等.目前博主所使用的api属于免费的,查看其他博主的博客,阿里/百度/新浪的都使用了下,均无法使用,不知道是不是因为收费问题,然后找到一个免费的apihttps://extreme-ip-lookup.com/注:本博文只用作学习用途获取util的工具类借鉴博主:https://www.cnblogs.com/niu

2021-11-22 16:56:16 1760

原创 Java中拦截器与过滤器的区别及各自功能的实现

前言本篇博文主要是想表达以下几个方面什么是过滤器?什么是拦截器?过滤器与拦截器的区别在于什么地方?过滤器与拦截器各自应用的场景是什么?用过滤器与拦截器实现实际开发中的功能需求什么是过滤器-Filter前人言:取你所想依赖于Servlet容器,实现基于回调函数,对所有的请求进行过滤Filter随web应用的启动而启动,只初始化一次,随web应用的停止而销毁。启动时加载过滤器的实例,并调用**init()**方法来初始化实例每次的请求只能调用**doFilter()**进行处理

2021-11-15 13:33:04 835

原创 Java实现JsonWebToken登录

前言​ 本篇博文注重功能需求的实现,概念性的东西不多,所以想要多了解更全面的JWT 或者想要了解单点登录的实现原理及其他,可以移步其他博文.这里博主自己随便看了俩篇博文JWThttps://www.jianshu.com/p/abddaae52429https://www.jianshu.com/p/344a3d5bbab6单点登录https://zhuanlan.zhihu.com/p/97301347https://blog.csdn.net/IT_10000/artic

2021-11-12 15:27:35 1472 1

原创 Java实现文件上传阿里OSS

前言简介​ 这边博文实际上想要展现的是一个文件上传阿里OSS的工具类,但是过程是完全实现一个公司根据业务需求去开发实现上传的一个业务需求,综合比较其他博文,这篇博文可能比较罗嗦点.所以根据自身需求来决定是否需要借用此篇博客.开发工具idea + maven + postman(用来作为测试工具)开发环境jdk 1.8 + SpringBoot + maven(jar包管理)jar包版本:2.8.2<!--阿里云oss存储--><dependency>

2021-11-11 11:40:33 4264 7

原创 Java实现阿里云云通短信通知发送

开发环境idea + maven + jdk 1.8maven 环境中添加短信通知依赖<!--阿里短信服务相关jar包--><dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-sdk-core</artifactId> <version>4.1.0</version> <!-- 注:如提示报错,

2021-11-11 10:27:51 1497

转载 left join / right join 和 join的区别

真的是一张图道清所有join的区别啊,可惜我还是看不懂,可能人比较懒,然后基本一个left join给我就是够用的了,所以就没怎么去仔细研究了,但是现实还是逼我去搞清楚,索性自己动手,总算理解图中的含义了,下面就听我一一道来。首先,我们先来建两张表,第一张表命名为kemu,第二张表命名为score:一、left join顾名思义,就是“左连接”,表1左连接表2,以左为主,表示以表1为主,关联上表2的数据,查出来的结果显示左边的所有数据,然后右边显示的是和左边有交集部分的数据。如下...

2021-08-27 11:33:34 108

原创 Centos 7 安装mysql 8

1.检查是否安装过MySQL1.1检查去除mysqlyum remove MySQL1.2查看是否有MySQL依赖rpm -qa | grep mysql1.3若有依赖包的情况则进行删除操作//普通删除模式rpm -e xxx(mysql_libs)​//强力删除模式,如果上述命令删除时,提示有依赖其他文件,则可以用该命令对其进行强力删除rpm -e --nodeps xxx(mysql_libs)2.检查是否存在mariadbrpm -qa |

2021-08-25 14:08:25 128

原创 Centos 7 安装nginx

什么是nginx 服务器? 高性能的HTTP和反向代理web服务器 安装nginx依赖yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel下载nginx tar.gz压缩包官网地址: http://nginx.org/en/download.html解压,将其放在指定的目录里tar -zxvf '压缩包'​mv '解压的文件夹' '指定的目录'进入解压后的目录后按.

2021-08-25 14:07:21 77

原创 Centos 7 安装jdk 1.8

下载linux版本的jdk 1.8 ,将压缩包放在指定的目录下 /usr/local/java/ "java"文件夹自己创建解压完后将压缩包进行删除解压tar -zxvf '压缩包'删除指令rm -rf '文件夹'更改环境变量配置文件vim /etc/profile# java environmentexport JAVA_HOME=/usr/local/java/jdk1.8export CLASSPATH=.:$JAVA_HOME/li

2021-08-25 08:38:54 79

原创 spring框架的知识点总结

文章目录什么是Spring框架?什么是Spring?作用如何在快速添加Maven依赖?SpringFramework 5.x核心之IOC容器什么是IOC?案例SpringFramework 5.x核心之DI依赖注入什么是DI?案例Spring5.x bean的作用域和注入Spring 5.x bean的scope作用域讲解Spring 5.x 常见的注入方式使用set方法注入使用带参的构造函数注入特别容易出现的问题List-Map 类型的注入Spring IOC 容器Bean之间的依赖和继承bean继承--

2021-07-28 16:52:27 294

原创 Git的使用--上传与下载

配置Git用户名和邮箱如果是Windows下,选择Git Bash,在命令行中完成一切,可能开始有点麻烦,不过就那几条命令行,用几次就记住啦。首先初始设置Git:# 配置用户名git config --global user.name "Your Real Name"# 配置邮箱 注:注册时使用的邮箱git config --global user.email you@email.address验证:在配置完成后输入git config --global --list正常显示:生成

2021-07-22 16:24:01 344

原创 Mybatis框架的知识点总结

MyBatis官网地址:https://mybatis.org/mybatis-3/zh/configuration.htmlmaven项目中Mybatis依赖的地址:https://mvnrepository.com/artifact/org.mybatis/mybatis/3.5.4<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --><dependency> <groupId>or

2021-07-21 11:35:44 381

原创 springBoot 2.x过滤器--监听器--拦截器

springboot 2.x过滤器1.什么是 springboot 2.x过滤器类似于检票员,检验游客的门票2.springboot里的过滤器ApplicationContextHeaderFilterOrderedCharacterEncodingFilterOrderedFormContentFilterOrderedRequestContextFilter3.过滤器的优先级低位值意味着更⾼的优先级 Higher values are interpreted as lower

2021-07-15 09:13:13 211

原创 springboot中使用Servlet3.0的注解定义原生servlet

@WebServlet(name = "userServlet",urlPatterns = "/api/v1/test/customs")class UserServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { PrintWrit

2021-07-14 10:01:16 215

原创 项⽬实战中的Springboot2.X全局异常处理

SpringBoot2.x在线教育项⽬中⾥⾯的全局异常处理简介:讲解SpringBoot2.X全局异常处理为什么要配置全局异常?不配全局服务端报错场景 1/0、空指针等配置好处统⼀的错误⻚⾯或者错误码对⽤户更友好Springboot2.X怎么在项⽬中配置全局异常类添加注解@ControllerAdvice,如果需要返回json数据,则⽅法需要加@ResponseBody@RestControllerAdvice, 默认返回json数据,⽅法不需要加@ResponseBody

2021-07-13 11:20:10 285

转载 MockMvc案例实战调⽤Controller层API接⼝

Springboot的MockMvc调⽤api层接⼝如何测试Controller对外提供的接⼝增加类注解 @AutoConfigureMockMvc注⼊⼀个MockMvc类相关API :perform执⾏⼀个RequestBuilder请求andExpect:添加ResultMatcher->MockMvcResultMatchers验证规则andReturn:最后返回相应的MvcResult->Response@AutoConfigureMockMvc //测试

2021-07-13 10:10:29 175

原创 SpringBoot2.x里定制JSON字段

指定字段不返回:@JsonIgnore封装的类@Datapublic class User { private int id; private String username; /** * @JsonIgnore * 此注解是类注解,作用是json在序列化时将java bean 中的一些属性忽略掉,序列化和反序列化都受影响 * 生成json时不生成pwd属性 */ @JsonIgnore private String p

2021-07-08 16:19:20 413

原创 事务及四大特性

什么是事务?数据库事务(Database Transaction),是指作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完全地不执行。简单的说:事务就是将一堆的SQL语句(通常是增删改操作)绑定在一起执行,要么都执行成功,要么都执行失败,即都执行成功才算成功,否则就会恢复到这堆SQL执行之前的状态。下面以银行转账为例,张三转100块到李四的账户,这至少需要两条SQL语句:给张三的账户减去100元;update 账户表 set money=money-100 where name='张

2021-07-01 09:06:07 1391 1

原创 Cookie、Session 简述

什么是会话什么是会话:当浏览器发请求访问服务器开始,一直到访问服务器结束,浏览器关闭为止,这期间浏览器和服务器之间产生的所有请求和响应加在一起,就称之为浏览器和服务器之间的一次会话。在一次会话中往往会产生一些数据,而这些数据往往是需要我们保存起来的,如何保存会话中产生的这些数据呢?比如在购物过程中,将商品加入购物车,其实就是将商品信息保存到数据库中。(不讨论)如果在没有登录时,将商品加入购物车,其实就是将商品信息保存到了cookie或session中。可以使用cookie或者session保

2021-06-30 17:16:24 329

原创 配置maven环境和idea创建maven项目

1.下载maven下载地址下载解压到一个没有汉字的文件夹下面2.配置maven环境创建一个系统变量,变量名为MAVEN_HOME,值指向:D:\Java\apache-maven-3.8.1 你解压在的当前目录在path里再创建一个变量指向maven目录下的bin目录3.验证是否环境是否配置成功在dos窗口输入:mvn -version4.配置远程仓库Maven下载的依赖包会被存放在本地仓库中,默认路径为C:\Users\用户.m2\repository。后边在创建Mave

2021-06-30 11:25:56 107 1

原创 JSP、EL、JSTL--简述

JSP的概述什么是JSPJSP和Servlet都是由SUN公司提供的动态Web资源开发技术。JSP看起来像一个HTML,但和HTML不同的是,JSP中可以书写Java代码,可以通过Java代码展示动态的数据。 静态Web资源:任何人在任何条件下访问时,看到的都是相同的效果,这样的资源叫做静态Web资源。(html、css、js等) 动态Web资源:不同的人,在不同的条件下访问时,看到的都是不同的效果,这样的资源叫做动态Web资源。(Servlet、jsp、php、.NET等)

2021-06-29 10:29:28 162 1

转载 request和response简述

request和response介绍request是代表HTTP请求信息的对象,response是代表HTTP响应信息的对象。当浏览器发请求访问服务器中的某一个Servlet时,服务器将会调用Servlet中的service方法来处理请求。在调用service方法之前会创建出request和response对象。其中request对象中封装了浏览器发送给服务器的请求信息(请求行、请求头、请求实体等),response对象中将会封装服务器要发送给浏览器的响应信息(状态行、响应头、响应实体),在serv

2021-06-28 15:47:41 754

转载 IDEA创建Web项目详细过程

https://www.cnblogs.com/jiangyanblog/p/11668737.html

2021-06-28 10:31:36 75

转载 IntelliJ IDEA整合Tomcat服务器

https://blog.csdn.net/qyfx123456/article/details/104163243

2021-06-28 10:12:31 68

原创 HTTP协议详解_05

HTTP请求1、请求行GET /news/hello.html HTTP/1.1GET:表示请求方式,在HTTP协议中一共定义了7种提交方式,用的最多的是GET和POST。/news/hello.html:请求资源路径,表示浏览器请求的是哪一个Web应用以及哪一个web资源文件。HTTP/1.1:请求所遵循的协议和版本。2、若干请求头请求头都是Key-Value结构,例如:Host:localhost – 通知服务器,浏览器要请求的是哪一台虚拟主机。Accept:text/

2021-06-28 09:53:22 137 1

原创 JavaScript_04

什么是JavaScript(了解)全称叫做JavaScript,简称叫做JS司提供,是一门专门嵌入在浏览器中执行的脚本语言LiveScript JavaScriptJS运行在浏览器中,负责实现网页中的动画效果或者是实现表单校验等功能JS特点和优势(了解)1、特点:(1)JS是一门直译式的语言(边解释边执行,没有编译的过程)java–> 编写时 xx.java —>编译成 xx.class --> 运行js —> 编写时 html, 编写时 js文件, 直接

2021-06-25 15:15:40 226

原创 常用性总结_03

文本属性1、text-align:设置元素内的文本水平对齐方式,其常用取值为:left: 默认值。左对齐right: 右对齐center: 居中对齐justify: 两端对齐2、text-decoration:设置文本的下划线样式,其常用取值为:underline: 有下划线none: 没有下划线3、text-indent:设置文本首行缩进,单位: 像素/百分比4、letter-spacing:设置字符间隔/间距,其常用取值为:normal像素值5、text-shadow:设

2021-06-25 10:12:08 99

原创 CSS概述_02

什么是CSS?使用css样式修饰网页,可以实现将设置样式的css代码和展示数据的html代码进行分离,增强了网页的展示能力!CSS选择器标签名选择器通过元素名称(或标签名称)选中指定名称的所有标签格式: 元素名/标签名{ css样式… }/* ----- 1.标签名选择器练习 ----- 将所有span标签的背景颜色设置为#efbdef, 设置字体大小为22px,字体加粗;*/span{ /* 选中所有的span元素 */ background-color:#efbdef; font-

2021-06-25 10:06:56 45

原创 HTML标签_01

表单项标签一、 input元素(1)普通文本输入框(比如:用户名/昵称/邮箱/验证码等)<input type="text" name="username"/>(2)密码输入框(比如:密码/确认密码等)<input type="password" name="pwd"/>(3)单选框(比如:性别/部门等)<input type="radio" name="gender"/>男(4)复选框/多选框(比如:爱好/岗位等)<input type="

2021-06-25 09:41:53 162

原创 查询数据库,通过返回的结果查询本地的变量类型_43

封装的类:由于表中的字段太多,只封装部分作为演示public class Dao { private Integer VL_ID; private String VL_V_SerialNumber; private String VL_PI_V_CardCode;}主题类:import java.lang.reflect.Field;import java.sql.*;import java.util.Scanner;public class 暴力反射获取数据库

2021-06-24 16:43:54 71

原创 JDBC连接数据库_42

什么是JDBC?JDBC(Java DataBase Connectivity) Java数据库连接其实就是利用Java语言/程序连接并访问数据库的一门技术之前我们可以通过CMD或者navicat等工具连接数据库但在企业开发中,更多的是通过程序(Java程序)连接并访问数据库,通过Java程序访问数据库,就需要用到JDBC这门技术。如何通过JDBC程序访问数据库?开发工具:idea ij 和 Navicat第一步:导入jar包--java的驱动包jar可以去官网自行下载(注意点是:j

2021-06-23 17:30:21 222 1

转载 内部类_41

概述可以将一个类的定义放在里另一个类的内部,这就是内部类。广义上我们将内部类分为四种:成员内部类、静态内部类、局部(方法)内部类、匿名内部类。特点1、 内部类可以直接访问外部类中的成员,包括私有成员2、 外部类要访问内部类的成员,必须要建立内部类的对象3、 在成员位置的内部类是成员内部类4、 在局部位置的内部类是局部内部类一. 为什么使用内部类?在《Think in java》中有这样一句话:使用内部类最吸引人的原因是:每个内部类都能独立地继承一个(接口的)实现,所以无论外围类是否已经继

2021-06-23 13:36:45 57

原创 暴力反射_40

什么是暴力反射?指可以将程序中的私有的属性或者方法通过反射技术,暴力的获取到资源。需要使用的常见方法如下:暴力反射获取变量名并修改变量名类:class Hospital00007{ private String name="常熟第一人民医院"; private int num= 138; private void run(String name,int num){ System.out.println(name+"有:"+num+"人"); }

2021-06-22 17:28:03 263

转载 反射_39

概念Reflection(反射) 是 Java 程序开发语言的特征之一,它允许运行中的 Java 程序对自身进行检查,或者说“自审”,也有称作“自省”。反射非常强大,它甚至能直接操作程序的私有属性。我们前面学习都有一个概念,private的只能类内部访问,外部是不行的,但这个规定被反射赤裸裸的打破了。反射就像一面镜子,它可以在运行时获取一个类的所有信息,可以获取到任何定义的信息(包括成员变量,成员方法,构造器等),并且可以操纵类的字段、方法、构造器等部分。...

2021-06-22 16:14:28 74

原创 单列设计模式_38

单列设计模式概念单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。在计算机系统中,线程池、缓存、日志对象、对话框、打印机、显卡的驱动程序对象常被设计成单例。这些应用都或多或少具有资源管理器的功能。每台计算机可以有若干个打印机,但只能有一个Printer Spooler,以避免两个打印作业同时输出到打印机中。每台计算机可以有若干通信端口,系统应当集中管理这些通信端口,以避免一个通信端口同时被两个请求同时调用。总之,选择单例模式就是为了避免不一致状态,避免政出多头。特点单例类只能

2021-06-22 10:43:33 111

原创 同步锁(synchronized)_37

同步锁概念:把有可能出现问题的代码包起来,一次只让一个线程执行。通过sychronized关键字实现同步。当多个对象操作共享数据时,可以使用同步锁解决线程安全问题。 synchronized(对象){ 需要同步的代码; }特点:前提1,同步需要两个或者两个以上的线程。前提2,多个线程间必须使用同一个锁。同步的缺点是会降低程序的执行效率, 为了保证线程安全,必须牺牲性能。可以修饰方法称为同步方法,使用的锁对象是this。可以修饰代码块称为同步代码块,锁对象可

2021-06-22 10:11:30 1864

原创 多线程创建03_36

实现Runnable接口标题概述如果自己的类已经extends另一个类,就无法多继承,此时,可以实现一个Runnable接口。常用方法void run() 使用实现接口 Runnable 的对象创建一个线程时,启动该线程将导致在独立执行的线程中调用对象的 run 方法。测试public class Test2 { public static void main(String[] args) { MyThread t = new MyThread ()

2021-06-22 09:40:46 48

原创 多线程创建02_35

多线程创建1:继承Thread概述:Thread类本质上是实现了Runnable接口的一个实例,代表一个线程的实例。启动线程的唯一方法就是通过Thread类的start()实例方法。Start()方法是一个native方法,它将通知底层操作系统,最终由操作系统启动一个新线程,操作系统将执行run()方法。这种方式实现多线程很简单,通过自己的类直接extend Thread,并复写run()方法,就可以启动新线程并执行自己定义的run()方法。模拟开启多个线程,每个线程调用run()方法常用方法

2021-06-22 09:36:04 55

空空如也

空空如也

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

TA关注的人

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