自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

java爱好者

分享java干货

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

原创 单例模式详解

一、概述单例模式的定义就是确保某一个类只有一个实例,并且提供一个全局访问点单例模式具有典型的三个特点:只有一个实例。自我实例化。提供全局访问点。常见的单例模式实现方式有五种:饿汉式、懒汉式、双重检测锁式、静态内部类式和枚举单例。而在这五种方式中饿汉式和懒汉式又最为常见,下面就对饿汉式和懒汉式进行详细分析。二、代码剖析1.懒汉式public class Singleton { //2.本类内部创建对象实例 private static Singleton instance = n

2020-06-26 22:48:30 93

转载 一文读懂CSRF攻击与防御

CSRF概念:CSRF跨站点请求伪造(Cross—Site Request Forgery),跟XSS攻击一样,存在巨大的危害性,你可以这样来理解:攻击者盗用了你的身份,以你的名义发送恶意请求,对服务器来说这个请求是完全合法的,但是却完成了攻击者所期望的一个操作,比如以你的名义发送邮件、发消息,盗取你的账号,添加系统管理员,甚至于购买商品、虚拟货币转账等。 如下:其中Web A为存在CSRF漏洞的网站,Web B为攻击者构建的恶意网站,User C为Web A网站的合法用户。CSRF攻击介绍及防御

2020-06-26 18:29:56 142

原创 col-xs , col-sm , col-md , col-lg概念

bootstrap栅栏系统css中的col-xs-、col-sm-、col-md-* 的意义:概念.col-xs- 超小屏幕 手机 (<768px).col-sm- 小屏幕 平板 (≥768px).col-md- 中等屏幕 桌面显示器 (≥992px).col-lg- 大屏幕 大桌面显示器 (≥1200px)说明:1、col-列;2、xs-maxsmall,超小;sm-small,小;md-medium,中等;lg-large,大;3、-*表示占列,即占自动每行row分12列栅格.

2020-05-29 09:24:10 484

原创 git clone curl 18 transfer closed with outstanding read data remaining

原因:目标仓库文件目录太大,curl的postBuffer默认值太小,方案一:设置缓冲区大小git config --global http.postBuffer 524288000 #(单位B:约500M)方案二:设置深度为1 --depth 1git clone --depth=1 http://XXX.git 方案三:使用ssh进行拉取生成本地ssh公钥: ssh-keygen -t rsa -C "XX"一路回车即可;进入指定位置打开公钥文件,打开复制内容粘贴到gitla

2020-05-21 22:06:56 93

原创 Poi读取Excle报错 java.util.zip.ZipException: invalid stored block lengths

系统中需要导出excle模板,excle模板是预设好放在classpath下的(idea中resources目录),程序运行的时候,利用类加载器从classpath读取文件读成BufferedInputStream,然后利用 inputStream 实例化XSSFWorkbook对象代码如下(web环境运行报错):InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream(EXCEL_TEMPLATE);/

2020-05-20 17:14:43 308

原创 ajax实现文件下载

在做ajax调用后台实现文件下载时,出现了后台返回前端正确数据,但前台就是不提示下载框,且没有下载文件$.ajax({ "url" : urlStr + 'exportFile', "method" : "POST", "data" : { "list_str" : json_str }, "cache" : false,}).success(function (data) { if (data.ecode && data.

2020-05-19 13:25:35 712

原创 JDK源码环境搭建

本教程是用idea搭建,jdk源码就在jdk安装路径下的src.zip中,解压即可用。第一步:新建项目打开IDEA,按如下步骤新建一个简单Java项目create new project新建一个简单Java项目点击finish后,项目就创建好了第二步:添加源码将之前解压的src.zip复制到工程目录下第三步:替换JDK关联为了能够备注以及避免修改到其他项目所使用的内...

2020-04-06 21:51:21 721 1

原创 java匿名内部类

匿名内部类是局部内部类的更深入一步。假如只创建某类的一个对象时,就不必将该类进行命名。匿名内部类的前提是存在一个类或者接口,且匿名内部类是写在方法中的。只针对重写一个方法时使用,需要重写多个方法时不建议使用格式:new 类名或接口名(){ 重写方法;}; //注意分号//以上就是内部类的格式,其实这整体就相当于是new出来的一个对象不使用匿名内部类来实...

2020-04-05 11:33:10 75

原创 Spring Boot配置文件

Spring Boot默认为resources的application.properties或者application.yaml,通常项目的一些全局配置都在这里进行配置。1.配置服务端口号XML方式:<server> <port>9000</port></server> YAML方式server: port: 9000 pr...

2020-03-01 17:22:43 60

原创 js定义全局配置文件

var config = (function($){$.testConfig = {contextPath:'http://localhost:8080/test',collection :{ hello: '你好' },maps:[{id:'map1',url:'*********'},{id:'map2',url:'*********'}]}return $;})(...

2020-02-28 17:26:44 220

原创 Spring Boot入门之Hello World

Spring Boot 设计目的是用来简化新Spring 应用的初始搭建以及开发过程。他拥有嵌入的Tomcat,无需部署WAR 文件 , Spring Boot 并不是对Spring 功能上的增强,而是提供了一种快速使用Spring 的方式。可以通过SpringBoot官网 快速构建SpringBoot项目, 自动为你生成启动类以及相关文件等。一、环境准备jdk1.8maven 3.3...

2020-02-28 11:02:16 110

原创 Spring Boot目录

Spring Boot目录入门篇之HelloWorld后续基础知识持续更新中…

2020-02-28 11:00:59 66

原创 poi解析word为html时空指针异常处理

poi操作word后,将生成的word解析为html时报空指针异常,于是跟踪代码发现三处poi的空指针异常处理不严谨的地方。1.package org.apache.poi.xwpf.converter.core包下的XWPFDocumentVisitor类中的getXWPFNum方法原代码:protected XWPFNum getXWPFNum(CTNumPr numPr) { ...

2020-02-26 08:57:27 561 7

原创 防止表单重复提交

防止表单重复提交一个业务真实场景:在执行表单保存的时候,由于网络延迟等原因,点击保存按钮直接刷新页面,浏览器会重复提交表单信息导致数据库插入两条数据,这种情况控制保存按钮不能解决,设置主键约束太过暴力,我们可以利用session防止表单重复提交。1.表单重复提交可能性原因​ 1、由于用户误操作,多次点击表单提交按钮。​ 2、由于网速等原因造成页面卡顿,用户重复刷新提交页面。​ 3、黑...

2020-02-25 11:38:51 125

原创 常用日期和时间API[Java8]

Java 8之前的库对日期和时间的支持并不理想,为了解决这个问题,Java 8引入了一套全新的时间日期API,位于java.time路径下。LocalDateLocalDate类型包含了年月日信息,下面举些LocalDate的使用示例:LocalDate date = LocalDate.of(2018, 4, 20); // 2018-04-20int year = date.get...

2019-08-20 13:12:57 664

原创 java线程池看这一篇就够了

我们都是通过new Thread来创建一个线程,由于线程的创建和销毁都需要消耗一定的CPU资源,所以在高并发下这种创建线程的方式将严重影响代码执行效率。而线程池的作用就是让一个线程执行结束后不马上销毁,继续执行新的任务,这样就节省了不断创建线程和销毁线程的开销。ThreadPoolExecutor创建Java线程池最为核心的类为ThreadPoolExecutor:它提供了四种构造函数来创...

2019-08-17 10:47:01 681

原创 搭建阿里云服务器(linux)javaweb环境

前言该教程是在linux环境(阿里云服务器)搭建一个简易的java web环境,需要安装mysql+jdk+tomcat和配置阿里云服务器,好多小伙伴在阿里云上搭建环境屡试不爽,明明自己安装的环境没啥问题,可项目就是起不来,看了这篇文章以后就会恍然大悟,原来这么简单!jdk的安装1.首先执行以下命令查看可安装的jdk版本:yum -y list java*2.选择自己需要的jdk版本进...

2019-08-14 10:29:41 695

原创 鸿蒙OS仓库连登GitHub榜首,华为鸿蒙手机或将年底上市!

华为宣布鸿蒙“开源”,直接吊足了开发者的胃口。4天前GitHub悄悄出现了一个精选华为鸿蒙操作系统相关资源的仓库,给出了清晰的资源路线图。想体验鸿蒙的同学请随时关注该仓库,争取获得第一时间的体验!华为正式推出全球首个微内核全场景分布式OS“鸿蒙”,并在发布会上宣布鸿蒙OS将开源,直接吊足了开发者的胃口。有意思的是,发布会当天恰巧是华为消费者业务 CEO 余承东 50岁生日。余承东“开源”两...

2019-08-13 14:45:22 3510 2

原创 你不必在朋友圈假装生活

1在一个老同学的婚礼上,失联近10年的熊正加了我的微信,一阵寒暄过后,我们就再也没有聊过天,只是安安静静地躺在彼此的好友列表里。有时候,我在朋友圈里看着熊正精力充沛的样子,好生羡慕。健身打卡、英语打卡、阅读打卡……他将生活安排得满满当当,子弹随时上膛的状态,根本不像一个被生活虐过的职场人。我在埋头写作腰酸背痛的时候,他在健身房里练着腹肌,挥汗如雨;我在批改作业捶胸顿足的时候,他在享受付费知识...

2019-08-13 08:48:34 825 1

原创 想要改变世界的 Rust 语言

一门编程语言就像一个小宇宙,语言中的各种语法概念就像一颗颗星辰。对于初学者来说,看这些语法概念与看星罗棋布时产生的迷惑是相似的。幸亏编程语言是由人类创造的,编程语言的作者可以被找到,编程语言的源码也可以被看到,甚至一些好的编程语言还会为你准备好非常丰富的文档,供你参阅学习。通过这些信息我们可以了解到:一门语言缘何诞生?它想解决什么问题?它遵循什么样的设计哲学?一门好的语言是有内涵哲学的语言,它表...

2019-08-12 16:09:31 1456

原创 Java8之异步编程

异步编程所谓异步其实就是实现一个无需等待被调用函数的返回值而让操作继续运行的方法创建任务并执行任务无参创建 CompletableFuture<String> noArgsFuture = new CompletableFuture<>();复制代码传入相应任务,无返回值runAsync方法可以在后台执行异步计算,但是此时并没有返回值。持有一个Runnable对...

2019-08-12 15:01:55 5598

原创 Java 技术书籍大全

前言本文档目前已收录 277本 Java相关领域经典技术书籍,从初级开发者到资深架构师,涵盖 Java 从业者的各个阶段。涵盖领域:Java入门书籍,Java基础及进阶书籍,框架与中间件,架构设计,设计模式,数学与算法,JVM周边语言,项目管理&领导力&流程,职业素养与个人成长,格局与视野,面试参考书等。入门书籍《明解Java》 - 豆瓣评分 8.5《Java从入门到精...

2019-08-11 20:38:49 4131

原创 多种方法重构if语句

1. 前言项目开发初期阶段if/else语句一般比较简单,然后随着时间的推移和业务量的增加,if/else分之会越来越长。下面对如何重构if/else做出了详细分析。2. 案例研究我们经常遇到涉及很多条件的业务逻辑,并且每个都需要不同的处理,我们以Calculator类作为演示样例。有一个方法,它接受两个数字和一个运算符作为输入项,并根据操作返回相应结果:public int calcul...

2019-08-11 20:37:08 1468

原创 mybatis逆向工程

前言所谓mybatis逆向工程,就是mybatis会根据我们设计好的数据表,自动生成pojo、mapper、mapper.xml以及example类(用于添加条件,相当where语句后面的部分 ),我们在开发的过程操作多个表,一个个去写pojo类就已经够麻烦了。通过mybatis逆向工程可以把基本的配置自动完成,省了许多事,当然自动生成的代码通常与业务相差甚远,我基本用来生成pojo类,也可以都...

2019-08-11 20:36:06 681

原创 8道经典JavaScript面试题解析,你真的掌握JavaScript了吗?

前言JavaScript是前端开发中非常重要的一门语言,浏览器是它主要运行的地方。JavaScript是一个非常有意思的语言,但是他有很多一些概念,大家经常都会忽略。比如说,原型,闭包,原型链,事件循环等等这些概念,很多JS开发人员都研究不多。所以今天,就来和大家看看下面几个问题,看看你是否真的懂JavaScript。八道面试题问题 1: 浏览器的console里会打印出什么?var a ...

2019-08-11 20:29:54 3237

转载 单条更新语句是否需要加事务

单条更新语句是否需要加事务今天工作遇到了一个问题,才发现自己之前记忆的知识是错误的,不是对于事务的理解有问题,而是对于单表更新的场景理解错误,记录下这个知识点单条更新语句不需要加事务public int updateBySerial(Dto dto) { return csRecordService.update(dto);}上面的代码,不需要添加事务,这种被称之为是隐性事务,...

2019-07-19 13:48:57 2751 2

原创 java设计模式之动态代理

前言为了更好的理解代理模式,首先根据生活中实际场景进行模拟,让我们在生活中去体验设计思想的美妙。场景描述“病从口入”这句成语告诉我们注意饮食健康,小六同学想吃苹果,在吃苹果之前需要清洗一下苹果和洗一下手,吃完苹果后,需要洗一下手保持个人卫生;十分钟后。。。小六同学又想吃一个大鸭梨,清洗鸭梨–洗手–吃鸭梨–吃完洗手。代码模拟苹果和鸭梨都属于食物,创建一个食物接口public interf...

2019-07-13 11:54:25 657

原创 linux配置JDK和Tomcat环境

1.配置JDK环境变量命令vi /etc/profile,进入环境变量编辑窗口,ins按键或者i可进行编辑,在下方输入JDK的安装路径 export JAVA_HOME=/usr/jdk1.7.0_80 路径名 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/...

2019-05-09 15:37:12 673

原创 Invalid location of tag问题解决方法

Invalid location of tag (style)原因:style应该写在head里面。Invalid location of tag (script)原因:script应该写到body,head里面。Invalid location of tag (div)原因:这个错误是因为div的标签使用不当,与标签的组合导致浏览器解析出错,需要更换为标签Invalid locati...

2019-05-09 15:00:25 2472

转载 中文乱码在java中URLEncoder.encode方法要调用两次解决

一、场景:1、我在客户端要通过get方式调用服务器端的url,将中文参数做utf-8编码,需要在js中两次的进行编码,服务器端才能用decode方法一次获取。例如:var xing=encodeURIComponent(encodeURIComponent(xing));2、如果我在客户端用java输出汉字作为参数,并且用http协议,也是需要两次才能在服务器端正常的一次decodex...

2019-04-26 14:54:09 1131

原创 Ajax获取url返回的数据

背景: (SSM框架)在前台js脚本中获取url返回的值,获取后台的值有多种方式,例如model和modelview都可以在controller层向指定页面传值,前提是它们都得重定向到指定页面,那么就会出现一个问题:在jsp页面JS的function(){}中想直接获取url返回的值,首先需要在function跳转到url定向的controller层中,controller层在重定向到jsp页面...

2019-04-20 09:57:08 2611

转载 关于proxy

那Java怎么跟代理勾搭上?代理能帮我们做什么?有哪些实践?代理其实在程序语言中来源于设计模式:代理模式------使用代理对象完成用户请求,屏蔽了用户对真实对象的访问。就像租房子:房东拥有房屋,对房子有控制权,可以将使用权转让。我作为租客需要验证房东是不是有房权证啊 具不具备出租资格啊。验证完了之后要定租金 签订合同啊。房东只是想把房子出租出去,不想关注怎么验证,怎么拟合同,太麻烦了,也不专业...

2018-12-15 16:21:00 802

原创 看到中兴我想起了马航

2018,注定是起伏的一年,时间刚刚漫进四月中旬,中美贸易战、英法美对叙利亚。。。世界的每个角落都在发生变化,家国战乱,政治博弈,一个平凡之人只能接受命运,我们也足够幸运,虽谈不上美满幸福,但也享受到衣食行以及部分的“住”。我们希望自己的国家越来越富强,自己的生活越来越美好,当然国家在变得强大的同时也会受到一些阻力。最近米国宣布贸易战,如今又开始对我国的高新技术企业下手,中兴成为了第一个目...

2018-04-18 10:04:02 1079

原创 手把手教你独立完成毕业设计程序!

又到一年毕业季,大多数计算机院校的毕业生需要开发出一个小项目来完成自己的毕业设计。大学没认真学,代码不是很会写(有一定基础),那么毕业设计程序的确很让人头疼,很多人开始通过各种方式来获取毕业设计程序代码(自己懂的)。其实我们花点时间做出所谓毕业设计那种质量的代码来说也不是很困难的,只是潜意识里我们告诉自己不会写,那就真的不再去写了。不妨按照下面的方法试一下,说不定就搞出来了。就已ja...

2018-04-16 19:12:30 6563

原创 function传字符串类型的值

在jsp页面中通过onclick函数来获取某个值,通过function函数中将该值传到后台进行应用。如果是onclick函数获取的值是number类型的可以传到function函数中,如果是字符串类型的话需要&amp;quot来进行修饰。 代码如下:function logList(name){ window.location.href="${ctx}/log/lo...

2018-04-12 17:41:12 2722

原创 老气横秋的年轻人

年轻是什么这是一个很大的话题,没有固定的答案,每个都有年轻的时候,每个人都可以来定义年轻。有人说,年轻是潇洒,可以无所顾忌地挥洒青春;有人说,年轻是幼稚,年轻就是冲动,敢爱敢恨、敢闯敢冲;也有人说,年轻总是期盼早点成熟。年轻如四季之春,充满激情与活力,可现在的年轻人缺少年轻人该有的气息,无精打采,说句话总以一个过来的人口气,好像自己经历了无数的大风大浪。 不知道你们身边是否有这样的人...

2018-03-28 19:56:56 1627

原创 mysql数据库启动不了和忘记密码

用了一段时间的mysql5.7,今天忽然启动不了,登录时密码不对,忙活了两个小时终于解决了这个问题。我显示在cmd中输入net start mysql,启动失败,解决方法:右键我的电脑-&gt;管理-&gt;服务 找到mysql右键启动。mysql -uroot -p 提示错误,登录不上,只能重置密码了net stop mysql 关闭mysql服务器,windows版的mysql好...

2018-03-28 08:27:39 916 1

原创 少一点'意淫',多一份机会

你是否有过这样的经历。小编最近面试了十几家公司,在我求职的过程中,身边的同学会问我一些我求职公司的情况以及其它有关方面,我下面要说的故事不知你是局中人还是局外人。小编在求职过程中加了许多有关招聘的群,群里有各路英雄豪杰,难免在各大群里会看到有和自己一样收到某家公司面试通知的人,这种事情我不止遇到过一次,下面小编就要讲经历了,看看你是不是小编说的那种类型的人。开始啦 小编之前去过某最大...

2018-03-22 10:10:06 1139

原创 怎么看待软件外包公司

如何看待软件外包公司对于刚毕业或打算实习的计算机专业的同学来说,很多同学会见到很多软件外包公司的招聘信息,说起外包公司,我们心里不由疙瘩一下,感觉外包公司学不到东西,工资相对降低,去了简直是浪费青春,掉自己的身价,但又想到现实,自己专业能力不突出,撸码能力一般,双脚踏不近互联网的大门,似乎进入外包公司是走向社会唯一出路。针对大多同学面对的这一痛点,今天小编来给大家来分析一下,了却大家对外包...

2018-03-20 23:18:35 15205 5

原创 Hashmap

Hashmap是java面试中经常被问的问题,其重要性不言而喻。这不禁想起HashMap和Hashtable的比较: 1. HashMap几乎可以等价于Hashtable,除了HashMap是非synchronized的,并可以接受null(HashMap可以接受为null的键值(key)和值(value),而Hashtable则不行)。 2. HashMap是非synchronized,...

2018-03-01 12:09:16 932

空空如也

空空如也

空空如也

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

TA关注的人 TA的粉丝

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