![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 66
IT二叔
一个没有感情的IT二叔
展开
-
Java读取csv文件
【代码】Java读取csv文件。原创 2023-02-28 17:01:35 · 580 阅读 · 0 评论 -
LocalDateTime类型的数据转json后数据格式
【代码】LocalDateTime类型的数据转json后数据格式。原创 2023-02-27 17:18:04 · 983 阅读 · 1 评论 -
简化操作---stream流试编程
【代码】简化操作---stream流试编程。原创 2022-12-01 19:45:55 · 100 阅读 · 0 评论 -
Java基础_JDK安装
tar -zxvf jdk-8u281-linux-x64.tar.gz(检查本机有没有jdk有的话卸载掉。安装上自己的jdk)2 配上环境变量。原创 2022-09-17 14:21:30 · 117 阅读 · 0 评论 -
Java多线程-线程通信
正常情况下,每个子线程完成各自的任务就可以结束了。不过有的时候,我们希望多个线程协同工作来完成某个任务,这时就涉及到了线程间通信了。涉及以下方法thread.join(),object.wait(),object.notify(),CountdownLatch,CyclicBarrier,FutureTask,Callable 有如下几个问题说明Java 里有哪些方法来实现线程间通信如何让两个线程依次执行?那如何让 两个线程按照指定方式有序交叉运行呢?四个线程 A B C D,其原创 2021-11-15 14:54:42 · 89 阅读 · 0 评论 -
Springboot项目优化
在SpringBoot的Web项目中,默认采用的是内置Tomcat,当然也可以配置支持内置的jetty,内置有什么好处呢?方便微服务部署。方便项目启动,不需要下载Tomcat或者Jetty针对目前的容器优化,目前来说没有太多地方,需要考虑如下几个点线程数超时时间jvm优化针对上述的优化点来说,首先线程数是一个重点,初始线程数和最大线程数,初始线程数保障启动的时候,如果有大量用户访问,能够很稳定的接受请求。而最大线程数量用来保证系统的稳定性,而超时时间用来保障连接数不容易被压垮,如果大原创 2021-11-05 16:18:28 · 353 阅读 · 0 评论 -
Linux下JDK的下载安装配置
JDK下载安装官网下载jdk linux版本1.查看当前Linux系统是否已经安装JDK rpm -qa | grep jdk2.如果有,卸载rpm -e --nodeps jdkyum remove jdk3.新建目录 mkdir /usr/java4.解压jdktar –xvf jdk-8u144-linux-x64.tar.gz -C /usr/java5.设置环境变量vi /etc/profile 6.按i编辑,进入,输入JAVA_HOME=/usr/j原创 2021-10-15 10:25:51 · 100 阅读 · 1 评论 -
SpringBoot接口幂等性的实现
1.什么是接口的幂等性简单来说就是当我们重复请求某个资源的时候,对于此资源要有同样的结果,也就是说只有第一次请求的时候对资源进行改变,以后的每一次请求都必须要有相同的结果2.幂等性的案例实现在一般情况下,我们进行接口调用的时候,都能进行正常的操作,但是在以下几个情况就会产生问题:前端重复提交表单:在我们填写一些表单的时候,比如登录,当点击完提交,由于网络问题后台没有及时响应,此时重复点击就会产生问题RabbitMQ消息重复消费:也就是MQ的消息重复性问题,导致发生消息的重复消费恶意刷单:比如点原创 2021-07-08 15:02:44 · 532 阅读 · 1 评论 -
HttpClient详解--springboot+httpclient
Http简介HTTP 协议可能是现在 Internet 上使用得最多、最重要的协议了,越来越多的 Java 应用程序需要直接通过 HTTP 协议来访问网络资源。虽然在 JDK 的 java net包中已经提供了访问 HTTP 协议的基本功能,但是对于大部分应用程序来说,JDK 库本身提供的功能还不够丰富和灵活。HttpClient 是 Apache Jakarta Common 下的子项目,用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议原创 2021-04-16 17:22:45 · 8024 阅读 · 4 评论 -
springboot整合JWT实现登录认证
什么是JWTJson web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该token也可直接被用于认证,也可被加密。JWT的结构Header(头):包含令牌的类型与使用的签名算法,它会使用Base64原创 2021-04-30 16:05:59 · 896 阅读 · 0 评论 -
springboot+vue+webSocket实现在线聊天
前端vue代码<template> <div> <el-row :gutter="20"> <el-col :span="12" :offset="6"> <div class="main"> <el-row> <el-input原创 2021-04-26 12:44:10 · 1586 阅读 · 5 评论 -
layui的使用
layui一、概述1.下载https://www.layui.com/2.下载文件说明css 样式font:字体image:图片lay:|–models|–layui.all.js 包含了所有模块的jslayui.js 框架 如果要使用必须使用layui.use([“table”,“layer”,“laydate”,“form”],function(){})二、学习的内容1.图标2.按钮3.导航菜单4.选项卡5.进度条6.面板+布局7.徽章8.时间线9.原创 2021-04-08 16:43:02 · 2215 阅读 · 0 评论 -
Docker入门
1、引言1.1 Docker 是什么Docker 最初是 dotCloud 公司创始人 Solomon Hykes 在法国期间发起的一个公司内部项目,于 2013 年 3 月以 Apache 2.0 授权协议开源,主要项目代码在 GitHub 上进行维护。Docker 使用 Google 公司推出的 Go 语言 进行开发实现。docker 是 linux 容器的一种封装,提供简单易用的容器使用接口。它是最流行的 Linux 容器解决方案。docker 的接口相当简单,用户可以方便的创建、销毁容器。原创 2021-04-06 10:26:35 · 85 阅读 · 0 评论 -
校验注解-- @NotNull、@NotEmpty、@NotBlank
实体字段校验 @NotNull、@NotEmpty、@NotBlank1.@NotNull:不能为 null,但可以为 empty,一般用在 Integer 类型的基本数据类型的非空校验上,而且被其标注的字段可以使用 @size、@Max、@Min 对字段数值进行大小的控制2.@NotEmpty: 不能为 null,且长度必须大于 0,一般用在集合类上或者数组上3.@NotBlank:只能作用在接收的 String 类型上,注意是只能,不能为 null,而且调用 trim() 后,长度必须大于 0即:原创 2021-03-16 13:13:11 · 6174 阅读 · 0 评论 -
下载,安装,配置Node.js
前言:作者最近也准备学习一些热门的前端技术,以前都是JQ一把梭(作者是前端菜鸟ε=(´ο`*)))唉)。随着后面接触到了Angular、Vue等项目,作者动起手来很吃力,这几天开始学习VueJS。特地写几篇文章记录一下学习心得,如有写的不对的地方,还请各位指正。一、NodeJS下载1.下载NodeJS安装包下载地址: https://nodejs.org/en/download/如何下载NodeJS安装包2.开始安装打开安装包后,一直Next即可。当然,建议还是修改一下安装位置,NodeJS默原创 2021-03-14 20:06:43 · 526 阅读 · 0 评论 -
Java面试-多线程并发(JUC并发编程包)
1.并发,并行,串行的解释并发:一个CPU执行多个任务,但是会发生上下文切换,让我们看到的好像同时执行,但实际上不是同时执行,就好比一台咖啡机对应两个队列并行:多个CPU执行多个任务,这才是真正意义上的同时执行,就好比两台咖啡机对应两个队列串行:按照顺序执行,好比一台咖啡机对应一个队列2.什么是多线程,优缺点是什么多线程就是指代一个程序中含有多个执行流,运行程序可以让不同的线程执行不同的任务好处:可以提高CPU的利用率,因为加入一个线程进入了阻塞状态,CPU不会去等待,而是会进行执行其他的线程,原创 2021-03-05 22:56:58 · 297 阅读 · 1 评论 -
JUC集合安全-Set
Set线程安全的和List一样*/public class Set_Security {public static void main(String[] args) {//Set set = new HashSet<>();//Set set = Collections.synchronizedSet(new HashSet<>());Set set = new CopyOnWriteArraySet<>();for (int i = 0; i < .原创 2020-11-18 00:24:22 · 145 阅读 · 1 评论 -
Java面试题-Java基础
1. JDK,JRE,JVM的区别2.Java语言的特点3.什么是跨平台性,原理是什么4.什么是字节码,采用字节码的好处是什么5.Java数据类型(8大基本数据类型,引用数据类型)6.switch都能作用在什么上7.最有效的方法计算2乘以88.Math.round(11.5) (-11.5)9.float f = 3.4是否正确,为啥10.short s1 = 1;s1 = s1+111.s1 += 112.Java语言用什么编码方式,有什么特点13.访问修饰符4种14.&am原创 2021-01-14 00:15:46 · 204 阅读 · 0 评论 -
redis客户端Jedis和Luttuce的区别,并使用springboot整合
Lettuce 和 Jedis 的定位都是Redis的client,所以他们当然可以直接连接redis server。也就是说这两种都可以是redis的客户端.JedisJedis在实现上是直接连接的redis server,如果在多线程环境下是非线程安全的,这个时候只有使用连接池,为每个Jedis实例增加物理连接LettuceLettuce的连接是基于Netty的,连接实例(StatefulRedisConnection)可以在多个线程间并发访问,应为StatefulRedisConnection原创 2021-01-12 22:20:12 · 1211 阅读 · 0 评论 -
token是什么
对于初学者来说,对Token和Session的使用难免会限于困境,开发过程中知道有这个东西,但却不知道为什么要用他?更不知道其原理,今天我就带大家一起分析分析这东西。一、我们先解释一下他的含义:1、Token的引入:Token是在客户端频繁向服务端请求数据,服务端频繁的去数据库查询用户名和密码并进行对比,判断用户名和密码正确与否,并作出相应提示,在这样的背景下,Token便应运而生。2、Token的定义:Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成一原创 2020-12-14 16:52:42 · 450 阅读 · 1 评论 -
为什么i++不是原子性操作
为啥i++并不是原子性操作在编写多线程程序时,对于不是原子操作的,需要引起程序员的额外注意。一定要确保其对数据的操作是同步的,否则会引发数据安全问题。i++不是原子操作先来看一个例子,多线程下出现的数据不一致问题。public class Test { static int i = 0; public static void main(String[] args) { for (int j = 0; j < 100; j++) { new Thread(() -> {原创 2020-11-30 21:00:35 · 1625 阅读 · 1 评论 -
ArrayList 面试10连问
**【集合】ArrayList 10连问**List list = new ArrayList();1问:当我们new了一个ArrayList,底层new了一个什么?new了一个数组2问:什么类型的数组?object[]3问 : 数组的长度是多大?10 ;数组长度默认是空, add 以后 底层创建了长度是10的Object[]数组4问:数组的长度是10,我现在要放25, 为什么没有报【数组下标越界异常】 , 容量不够,有扩容机制5问:扩容为原来的1.5倍, ArrayList每次扩容为原值的原创 2020-11-30 11:30:43 · 1494 阅读 · 11 评论 -
颠覆认知单例模式详解+代码实现
1.何为单例模式单例模式,是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中,应用该模式的类一个类只有一个实例。即一个类只有一个对象实例。单例模式的实现-饿汉式(线程安全)public class Singleton{ private Singleton(){} private static Singleton instance = new Singleton(); public static Singleton getInstance(){原创 2020-11-28 16:04:29 · 139 阅读 · 1 评论 -
ssm整合所需依赖(全)pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersi.原创 2020-11-28 10:27:48 · 2661 阅读 · 1 评论 -
IDEA Cannot resolve plugin org.apache.maven.plugins:maven-site-plugin:3.8.2-plugin爆红错误
如果确认本地库存在,maven仓库配置正确,将其显式声明出来,问题解决 <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-site-plugin</artifactId> <version>3.8.2</version> </原创 2020-11-28 10:26:10 · 925 阅读 · 0 评论 -
json乱码问题解决
方法一:通过@RequestMaping的produces属性来实现,修改下代码//produces:指定响应体返回类型和编码@RequestMapping(value = “/xxx”,produces = “application/json;charset=utf-8”)方法二:乱码统一解决上一种方法比较麻烦,如果项目中有许多请求则每一个都要添加,可以通过Spring配置统一指定,这样就不用每次都去处理了!我们可以在springmvc的配置文件上添加一段消息StringHttpMessag原创 2020-11-28 10:23:10 · 937 阅读 · 0 评论 -
数组小练习
数组练习题1.使用冒泡排序,实现如下的数组从小到大排序。int[] arr = new int[]{34,5,22,-98,6,-76,0,-3};*2. 如何反转上面的数组。请代码实现复制上述数组,得到一个新的数组使用线性查找,从上述数组中查找22是否存在。存在,返回所在位置的索引。不存在,输出提示信息。数组中常见的异常有哪些?请举例说明 数组越界异常,空指针异常, public static void main(String[] args){原创 2020-11-28 10:18:59 · 176 阅读 · 0 评论 -
Java8新特性-来看看吧
Java8新特性主要内容Lambda表达式StreamAPIOptional学习目标 能够理解函数式编程相对于面向对象的优点 能够掌握Lambda表达式的标准格式 能够使用Lambda标准格式 能够掌握Lambda表达式的省略格式与规则 能够通过Lambda使用自定义的接口(有且仅有一个抽象方法) 能够使用@FunctionalInterface注解 能够使用Supplier函数式接口 能够使用Consumer函数式接口 能够使用Function函数式接口 能够使用Pre原创 2020-11-26 17:09:19 · 121 阅读 · 2 评论 -
网络编程-有这些就够了
网络编程网络编程15.1 软件结构C/S结构 :全称为Client/Server结构,是指客户端和服务器结构。常见程序有QQ、红蜘蛛、飞秋等软件。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WA7VFqkm-1606380284291)(imgs/1_cs.jpg)]B/S结构 :全称为Browser/Server结构,是指浏览器和服务器结构。常见浏览器有IE、谷歌、火狐等。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-evG原创 2020-11-26 16:46:45 · 273 阅读 · 1 评论 -
基础API与常见算法
基础API与常见算法学习目标 了解数学相关API 了解日期时间API 了解系统类API 掌握数组基础算法 掌握数组工具类的使用 熟练掌握String类的API 熟练掌握StringBuilder和StringBuffer类的API 能够处理字符串相关的算法处理第十章 基础API与常见算法10.1 和数学相关的类10.1.1 java.lang.Mathjava.lang.Math 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。类似这样的工具类,其所有方法原创 2020-11-26 16:41:31 · 446 阅读 · 0 评论 -
spring入门到精通-看这个就够了
1. 简介spring理念:是现有的技术更加容易使用,本身是一个大杂烩。SSH:Struct2 + Spring + HibernateSSM: SpringMVC + Spring + Mybatis官网: https://spring.io/projects/spring-framework#overview官方下载: https://repo.spring.io/release/org/springframework/spring/GitHub: https://github.com/原创 2020-11-22 21:50:56 · 228 阅读 · 0 评论