自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(114)
  • 问答 (5)
  • 收藏
  • 关注

翻译 一个33岁老程序员的感悟

一、在中国你千万不要以为学习技术就可以换来稳定的生活和高的薪水待遇,你更不要认为那些从事市场开发,跑腿的人,没有前途。不清楚你是不是知道,咱们中国有相当大的一部分软件公司,他们的软件开发团队都小的可怜,甚至只有1-3个人,连一个项目小组都算不上,而这样的团队却要承担一个软件公司所有的软件开发任务,在软件上线和开发的关键阶段需要团队的成员没日没夜的加班,还需要为测试出的BUG和不能按时提交的软件模块功能而心怀忐忑,有的时候如果你不幸加入现场开发的团队你则需要背井离乡告别你的女友,进行封闭开发,你平时除了编码之

2021-04-15 20:46:12 833 4

转载 FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换

fastJson对于json格式字符串的解析主要用到了一下三个类:JSON:fastJson的解析器,用于JSON格式字符串与JSON对象及javaBean之间的转换。JSONObject:fastJson提供的json对象。JSONArray:fastJson提供json数组对象。我们可以把JSONObject当成一个Map<String,Object>来看,只是JS...

2019-04-16 23:03:52 491

原创 Cron表达式范例:每隔5秒执行一次:*/5 * * * * ?

Cron表达式范例: 每隔5秒执行一次:*/5 * * * * ? 每隔1分钟执行一次:0 */1 * * * ? 每天23点执行一次:0 0 23 * * ? 每天凌晨1点执行一次:0 0 1 * * ? 每月1号凌晨1点执行一次:0 0 1 1 * ?...

2019-04-16 22:53:34 116699 4

原创 mybatis返回count(*)的整数值

1、mybatis中resultType定义为"java.lang.Integer"<select id="selectNums" resultType="java.lang.Integer"> select count(*) from tableName </select>2、接口中返回值写成int,即可int selectNums();...

2019-04-16 22:47:50 10864

转载 LocalDateTime与String日期转换

DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");LocalDateTime time = LocalDateTime.now();String localTime = df.format(time);LocalDateTime ldt = LocalDateTime.parse("2017-0...

2019-04-16 22:39:26 28547 1

转载 ll command not found 当ll无法识别的解决办法

ll并不是linux下一个基本的命令,它实际上是ls -l的一个别名。Ubuntu默认不支持命令ll,必须用 ls -l,这样使用起来不是很方便。如果要使用此命令,可以作如下修改:打开 ~/.bashrc找到 #alias ll=’ls -l’,去掉前面的#就可以了。(关闭原来的终端才能使命令生效)这样个人用户可以使用ll命令,当切换成超级用户后,使用ll命令时提示找不到命令,那是因为...

2019-04-15 23:16:10 1050

原创 idea控制台全屏

使用ctrl+shift+" 即可全屏。

2019-04-15 23:06:35 1225 2

转载 查看centos版本号

--写在开始--玩Linux,不同的版本会有一些细微区别;so,经常需要查看服务器版本号;--正文--有以下命令可以查看linux服务器版本号:# lsb_release -aLSB Version::base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarchDistributor ID:CentO...

2019-04-15 23:02:42 545

转载 Java中Collections.sort()的用法

Java中Collections.sort()的使用:在日常开发中,很多时候都需要对一些数据进行排序的操作。然而那些数据一般都是放在一个集合中如:Map ,Set ,List 等集合中。他们都提共了一个排序方法 sort(),要对数据排序直接使用这个方法就行,但是要保证集合中的对象是可比较的。怎么让一个对象是 可比较的,那就需要该对象实现 Comparable<T> 接口啦。...

2019-04-15 22:47:52 981

转载 JAVA 8 '::' 关键字

Java 8 中我们可以通过`::` 关键字来访问类的构造方法,对象方法,静态方法。现有一个类 Somethingclass Something { // constructor methods Something() {} Something(String something) { System.out.println(something); ...

2019-04-15 22:47:37 385

转载 DigestUtils.md5Hex()加密

在项目中把commons-codec-1.3jar放进去,对我们想要加密的参数值直接进行加密处理用DigestUtils.md5Hex(),括号中放入我们需要加密的参数即可User user = new User();user.setPassword(DigestUtils.md5Hex(password));这样即对密码进行加密了欢迎关注微信公众号“Java面试达人”,(...

2019-04-15 22:47:19 29503

转载 java Error: 无法访问org.apache.http.annotation.ThreadSafe 找不到org.apache.http.annotation.ThreadSafe的类文件

这几天需要把项目升级,项目用的是springboot,由1.X升级为2.X,这个过程中很是煎熬,各种报错,于是就重新创建新的2.X的项目,然后,再将原来项目的内容迁移过去,但是在这个过程中,出现了一个问题,正如文章标题所写的,有个ThreadSafe找不到。因为项目中依赖了org.apache.http.annotation下的httpclient(v4.5)和core(v4.4.6)。所报的错误...

2019-04-15 22:46:04 909

转载 java之collection总结

Collection来源于Java.util包,是非常实用常用的数据结构!!!!!字面意思就是容器。具体的继承实现关系如下图,先整体有个印象,再依次介绍各个部分的方法,注意事项,以及应用场景。--------------------------------------------------------------------------------------------c...

2019-04-14 16:54:09 809

转载 Guava之RangeMap

在Guava官方API上面可以得知:RangeMap是一种集合类型( collection type),它将不相交、且不为空的Range(key)映射给一个值(Value)。和RangeSet不一样,RangeMap不可以将相邻的区间合并,即使这个区间映射的值是一样的。  和RangeSet一样,实现RangeMap也是一个接口,实现它的也只有两个类,分别为mmutableRangeMap和Tr...

2019-04-14 16:37:08 366

转载 java file.listFiles()按文件名称、日期、大小排序

1:按 文件名称 排序是什么规则呢?windows的命名规则是,特殊字符(标点、符号)> 数字 > 字母顺序 > 汉字拼音。首字规则,首字相同看第二个,依次类推…例如:全是数字的情况,100<200<300 ;111<121<131; 111<112<113;2:按 文件日期 排序是什么规则呢?按 文件日期 排序分两种:(1...

2019-04-14 14:47:53 7796

转载 Java下载文件的几种方式

1.以流的方式下载.public HttpServletResponse download(String path, HttpServletResponse response) { try { // path是指欲下载的文件的路径。 File file = new File(path); // 取得文件名...

2019-04-14 14:08:43 88444 8

转载 Java泛型Class T与Class ?

一.区别单独的T 代表一个类型 ,而Class<T>代表这个类型所对应的类,Class<?>表示类型不确定的类E - Element (在集合中使用,因为集合中存放的是元素) T - Type(Java 类) K - Key(键) V - Value(值) N - Number(数值类型) ? - 表示不确定的java类型举例说明: Set&...

2019-04-14 13:43:26 3000

转载 java字符串转json,json转对象

@RequestMapping(value = "updateInvestorApplyAccountNo", method = RequestMethod.POST)@ResponseBodypublic void updateInvestorApplyAccountNo(HttpServletRequest request,HttpServletResponse response,@R...

2019-04-14 13:31:30 45959

转载 java.lang.NoSuchMethodError: com.google.common.util.concurrent.MoreExecutors

java.lang.NoSuchMethodError: com.google.common.util.concurrent.MoreExecutors新建一个项目后, 方法可以正常执行, 但是在原来的方法中出现问题:最后发现是由于项目中对于jar包Build Path了两次解决方法:找到依赖google-collections的jar包,把依赖关系去掉。喜欢本文的朋...

2019-04-14 13:22:26 3346

转载 Guava报错NoSuchMethodError的解决方法

在使用Guava缓存的时候,系统报错: java.lang.NoSuchMethodError: com.google.common.base.Objects.firstNonNull错误原因就是找不到方法,我使用的是17.0版本的Guava,Google上找到解决办法。这里的原因是因为有冲突的Jar包,具体在这里就是:google-collections.jar,这个文件中的Col...

2019-04-14 00:40:25 729

转载 IDEA 中查看maven项目jar包的依赖关系(详细图解)

Maven 组件界面介绍 如上图标注 1 所示,为常用的 Maven 工具栏,其中最常用的有: 第一个按钮:Reimport All Maven Projects表示根据pom.xml重新载入项目。一般单我们在pom.xml添加了依赖包或是插件的时候,发现标注 4 的依赖区中没有看到最新写的依赖的话,可以尝试点击此按钮进行项目的重新载入。 第六个按钮:Execut...

2019-04-14 00:19:40 29921

原创 Java获取当前系统的年份

方法1,public static String getSysYear() { Calendar date = Calendar.getInstance(); String year = String.valueOf(date.get(Calendar.YEAR)); return year;}方法2,public static S...

2019-04-14 00:09:03 83027 4

转载 解决No qualifying bean of type [com.*.*.dao.InfoDao] found for :错误!

1、问题:启动Tomcat时报错!主要错误代码如下No qualifying bean of type [com.*.*.*.*.*.dao.InfoDao] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependenc...

2019-04-13 23:59:38 9253

转载 mac idea复制文件到桌面

Windows下面的文件是可以直接ctrl+c复制到桌面的,但是MAC下面这样操作是不行的!在MAC下如果使用Command+C的复制方法只能在项目内部进行移动,如果要从项目内部移动到项目外是不会有反应的!只能用鼠标点住然后把文件拖到桌面,贼坑爹有没有。而且依据我们的惯性思维,会想当然的觉得MAC就是不支持用复制快捷键直接从项目内部复制到桌面的,答主也是拖了好多次拖烦了,今天仔细研究了一下,发...

2019-04-13 23:51:54 4234 3

转载 explain分析sql语句执行效率

Explain命令在解决数据库性能上是第一推荐使用命令,大部分的性能问题可以通过此命令来简单的解决,Explain可以用来查看SQL语句的执行效 果,可以帮助选择更好的索引和优化查询语句,写出更好的优化语句。Explain语法:explain select … from … [where …]例如:explain select * from news;输出:+----+--------...

2019-04-11 22:49:08 182

转载 InnoDB特性之 - 两次写

今天我们来介绍InnoDB存储引擎的第二个特性 - 两次写(doublewrite),如果说插入缓冲是为了提高写性能的话,那么两次写是为了提高可靠性,牺牲了一点点写性能。部分写失效想象这么一个场景,当数据库正在从内存向磁盘写一个数据页时,数据库宕机,从而导致这个页只写了部分数据,这就是部分写失效,它会导致数据丢失。这时是无法通过重做日志恢复的,因为重做日志记录的是对页的物理修改,如果页本身已...

2019-04-11 22:43:08 608

转载 MySQL中InnoDB与MyISAM的区别

InnoDB:支持事务处理等不加锁读取支持外键支持行锁不支持FULLTEXT类型的索引不保存表的具体行数,扫描表来计算有多少行DELETE 表时,是一行一行的删除InnoDB 把数据和索引存放在表空间里面跨平台可直接拷贝使用InnoDB中必须包含AUTO_INCREMENT类型字段的索引表格很难被压缩MyISAM:不支持事务,回滚将造成不完全回滚,不具有原子性不支持外...

2019-04-11 22:40:23 86

转载 Mysql索引类型的区别及适用场景

如大家所知道的,Mysql目前主要有以下几种索引类型:FULLTEXT,HASH,BTREE,RTREE。那么,这几种索引有什么功能和性能上的不同呢?FULLTEXT即为全文索引,目前只有MyISAM引擎支持。其可以在CREATE TABLE ,ALTER TABLE ,CREATE INDEX 使用,不过目前只有 CHAR、VARCHAR ,TEXT 列上可以创建全文索引。值得一提的...

2019-04-11 22:31:41 502

转载 使用Mybatis-Generator自动生成Model、Dao、Mapping文件

Mybatis属于半自动ORM,在使用这个框架中,工作量最大的就是书写Mapping的映射文件,由于手动书写很容易出错,我们可以利用Mybatis-Generator来帮我们自动生成文件。1、相关文件关于Mybatis-Generator的下载可以到这个地址:https://github.com/mybatis/generator/releases由于我使用的是Mysql数据库,...

2019-04-11 22:25:32 154

转载 线程池ThreadPoolTaskExecutor使用详解

当我们需要实现并发、异步等操作时,通常都会使用到ThreadPoolTaskExecutor,现对其使用稍作总结。配置ThreadPoolTaskExecutor通常通过XML方式配置,或者通过Executors的工厂方法进行配置。XML方式配置代码如下:<bean id="taskExecutor" class="org.springframework.schedulin...

2019-04-11 22:13:33 17431

转载 使用Postman发送数组

日常开发中常有要向POST/PUT API发送数组参数的需求,使用Postman时可以这样传递数组参数:后台接收喜欢本文的朋友们,欢迎关注微信公众号“Java面试达人”,收看更多精彩内容...

2019-04-05 17:19:21 6058

转载 Postman之POST、GET请求方式(图解)

1.GET请求操作:  2.GET请求操作结果:  3.POST请求操作:  4.POST请求操作结果:喜欢本文的朋友们,欢迎关注微信公众号“Java面试达人”,收看更多精彩内容...

2019-04-05 17:09:51 1611

原创 idea 注册码(激活码)亲测成功

进入网页http://idea.lanyus.com/,点击获取注册码,即可生成。喜欢本文的朋友们,欢迎关注微信公众号“Java面试达人”,收看更多精彩内容...

2019-04-05 17:04:01 8745 5

原创 怎么看idea有效期

首先打开IDEA,选择上面的选项help,然后help->Register…或者help->About 。喜欢本文的朋友们,欢迎关注微信公众号“Java面试达人”,收看更多精彩内容...

2019-04-05 16:53:11 16045

转载 Java可重入锁和不可重入锁

最近正在阅读Java ReentrantLock源码,始终对可重入和不可重入概念理解不透彻,进行学习后记录在这里。基础知识Java多线程的wait()方法和notify()方法这两个方法是成对出现和使用的,要执行这两个方法,有一个前提就是,当前线程必须获其对象的monitor(俗称“锁”),否则会抛出IllegalMonitorStateException异常,所以这两个方法必须在同步块...

2019-03-03 22:45:44 267

转载 架构设计--Java秒杀业务

一、秒杀业务为什么难做IM系统,例如QQ或者微博,每个人都读自己的数据(好友列表、群列表、个人信息)。微博系统,每个人读你关注的人的数据,一个人读多个人的数据。秒杀系统,库存只有一份,所有人会在集中的时间读和写这些数据,多个人读一个数据。例如小米手机每周二的秒杀,可能手机只有1万部,但瞬时进入的流量可能是几百几千万。又例如12306抢票,票是有限的,库存一份,瞬时流量非常多,都读相...

2019-03-03 22:36:30 173

转载 Java高并发解决方案

电商的秒杀和抢购,对我们来说,都不是一个陌生的东西。然而,从技术的角度来说,这对于Web系统是一个巨大的考验。当一个Web系统,在一秒钟内收到数以万计甚至更多请求时,系统的优化和稳定至关重要。这次我们会关注秒杀和抢购的技术实现和优化,同时,从技术层面揭开,为什么我们总是不容易抢到火车票的原因?一、大规模并发带来的挑战在过去的工作中,我曾经面对过5w每秒的高并发秒杀功能,在这个过程中,整个W...

2019-03-03 22:23:50 88404 10

转载 cpu过高问题排查

在服务器报cpu过高时,可使用以下命令,快速导出堆栈信息,以方便查看具体的问题。使用top命令定位异常进程。可以看见12836的CPU和内存占用率都非常高此时可以再执行ps -ef | grep java,查看所有的java进程,在结果中找到进程号为12836的进程,即可查看是哪个应用占用的该进程。 使用top -H -p 进程号查看异常线程 使用printf "%x\n" ...

2019-03-02 13:55:25 1266

转载 算法面试:一亿数据获取前1000个最大值

算法原理:把一亿个数字的前100个首先放入数组。然后把最小值放在ary[0]。然后再循环100到一亿之间的。每次循环判断当前数字是否大于ary[0]当大于时,当前数字放入ary[0]并再次重构数组最小值进入ary[0]以此类推。当循环完这一亿个数字后。最大的前100个数字就出来了。喜欢本文的朋友们,欢迎关注微信公众号“Java面试达人”,收看更多精彩内容也...

2019-03-02 13:30:39 4214 2

转载 一文搞定CMS垃圾收集器与G1收集器

1、CMS收集器CMS收集器是一种以获取最短回收停顿时间为目标的收集器。基于“标记-清除”算法实现,它的运作过程如下:1)初始标记2)并发标记3)重新标记4)并发清除初始标记、从新标记这两个步骤仍然需要“stop the world”,初始标记仅仅只是标记一下GC Roots能直接关联到的对象,熟读很快,并发标记阶段就是进行GC Roots Tracing,而重新标记阶段则是...

2019-03-02 13:26:40 285

空空如也

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

TA关注的人

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