
JAVA
文章平均质量分 55
爆米花机枪手
无知者无畏~
展开
-
spring 使用通用Mapper批量添加数据 java.lang.InstantiationException: tk.mybatis.mapper.provide.SpecialProvider
通用Mapper是一款针对mybatis进行扩展的轻量级组件,使用起来非常方便。当调用其针对mysql进行批量添加数据的方法时,发现报错,仔细研究了一番,发现是在使用通用Mapper上出现了问题。下面贴出本文使用的通用的Mapper github 地址及其版本。通用Mapper github主页:https://github.com/abel533/Mapper/ 本文示例使用的版本是3.5...转载 2019-12-20 09:30:15 · 1110 阅读 · 0 评论 -
2019程序员个人面试随笔
2019程序员个人面试随笔我找工作的时间范围在2019年10月13日至11月22日,此时工作年限四年零七个月。先说几个重点1、简历一定要写好,我整理简历花了两三天的时间,差点吐了,用到的网站有https://github.com/geekcompany/ResumeSamplehttps://github.com/resumejob/awesome-resume2、投简历之前花个三四天...原创 2019-11-25 22:44:59 · 858 阅读 · 0 评论 -
优快云博客迁移至Hexo之Html2Md服务(专为csdn打造)
接着上篇优快云博客迁移至Hexo之同步优快云博文到本地MD文件 此篇介绍下html2md服务,我将上篇遗留的问题—csdn中的代码高亮转换失败的问题修复了下,结果还算满意,自己搭了服务,大家可以试一试,玩一玩,有问题可以私信我~原创 2017-07-23 16:30:21 · 1397 阅读 · 1 评论 -
springboot日志体系---log4j2
最近调试代码和运行代码的时候,一些日志打印的乱七八槽,根据日志很难快速定位到问题,感觉自己是为了打印日志而打印日志,花了点时间把日志的相关整理了一下,意在让日志发挥最大的作用。前言本文解决以下问题: - 为何使用log4j2 - springboot下log4j2日志的使用 - 控制台日志显示的级别和文件保存的日志不同 - idea控制台颜色日志的输出正文log4j2原创 2017-07-02 11:27:47 · 18785 阅读 · 2 评论 -
代码里的“随机应变”
说在前头 有段时间没更新了,期间发生了很多事,这里就不一一赘述,有一个要说一下, 之前我放在github上的springbootquick代码结构我重新整理了一下,因为我觉得branch的方式去完善每个小功能不太直观,索性找个时间全都整理在了一起,方便大家观看 项目地址为https://github.com/vector4wang/spring-boot-quick 里面有些是我工作中用原创 2017-06-04 09:34:39 · 864 阅读 · 0 评论 -
Apache TIKA---抽取多类型文件文本内容和文件的“隐藏信息”
前言有这样一个需求“用户上传一个文件,要得到这个文件的文本内容,和它的创建时间(用户创建的时间)” 乍一看上去,很简单啊,可以按字节读文件或按行读文件,也可以根据文件的类型引入对应的jar包去获取内容。文件的创建时间,我找了一些资料,可以通过下面代码实现原创 2017-05-08 21:46:49 · 2443 阅读 · 0 评论 -
Maven系列(七)assembly打包-程序和依赖jar包分开化
如果对maven不会用甚至不知道是什么的话,建议先看看下面几篇,看完,相信你会有所启发,并会对项目进行一个完整的依赖构建-打包测试-部署发布Maven系列(一)Maven的简介与使用Maven系列(二)无Maven不项目—使用Eclipse快速搭建Maven项目 Maven系列(三)Maven给不同的环境打包 Maven系列(四)Maven热部署 Maven系列(五)CentOS7搭建最新原创 2017-05-25 09:18:49 · 5362 阅读 · 0 评论 -
如何优雅的“编写”api接口文档(续)
接着上一篇如何优雅的“编写”api接口文档 这篇续篇主要说一下以下三点文件上传参数配置单独部署SwaggerUI(实现在一个页面查找不同域名的API功能)完善SwaggerUI的展示内容上传文件接口配置 接着昨天的bug,有一接口需要上传文件,怎样去配置注解,才能让Swagger的页面拥有测试的功能即有文件上传的入口原创 2017-05-05 12:44:09 · 2373 阅读 · 0 评论 -
如何优雅的“编写”api接口文档
使用Swagger来规范并自动化你的API文档原创 2017-05-04 00:05:24 · 22927 阅读 · 0 评论 -
Spark初体验(配置超详细)
一乡二里共三夫子不识四书五经六义竟敢教七八九子十分大胆! 十室九贫 凑得八两七钱六分五毫四厘 尚且三心二意 一等下流前言 这里,不谈spark原理,作用,使用场景等,只是一个spark与java打通的一个过程。看似简单,整整花了哥两天的时间,版本号的坑,服务器的坑等等,头胀的能飘起来~!按照我下面说的环境和步骤去做,保证你99%能一次跑过,因为我是一边写此篇一边在新的虚拟机配置。一切都ok原创 2017-04-14 17:28:36 · 4956 阅读 · 3 评论 -
Spark再体验之springboot整合spark
有说胎记是前世死的方式,偶肚子上有个,于是想,难不成上辈子是被人捅死的,谁那么狠。。。后来遇到个人,在同样的位置也有个类似的,忽然就平衡了。 神回复:也可能你们俩上辈子是很烤串前言 上一篇主要讲的是spark环境的搭建和任务的提交,这一篇是将spark直接部署在springboot搭建的web服务里,一些数据逻辑交给spark去处理,至于原理等我对spark有了更深的理解再来一一讲述!编原创 2017-04-17 22:28:52 · 29249 阅读 · 19 评论 -
Javaer,你必须要了解的ExecutorService
之前做的一个功能里有一个耗时操作:处理数据库里对应的记录,然后将每个处理后的结果做个排序。 恕本人小白,刚开始直接用单线程处理!你敢信?!然后60多万条记录,跑了三分钟才出结果!当时我就震惊了,这尼玛要被“刁”的节奏啊。但我并没有什么好的解决方案,便去咨询老大,然后老大直接丢过来一段代码附带几个字原创 2017-03-30 23:11:39 · 1733 阅读 · 0 评论 -
带有java.util.Date类型的实体类转成json对象
有时项目中会遇到这样的场景:实体类需要转换成json,然后传给前台或者其他项目里,如果实体类里包含java.util.Date类型的属性,转换后,会变成这样(如果没做任何处理) "receiveTime": { "date": 23, "day": 1, "hours":原创 2016-05-23 18:27:52 · 4640 阅读 · 2 评论 -
ActiveMQ的使用与遇到的相关坑(点对点,发布与订阅,resreq)
1、介绍ActiveMQ是Apache出品,最流行的,能力强劲的开源消息总线。ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现,尽管JMS规范出台已经是很久的事情了,但是JMS在当今的J2EE应用中间仍然扮演着特殊的地位。MQ可以是不同应用之间进行沟通的桥梁,支持多种语言和协议编写客户端,如: Java,C,C++,C#,Ruby,原创 2016-06-25 12:07:05 · 11701 阅读 · 1 评论 -
JSP与JS相互传值相关问题
这个问题很久之前就想到了,只不过中间一直在忙就忘掉了,今天在做新系统时,看到了另一种的写法,借此机会,就想把这个问题翻出来,理一理。。。我说的这个传值不是指html标签里的属性或者text,而是一些需要从后台获取值,然后将值传递到js文件中使用,如下面<%@page import="com.value.demo.ObtainValue"%><%@ page language="java" con原创 2015-12-14 23:40:51 · 5987 阅读 · 1 评论 -
Eclipse远程Debug
做web开发的都知道,项目都需要在本地上Debug一下,边测试边找bug。但是有些功能必须要放到真正的服务器上才能运行起来,比如微信支付这一块,今天就是排查微信支付的错误,系统在服务器上有已经跑起来,日志里也米有报错的信息,然而维系支付哪一块就是行不通,于是老大又教了一招---远程调试,当时我一愣,感觉好高大上的样子,但后来发现还是和本地调试一样,只不过是tomcat放到了互联网上。。。废原创 2015-11-18 22:18:04 · 1613 阅读 · 0 评论 -
优快云博客迁移至Hexo之同步优快云博文到本地MD文件
动机 自从我把Github+Hexo的博客“交给”Google之后,每天都有几十位的访客2333,访客少的原因有许多,一个是文章较少,二是百度虫子没有爬到我的页面,就会导致即就算直接搜索博客里面的内容,百度都不会返回我的地址,就这个情况我已经使用百度和谷歌去处理了,至于文章较少的问题,我打算做个博客迁移!原创 2017-07-16 17:40:41 · 3233 阅读 · 8 评论 -
Springboot整合RabbitMQ,良心推荐
昨天把RabbitMQ过了一下,并结合下面博文: http://www.cnblogs.com/boshen-hzb/p/6841982.html, 把MQ最基本的几种用法都实现并测试通过,最最最重要的是,我最近弄了台阿里云的ECS,随即搭了一个MQ服务,大家可以直接checkout代码到本地,什么都不用改,直接运行原创 2017-07-09 22:26:51 · 1303 阅读 · 0 评论 -
Java中高位转低位溢出的计算过程
System.out.println((byte) 129);System.out.println((byte) -129);System.out.println("~b2: " + ~10);结果是:-127127~b2: -11计算机中是以补码进行计算正数的反码补码都是原码,如:10原码: 1010反码: 1010补码:1010负数 -10原码 10000000...原创 2019-09-18 20:43:54 · 812 阅读 · 0 评论 -
Java中对象占用内存大小计算
Java中对象占用内存大小计算可以直接进入正题对象的组成这一节byte与bitbit: 位,比特。 信息的最小单位,二进制数中的一个位数(二进制位),其值为“0”或“1”;byte: 字节。计算机文件大小的基本计算单位;原码:正数本身,负数,正数对应的二进制最高位为1(负);反码:正数本身,负数,符号位不变,其余各位取反;补码:正数本身,负数:反码+10的反码、补码都为零注意...原创 2019-09-18 00:09:40 · 999 阅读 · 0 评论 -
Mybatis中单双引号引发的惨案
#{}与${}的区别#{}是预编译处理,${}是字符串替换Mybatis在处理#{}时,会将sql中的#{}替换为?号, 调用PreparedStatement的set方法来赋值;Mybatis在处理时,就是把{}时,就是把时,就是把{}替换成变量的值。使用#{}可以有效的防止SQL注入,提高系统安全性。再通俗的说,使用${}mybatis会把参数加上双引号,而${} 你给啥,sql语...原创 2019-09-03 23:15:49 · 7375 阅读 · 0 评论 -
面试系列之Integer缓存所引发的惨案(保证看完你就彻底明白)
今天在整理代码的时候发现了一段程序,如下Integer integer1 = 3;Integer integer2 = 3;if (integer1 == integer2) System.out.println("integer1 == integer2");else System.out.println("integer1 != integer2");Integer in...原创 2019-08-28 14:24:44 · 511 阅读 · 0 评论 -
Guava的布隆过滤器
程序世界的算法都要在时间,资源占用甚至正确率等多种因素间进行平衡。同样的问题,所属的量级或场景不同,所用算法也会不同,其中也会涉及很多的trade-off。If there’s one rule in programming, it’s this: there will always be trade-offs.你是否真的存在今天我们就来探讨如何判断一个值是否存在于已有的集合问题。这类问...转载 2019-08-24 19:31:25 · 1534 阅读 · 0 评论 -
Springboot快速教程---Docker搭建与整合Hbase
Hbase简介HBase是Hadoop的生态系统,是建立在Hadoop文件系统(HDFS)之上的分布式、面向列的数据库,通过利用Hadoop的文件系统提供容错能力。如果你需要进行实时读写或者随机访问大规模的数据集的时候,请考虑使用HBase!HBase作为Google Bigtable的开源实现,Google Bigtable利用GFS作为其文件存储系统类似,则HBase利用Hadoop HD...原创 2019-07-20 20:37:23 · 2876 阅读 · 5 评论 -
Springboot快速教程---Docker搭建与整合Kafka
最近在搭建一个简易的基于Flink的实时推荐系统中用到了kafka,就快速的整合了下并记录在此简介什么是KafkaApache Kafka是一个分布式发布 - 订阅消息系统和一个强大的队列,可以处理大量的数据,并使您能够将消息从一个端点传递到另一个端点。 Kafka适合离线和在线消息消费。 Kafka消息保留在磁盘上,并在群集内复制以防止数据丢失。 Kafka构建在ZooKeeper同步服务...原创 2019-07-18 20:17:38 · 737 阅读 · 0 评论 -
《深入理解JVM虚拟机》垃圾回收部分 读书笔记
自动内存管理机制Java内存区域与内存溢出异常运行时数据区域程序计数器“程序计数器(Program Counter Register)是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器”“如果线程正在执行的是一个Java方法,这个计数器记录的是正在执行的虚拟机字节码指令的地址;如果正在执行的是Native方法,这个计数器值则为空(Undefined)“Java虚拟机栈...原创 2019-06-22 10:25:34 · 574 阅读 · 0 评论 -
《Maven实战》 阅读笔记
无Maven不项目,这是我的口号,但是一直没有系统的去看书,前段时间把maven实战过来一遍做了些笔记,方便后面查阅每个项目都有自己的坐标groupIdartifactIdversionpackagingclassifierinstall 安装在本地deploy 打包发布到远端依赖范围范围类型有: 编译、测试、运行 三种classpathcompile,默认...原创 2019-06-16 16:13:10 · 496 阅读 · 2 评论 -
使用docker“一键”启动jd(职位信息)的搜索(es)与统计(Kibana)
jd-search-4-docker三键启动所有服务MySQL+ELK+JD-Search-Api本来是想build成是三个个image,然后使用docker-compose一键启动的,但是做到后来遇到compose容器启动顺序的问题。虽说是按照顺序启动的,但是并不会等你启动完毕后再去启动另外一个容器,官方相关链接:https://docs.docker.com/compose/star...原创 2018-09-28 08:03:31 · 790 阅读 · 0 评论 -
一次排查Java项目内存泄漏的过程
发现问题公司自己维护的服务三四个,有的服务还分多个节点,自己也有几个私人服务器,所以为了能实时知道各个服务器的情况,就使用ServerStatus做了个云探针,功能很简单,能实时的监控每个服务器的内存、cpu、硬盘、流量的使用情况,如下 虽然只有几个指标,但是已经能让我全面的掌握各服务的性能,再搭配chrome插件iChrome,每天打开浏览器就能第一时间看到监控界面, 我始终相信...原创 2018-08-17 15:04:25 · 3399 阅读 · 2 评论 -
用springboot+vw-crawler轻松抓取优快云的文章
使用springboot+vw-crawler轻松抓取优快云的文章有关VW-Cralwer的介绍可以看这里,简单轻便开源的一款Java爬虫框架。下面结合比较流行的框架SpringBoot抓取优快云的数据(有关的Spingboot的使用可以参考这里)配置POM使用Springboot做架构,redis做数据存储,vw-crawler做爬虫模块,最终的pom如下<...原创 2018-07-22 11:19:34 · 1183 阅读 · 0 评论 -
最近和未来要做的事
自己在大学的时候就想把学的一些东西整合在一个项目里,对自己也好对别人也好,能用的直接复制过去用,一是对知识点的总结,二是为了不重复造轮子。但是苦于自己懒,慢慢的就忘掉了,前段时间不知道什么原因,突然想起了这件事,就在平时的业余时间整理了一下放在了Github上原创 2017-06-17 18:05:37 · 1579 阅读 · 0 评论 -
使用生产者消费者解决海量数据的处理与相关优化
最近一直在优化海量数据(几千万)处理这一块。我使用的是java提供的ExecuterPool线程池来实现的,这几天在研究如何使用生产者和消费者模式去解决类似处理数据的问题,下面是思考与实现的过程与思考。原创 2017-08-21 00:50:09 · 1737 阅读 · 0 评论 -
HTML5 WebSocket+Tomcat8实现真●Web版即时聊天室(单人+多人)
之前做了一篇tomcat7的websocket聊天室,这是基于tomcat7和jdk1.7下的,有的项目是在tomcat8下的,这个时候就会有问题,因为8下面不支持那种写法,它是以注解的方式来实现websocket,参照HTML5 WebSocket+Tomcat实现Web版即时聊天室 ,下面就介绍一下如何在8下面实现聊天室,多人加单人! 最重要的是获取每个用户登录的session,这里的sess原创 2015-10-13 13:42:47 · 5401 阅读 · 13 评论 -
HTML5 WebSocket+Tomcat实现真●Web版即时聊天室(单人+多人)
心累,下班回到宿舍,花了一个多小时的时间打开网页。。。真实醉了,对于干IT的人来说,没有网络或者网络卡到爆,真实比割了JJ还难受。首先是LZ的电脑被别人中了木马,是mysql的漏洞,在图书馆连了公共WiFi之后,被别人利用mysql 的漏洞,就中奖了,结果就是电脑多出了一个名为piress的账户具体的原因看这,最简单的办法就是把密码设置的复杂一点,不要是'root'或者'123456'!然后重新装原创 2015-10-11 07:47:28 · 23298 阅读 · 14 评论 -
SpringMVC+Hibernate+Junit4+json基本框架近乎0配置
公司是做APP开发的,需要后台来提供接口,于是乎,这个任务就交给我,经过反复的尝试,学习和参考别人的demo,终于搭出自己还算满意的框架,SpringMVC+Sping3+Hibernate4+Junit4,没有使用Maven。下面一步一步的搭建吧! 首先是选择jar包,我把我用到的jar包上传到了网上,点我下载 我使用的事Eclipse,创建好webDynamic project之后,把lib原创 2015-07-09 21:11:12 · 2113 阅读 · 2 评论 -
Gson的使用
Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。可以将一个 JSON 字符串转成一个 Java 对象,或者反过来。例子:public class test { public static void main(String[] args) { Gson gson = new Gson(); System.out.printl原创 2015-05-25 07:47:59 · 1109 阅读 · 0 评论 -
MySql远程访问无法连接的问题!
公司里服务端的搭建由我来完成,我在我笔记本上把框架搭建起来以后,想在台式机的电脑上运行,蛋疼的是台式机数据库装不上去,我使用的是mysql数据库,之前在学校遇到这样的问题的时候,简单的把注册表删掉,最糟糕的就是重装系统,这次我算是彻底倒霉了,无论怎么都装不上,一气之下,我打算将我的笔记本中的mysql作为远程数据库,然后用台式机访问,公司里用的是局域网,这一点很容易实现! 很快,代码部署上去,数据原创 2015-07-07 19:10:25 · 882 阅读 · 0 评论 -
Git客户端图文详解 如何安装配置GitHub操作流程攻略
这篇文章主要介绍了Git客户端安装配置GitHub操作流程攻略,需要的朋友可以参考下Git介绍分布式 : Git版本控制系统是一个分布式的系统, 是用来保存工程源代码历史状态的命令行工具;保存点 : Git的保存点可以追踪源码中的文件, 并能得到某一个时间点上的整个工程项目额状态; 可以在该保存点将多人提交的源码合并, 也可以会退到某一个保存点上;Git离线操作性 :Git可以离线转载 2015-05-25 13:34:05 · 1023 阅读 · 0 评论 -
使用Eclipse搭建SVN管理SAE应用代码
SAE拥有自己的代码管理页面,但毕竟是个页面,纯文本编辑器!管理起来非常的不方便,我的SAE实名认证之后,在熟悉应用管理页面的时候,发现底部有这样的原来可以使用SVN啊,之前在实习的公司里使用过SVN(一把辛酸泪。。。),话不多说,立即搭建吧!首先要对Eclipse或MyEclipse安装SVN插件,这样的教程网上很多,推荐大家直接“install”,没有网上说的那么慢!安装好插件原创 2015-05-15 08:42:03 · 1748 阅读 · 0 评论 -
eclipse部署web项目至本地的tomcat但在webapps中找不到
一、发现问题在eclipse中新建Dynamic Web Project,配置好本地的tomcat并写好代码后选择Run on Server,但运行后发现在tomcat的安装目录下的webapps并没有出现所建立的工程名字。二、验证很明显项目并没有自动部署到Tomcat的Webapps中而是部署在了别的容器中。在内置浏览器中输入http://localhost:8080/webDemo转载 2015-05-14 12:00:19 · 992 阅读 · 0 评论