自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 不笑你来打我!哈哈哈《来自程序员的搞笑人生》

1今天,遇到了多年前的老同学。➤我问他:“现在在做什么?”➤他嘿嘿一笑:“就是在搞‘啪啪啪’那种!”➤我一听,淫笑道:“难道是牛郎,不简单啊你!”➤他摇头道:“不是牛郎,是要打码的那种!”➤我惊讶道:“打码?马赛克?哇靠,你该不会在当AV男优吧?”➤他苦笑道:“你脑子里想的都是什么啊!啪啪啪,打码,就是敲键盘啊,我是一名光荣的程序员!”➤“靠!程序猿就程序猿嘛,说得那么玄乎,害我浮想联翩!”2小王是个程序员,而且是个工作狂,一码起程序来就把女友都给忘了。➤女友很生气,有一天,趁他睡觉,

2021-03-26 17:53:53 476 1

原创 今天不讲课!今天聊聊Jave行业的现状吧

在十几年前,零几年的时候,IT行业的技术人才是稀缺的,程序员最初的招聘行情,只要你会敲“holle world”、会点技术,能做出点东西,就能入职月薪过万的大厂岗位。而到了今年2020年,近几年来初级人才已经不稀缺了。这十几年间,每年都有学校和培训机构,培养的很多科班生、转行者涌入到IT行业。现在的一个公司想招一个初级招聘岗位,可以从几十上百份简历中来选。现在的IT行业已经不缺IT初级人才了,“IT初级人才招聘市场上”除了每年新入行的人,还有几年内、大几年内入行后技术没有进步的人,这些人被辞退、或跳槽找工作

2021-03-20 17:42:26 306 2

原创 哈哈!没想到吧!Java也可以 实现微信和支付宝支付功能(附代码)

一、前期准备1、申请好微信商户号appid,拿到商户id和商户秘钥,退款的话需要商户证书2、申请好支付宝商户号appid,商户公钥和秘钥(需要用支付宝工具自己生成),支付宝退款不需要证书二、数据库表设计1、微信支付配置表CREATE TABLE `py_wx_config` ( `wx_config_id` varchar(18) NOT NULL COMMENT '微信支付配置ID', `appid` varchar(128) DEFAULT NULL COMMENT '微信公众号ID',

2021-03-18 16:11:46 4019

原创 解决IDEA占用C盘空间过大的问题

这篇文章主要介绍了解决IDEA占用C盘空间过大的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧笔者最近的C盘空间吃紧,开始亮红色警告了。使用SpaceSniffer进行磁盘空间占用分析,发现IDEA不同版本占用空间达到10G之多。这个软件长这样(截止截图时idea工厂设置目录已经被迁移走了,因为他会不停监视磁盘空间变换,所以看不到IDEA工程设置目录了。)后来在网上找到一篇文章,找到IDEA安装目录,修改idea.properties设置如下idea.config.path=

2021-03-16 15:56:33 5190

原创 史上最搞笑的程序员段子,有图有真相!

程序员干的工作很枯燥,他们也需要娱乐来冲淡一下乏味的代码世界提提神,其实他们也很幽默,很风趣的。作为高收入人群程序员总是顶着无可厚非的压力。让人感觉程序员一般都是比较文文静静,老实巴交、带个眼镜、有个地中海发型的闷骚男。其实程序员也会有幽默的一面。1.跟老板谈条件的时候2.程序员被误会,这也太冲动了吧3.加班的时候4.程序员离职时项目交接的场景5.当程序员小有成就最新2021整理收集的一些高频面试题(都整理成文档),有很多干货,包含mysql,netty,spring,线程,sprin

2021-03-13 19:47:38 1227 2

原创 SpringMVC 上传文件 MultipartFile 转为 File的方法

在使用 SpringMVC 上传文件时,接收到的文件格式为 MultipartFile,但是在很多场景下使用都需要File格式的文件,记录下以便日后使用。以下mFile为MultipartFile文件此方法会在本地产生临时文件,使用完毕需要删除在网上搜索未发现可直接使用的不产生临时文件的方法,查到几个本地测试皆无法通过,如哪位有不产生临时文件的方法,请多多指教????MultipartFile 转为 FileFile file = new File(mFile.getOriginalFilenam

2021-03-31 20:50:45 564 1

原创 Java.mail实现发送邮件

前提条件:需要对邮箱做出设置,开启 :POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV等服务一方面是接收这些代理服务器发送的邮件另一方面就是让邮箱接受这些邮件协议的代理在登录的时候,就是用户名和授权码,进行登录获取授权码的过程:直接百度搜索就有结果,这里不再赘述demo这里需要引入javax.mail jar包package test; ///** // * // * @author jingxl0327 // * @Description 邮件发送测

2021-03-31 19:10:37 191

原创 JavaWeb工程web.xml基本配置过程解析

一.理论准备先说下我记得xml规则,必须有且只有一个根节点,大小写敏感,标签不嵌套,必须配对。web.xml是不是必须的呢?不是的,只要你不用到里面的配置信息就好了,不过在大型web工程下使用该文件是很方便的,若是没有也会很复杂。那么web.xml能做的所有事情都有那些?其实,web.xml的模式(Schema)文件中定义了多少种标签元素,web.xml中就可以出现它的模式文件所定义的标签元素,它就能拥有定义出来的那些功能。web.xml的模式文件是由Sun公司定义的,每个web.xml文件的根元素中

2021-03-31 17:39:37 271

原创 Java抽象类和接口定义与用法详解

抽象类抽象类定义只约定类所具有的抽象行为,没有具体实现相应行为。语法格式abstract class 类名{ 常量; 变量; 构造(); 访问修饰符abstract 返回类型 方法名;//抽象方法 普通方法; 静态方法();}应用场景1.不适合创建对象。2.有些功能没有必要实现,有不同的子类实现。3.每次使用的都是子类的对象。4.为所有的子类提供了一个模板,所有的子类都是在此模板的基础之上添加和修改完善功能而创建出来的。注意事项1.不能创建对象。2.必须由子类继承使用

2021-03-31 16:48:56 798

原创 Java访问权限原理与用法详解

构造者模式思想进行初始化,解决了多个构造器重载,构造器参数过多记不住的情况。package day7;//声明一个程序包class Employee{ private String name; private int no; private int age; private String sex; private String address; //alt + shift + s public int getNo() { return no; }/*

2021-03-31 16:02:11 225

原创 SpringBoot通过RedisTemplate执行Lua脚本的方法步骤

lua 脚本Redis 中使用 lua 脚本,我们需要注意的是,从 Redis 2.6.0后才支持 lua 脚本的执行。使用 lua 脚本的好处:原子操作:lua脚本是作为一个整体执行的,所以中间不会被其他命令插入。减少网络开销:可以将多个请求通过脚本的形式一次发送,减少网络时延。复用性:lua脚本可以常驻在redis内存中,所以在使用的时候,可以直接拿来复用,也减少了代码量。1.RedisScript首先你得引入spring-boot-starter-data-redis依赖,其次把lua脚

2021-03-30 21:09:34 1129

原创 Spring FactoriesLoader机制实例详解

一、SpringFactoriesLoader 介绍1.1 SpringFactoriesLoader 简介SpringFactoriesLoader 工厂加载机制是 Spring 内部提供的一个约定俗成的加载方式,与 java spi 类似,只需要在模块的 META-INF/spring.factories 文件中,以 Properties 类型(即 key-value 形式)配置,就可以将相应的实现类注入 Spirng 容器中。Properties 类型格式:key:是全限定名(抽象类|接口)

2021-03-30 20:40:14 378

原创 Java基于二分搜索树、链表的实现的集合Set复杂度分析实例详解

本文实例讲述了Java基于二分搜索树、链表的实现的集合Set复杂度分析。分享给大家供大家参考,具体如下:两种集合类的复杂度分析在Java底层基于二叉搜索树实现集合和映射 和Java底层基于链表实现集合和映射中以二分搜索树和链表作为底层实现了集合Set,在本节就两种集合类的复杂度分析进行分析:测试内容:Java底层基于二叉搜索树实现集合和映射和Java底层基于链表实现集合和映射中使用的书籍。测试方法:测试两种集合类查找单词所用的时间 //创建一个测试方法 Set<String> set:

2021-03-30 16:29:58 205

原创 说JAVA不行的,你真的懂JAVA吗?

Java该用怎样的姿势入门,我现在好凌乱,书本啃不透;看视频又缺乏实操;学了忘,忘了学。兜兜转转,耗尽了精力,身边也没有人一起学习指导,大家的学习水平也不在一个level,门还没入,濒临放弃的边缘。先给大家打个预防针,想学Java的人非常多,但是走到最后,能学成的人非常少,放弃率非常之高!方法不对,努力白费~为什么你入不了Java的门01意愿不强烈 浅尝辄止盲目跟风学习的人,只是抱着试试的心态,如果能学成就做,学不成就不做。如果每个人随便试一试就能成功了,这份工作也就失去了含金量和高价值,变成了可替

2021-03-30 15:43:49 207 1

原创 Java实现邮件发送详解

java实现邮件发送逻辑并不复杂(不包含附件),只是根据官方调用官方提供的sdk,首先需要引入maven依赖:javax.mail<dependency > <groupId >com.sun.mail</groupId > <artifactId >javax.mail</artifactId > <version >1.6.0</version ></dependency >然后构造发送

2021-03-30 15:15:27 589

原创 Java如何基于poi操作Wold工具类

Apache封装的POI组件对Excel,Wold的操作已经非常的丰富了,在项目上也会经常用到一些POI的基本操作这里就简单的阐述POI操作Wold的基本工具类,代码还是有点粗造的,但是不影响使用。这个类包含了一些对文本进行换行,加粗,倾斜,字体颜色,大小,首行缩进,添加边框等方法。分享给大家学习下:Apache POI的组件:ApachePOI包含用于处理MS-Office的所有OLE2复合文档的类和方法。该API的组件列表如下 -POIFS(不良混淆实现文件系统) - 此组件是所有其他POI

2021-03-29 21:09:10 235

原创 Spring Boot如何通过CORS处理跨域问题

跨域的产生就是因为浏览器的同源策略。它是浏览器的核心安全功能,所谓的同源,就是指域名,协议,还有端口要相同。传统的方案就是JSONP(前端处理方案),但是JSONP有很大的局限性,就是只支持GET请求,所以不能满足我们的需求,而CORS(Cross-origin-resource sharing)跨域资源共享,就可以解决这个问题。他是一个浏览器规范,一个w3c标准,提供web服务从不同网域传来的沙盒脚本的方法,避开了浏览器的同源策略。CORS是后端的一种处理的方案,在Spring中可以配置解决跨域,在Sp

2021-03-29 20:54:38 94

原创 Spring security密码加密实现代码实例

xml配置如下<dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-core</artifactId> <version>3.2.3.RELEASE</version></dependency>BCryptPasswordEncoder相关知识:用户表的密码通常使用MD

2021-03-29 20:27:32 236

原创 Springboot过滤器禁止ip频繁访问功能实现

在开发 Web 项目的时候,经常需要过滤器来处理一些请求,包括字符集转换什么的,记录请求日志什么的等等。在之前的 Web 开发中,我们习惯把过滤器配置到 web.xml 中,但是在 SpringBoot 中,兵没有这个配置文件,该如何操作呢?1.编写一个过滤器:import lombok.extern.slf4j.Slf4j; import javax.servlet.*;import javax.servlet.annotation.WebFilter;import javax.servlet

2021-03-29 16:57:10 1247

原创 Spring boot集成redis lettuce代码实例

spring boot框架中已经集成了redis,在1.x.x的版本时默认使用的jedis客户端,现在是2.x.x版本默认使用的lettuce客户端引入依赖<!-- spring boot redis 缓存引入 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redi

2021-03-29 16:36:00 459

原创 Java synchronize线程安全测试

线程的运行是与当前CPU的资源调度与时间片是有关系的,当一个线程中的执行到某一部分方法的时候轮到另外一个线程来执行相应的代码,所以还没有等到第一个线程执行完那么CPU有切换到另外一个线程来运行其相应的代码,所以这个时候假如操作公共的数据部分就会出现错误为了解决这个问题,可以使用 synchronized 同步代码块来对公共部分进行同步操作在用synchronize关键字修饰同步代码块时,运行代码发现不能交替卖票。 以下是初始代码package com.itheima.Test;public cla

2021-03-29 15:40:16 106

原创 Java异常处理原理与用法实例分析

本文实例讲述了Java异常处理原理与用法。分享给大家供大家参考,具体如下:本文内容:异常的介绍处理异常断言首发日期:2018-03-26异常:异常是程序运行中发生的错误,比较常见的比如“除零异常”,如果一个除数为零,那么会发生这个异常异常会影响程序的正常运行,所以我们需要处理异常。所有的异常类是从 java.lang.Exception 类继承的子类。 异常类有两个主要的子类:IOException 类和 RuntimeException 类。常见异常:算术

2021-03-28 21:39:30 111

原创 Spring注解驱动之AOP功能测试

前言Spring的AOP指的是在程序运行期间动态的将某段代码切入到指定方法指定位置进行运行的编程方式【动态代理】。AOP功能测试①导入AOP模块 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aspects</artifactId> <version>4.3.12.RELEASE</ve

2021-03-28 19:28:04 209

原创 Java面向对象程序设计:类的定义,静态变量,成员变量,构造函数,封装与私有,this概念与用法详解

本文实例讲述了Java面向对象程序设计:类的定义,静态变量,成员变量,构造函数,封装与私有,this概念与用法。分享给大家供大家参考,具体如下:本文内容什么是面对对象类的定义与对象实例化成员变量成员变量的有效范围成员变量的赋值静态变量、方法与实例变量、方法构造函数封装与私有this关键字什么是面对对象面向对象强调行为处于对象之中,并不直接执行行为,而是通过对象执行行为类是对象的抽象,对象是类的具体实例。 【可以说,人是一个类,而不同身份的你我他是一个具体实例。人这个类

2021-03-28 17:12:36 585

原创 Java并发工具辅助类代码实例

java中的并发工具类一:等待多线程完成的CountDownLatchCountDownLatch允许一个或多个线程等待其他线程完成操作。packag``.fuzhulei;import java.util.concurrent.*;​/** * 减法计数器,主要是countDown(计数器1) 和 await(阻塞)方法,只有当计数器减为0的时候,当前线程才可以往下继续执行。 * 主要用于允许一个或多个线程等待其他线程完成操作 * @author Huxudong * @createT

2021-03-28 16:32:08 118

原创 这可能就是程序员最大的“悲哀”了吧

工作以后,会发现很多时候现实都和当初所预设的截然不同。有些人妥协了,有些人还在战斗。前几天,饭桌上聊到这样一个话题:程序员最大的悲哀是什么。1、心里想着BAT,却被拒绝在基础算法面试前2、时隔1个月后,才发现自己的代码里有Bug,全部门却没有别人发现问题3、写完一份无懈可击的代码以后,需求却改了4、IT圈存在一些鄙视链:比如php < 一切其他开发语言;有对象的 > 没有对象的5、看3年前写的代码,发现现在的水平和3年前的一样6、以为自己可以改变世界,却发现自己连自己也改变不

2021-03-28 16:04:16 153 3

原创 “精品”JAVA完美之作扫雷完整版

ava类库中提供了用于GUI的swing开发工具包,我们可以利用swing设计出一些简单的经典小游戏,如扫雷,推箱子,俄罗斯方块等.接下来我就简单分享一下用Java设计扫雷游戏的思路与过程.首先,我们要设计出扫雷的窗口界面,说白了,也就是在窗口上绘制出指定行数和列数的小方格.要在窗体上绘制方格,我们需要一个JPanel面板,所以我们定义类GamePanel让它继承自JPanel,然后我们在就可以这个类上绘制我们所要的信息了.然后,在类中,我们定义一些基本的变量,如行数,列数,雷的数量等等,方便后面使用i

2021-03-27 22:21:04 293

原创 Spring ProtocolResolver策略接口示例

ProtocolResolver是一个策略接口,可以用于自定义协议解析, 比如spring就有一个 “classpath:”开头的特定协议(但是spring并不是自定义ProtocolResolver 实现来完成这个功能的)@FunctionalInterfacepublic interface ProtocolResolver { @Nullable Resource resolve(String location, ResourceLoader resourceLoader);}@Fun

2021-03-27 21:19:35 362

原创 IDEA项目使用SpringBoot+MyBatis-Plus的方法

步骤如下:1.打开IDEA2.File—>new—> project3.选择spring initializr—>Next4.填写Grouphe和Artifact选择Java version: 8 点击next如图:5.选择对应的依赖,点击Next6.核对项目的名字是否一致,点击finish后就完成了工程的创建。7.接下来就是pom文件的依赖包引入了(很重要!!!)<dependency> <groupId>org.spring

2021-03-27 17:00:17 478

原创 IDEA+Maven搭建Spring环境的详细教程

1. Spring简介Spring是一个轻量级控制反转(IoC)和面向切面(AOP)的容器框架。2. Spring的优势1.方便解耦, 简化开发: 通过Spring提供的IOC容器, 可以将对象间的依赖关系交由Spring进行控制, 避免硬编码所造成的过度耦合。2.AOP编程的支持: 通过AOP功能方便进行面向切面编程, 许多不容易用传统OOP实现的功能可以通过AOP轻松实现。3.声明式事物编程: 通过声明方式灵活的进行事务管理, 提高开发效率和质量。4.方便程序测试: 可以用非容器依赖的编程方

2021-03-27 16:23:59 1154

原创 免费白嫖!Java高手真经应用框架卷:Java Web核心框架 PDF 超清版

内容介绍Java高手真经:Java Web核心框架(应用框架卷)作者:刘中兵Java研究室 编著【图书简介】本书首先分析了Java Web应用的分层设计方法,并进行应用框架的选型,然后讲解各种Java Web应用框架、集成技术、实战开发。主要内容包括如下。持久层框架Hibernate:讲解Hibernate入门与核心技术,分别实现MySQL、Oracle、SQL Server数据库的信息系统开发。持久层框架iBATIS:讲解iBATIS入门与核心技术,分别实现MySQL、Oracle、SQLServ

2021-03-27 15:19:42 566

原创 快速了解JAVA垃圾回收机制

说到垃圾回收(Garbage Collection,GC),很多人就会自然而然地把它和Java联系起来。在Java中,程序员不需要去关心内存动态分配和垃圾回收的问题,这一切都交给了JVM来处理。顾名思义,垃圾回收就是释放垃圾占用的空间,那么在Java中,什么样的对象会被认定为“垃圾”?那么当一些对象被确定为垃圾之后,采用什么样的策略来进行回收(释放空间)?在目前的商业虚拟机中,有哪些典型的垃圾收集器?下面我们就来逐一探讨这些问题。以下是本文的目录大纲:如果有不正之处,希望谅解和批评指正,不胜感激。一.如

2021-03-26 21:44:37 59

原创 Spring异常捕获且回滚事务解决方案

默认spring只在发生未被捕获的runtimeexcetpion时才回滚。最笨的办法:代码级控制:TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();为何在aop advitor中配置rollba-for=“java.lang.Exception”异常时不回滚呢?问题已解决:原理:spring aop 异常捕获原理:被拦截的方法需显式抛出异常,并不能经任何处理,这样aop代理才能捕获到方法的异常,才能进行回滚,

2021-03-26 21:22:56 494

原创 Java线程状态变换过程代码解析

线程状态NEW:刚创建未启动的线程RUNNABLE:正在执行状态BLOCKED:处于阻塞状态的线程WAITING:正在等待另一个线程执行特定动作的线程TIMED_WAITING:等待另一个线程执行时间到达指定时间TERMINATED:线程退出执行public class TestState { public static void main(String[] args) { Thread thread = new Thread(()->{ for (int i

2021-03-26 21:12:32 108

原创 Springboot接口项目如何使用AOP记录日志

一、 背景一直想给项目构建一个统一的日志收集系统,先迈出第一步,构建一个日志收集类,用AOP实现无侵入日志收集二、 环境1.此随笔内容基于spring boot项目2.数据库为mysql 5.7.9版本3.jdk 版本为1.8三、 说明此版采用数据库存储,之后考虑使用elasticsearch等工具存储四、 内容1、构建日志采集实体类:BaseLogMessagepublic class BaseLogMessage { private String serverIP; priv

2021-03-26 20:58:58 125

原创 Spring中基于xml的AOP的详细步骤

、Aop 全程是Aspect Oriented Programming 即面向切面编程,通过预编译方式和运行期动态代理实现程序功能的同一维护的一种技术。Aop是oop的延续,是软件开发中的 一个热点,也是Spring框架中一个重要的内容。是函数式编程的一个衍生范例,利用Aop可以对业务逻辑各个部分进行分割,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用行,提高了开发效率。简单的说就是把我们程序中的重复代码抽取出来,在需要执行的时候,使用动态代理的技术,在不修改源码的基础上已有的方法进行增强,(使用

2021-03-25 21:41:34 309

原创 如何解决redisTemplate注入为空问题

springboot2.*集成redis时,redis工具类中的redisTemplate注入后总是为空。问题代码还原:1、工具类定义成静态工具类,@Resource注入redisTemplatepublic class RedisCacheUtil { @Resource private static RedisTemplate<String, Object> redisTemplate; /** * 普通缓存获取 * @param key 键 * @re

2021-03-25 20:52:01 7399 2

原创 为什么Java是程序员受欢迎的语言这几个原因你该清楚

Java一直稳居程序员很受欢迎的编程语言的榜首,是企业中使用最广泛的编程语言。同样也是广大有志青年加入程序员行列中,想要学习的一门语言,java语言为什么有如此大的魔力呢?任何一个从事开发的人员,你在问他:想学习编程,学习哪种语言会比较好呢?他的回答肯定是“java语言”。那么为什么会产生这样的结果呢?总结大概有这么几方面的原因:1、 Java有着25年的独立开发史Java是源自一个“Oak”语言,从1995年正式改名为Java,一直运行到今天,已经有25年的发展历史。第一个java开发工具包(j

2021-03-25 20:42:41 869

原创 Jenkins如何使用DockerFile自动部署Java项目

enkins下用DockerFile自动部署Java(SpringBoot)项目,简单自用,勿喷一、Jenkins构建Java(SpringBoot)项目新建-构建一个Maven项目需要提一下,现在新安装的没有这个选项,需要在插件里安装一下 Maven Integrationjava配置,其他配置查看以前文章以上配置即可配置完成二、发布到服务器,DockerFile部署自动构建Publish SSH配置这里在目标服务器上放了个shell命令,我这里的web是做了个Nginx的负载均

2021-03-25 16:51:53 621

原创 JAVA能写大型游戏么?不能?

JAVA能写大型游戏么?答:不能 ,所谓的大型游戏一般都是指端游。必须是C++这没办法C++和java的效率还是有很大差距的。java什么东西基本都能开发,只是java致命的是不能直接操作内存,只能安装虚拟机,这样使java在开发的时候造成很多局限性.但是java提供了本地方法,可以调用c的类库。使得功能进一步提升。又由于java对于垃圾回收机制是自动的,使得游戏在流畅性上有很大的折扣。所以java不适合开发大型游戏(除非自己实现垃圾回收等一些机制),使java能与c相比使。又因为java的初衷就不在

2021-03-25 16:37:15 1047

空空如也

空空如也

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

TA关注的人

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