自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

我不是知识的搬运工

不要老是说自己能干什么,而是要想自己想干什么

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

原创 史上最全Postman 使用方法详解

一、Postman背景介绍用户在开发或者调试网络程序或者是网页B/S模式的程序的时候是需要一些方法来跟踪网页请求的,用户可以使用一些网络的监视工具比如著名的Firebug等网页调试工具。今天给大家介绍的这款网页调试工具不仅可以调试简单的css、html、脚本等简单的网页基本信息,它还可以发送几乎所有类型的HTTP请求!Postman在发送网络HTTP请求方面可以说是Chrome插件类产品中的代表...

2018-12-05 14:55:10 2618

原创 最全的SHELL脚本调用JAR项目步骤

近日,工作中,有一个业务,需要在日终时候shell脚本定时调用系统进行数据的同步读取。新建测试类package com.test;public class MyTest { public static void main(String[] args) { System.out.println(args[0]); }}2.项目导出打包3.上传linux服务器[root@auser] rz test.jar[root@auser] lstest.jar4

2020-06-28 19:04:32 1169

原创 Tomcat内存溢出

1.问题描述:项目使用的是tomcat7服务器,服务器一启动,eclipse跑起来就报java.lang.OutOfMemoryError: PermGen space错误。2.解决步骤:只需要在eclipse里面配置才可以。 点击“Run” – “Run Configurations…”,选中Tomcat Server,进入Arguments分页,在VM arguments中加入提升初始分...

2020-03-24 16:55:48 245

原创 tomcat项目分布错误

1.问题描述:因为项目发布操作不规范,服务未停止,直接删除项目,然后重新发布启动,报错。2.问题分析:一个web应用程序注册的JBDC驱动程序[com.mysql.jdbc.Driver],但Web应用程序时停止时未能注销。为了防止内存泄漏,JDBC驱动程序已被强行注册。3.解决办法 : 停止服务,删除项目,重新添加项目,启动服务,发布。...

2020-03-24 16:50:37 179

原创 天猫面试经历

文章目录面试过程一. 技术一面(注重问了基础)二.技术二面(大多是数据库缓存等)三.技术三面(主要是分布式架构)四.HR面总结面试过程一面总体上还是围绕Java基础、JVM、并发编程、数据结构等展开。一面结束后很快安排了二面,相对一面,二面和三面从项目入手多数问的是数据库,缓存,分布式架构等问题且更深入,问题比较刨根问底,更加注重对一些技术细节的理解和把握。比如数据库操作,面试官会详细的问你数...

2020-03-22 16:41:28 542

原创 2020面试要点大全

文章目录2020年随着复工,伴随着裁员,我也离职了。经过了一个月的漫长面试过程。下面主要是面试要点,感觉面试就是按照套路来的,万变不离其宗,掌握这些就没问题。1.Java基础Java常用锁Java反射详解Java提高equals()与hashCode()方法详解HashMap底层实现原理及面试问题集合详解集合类详解和使用场景Java线程的6种状态及切换(透彻讲解)Java线程详...

2020-03-05 17:24:53 2043

转载 MQ那点事(七)---MQ落地,你的设计应用

其实回答这类问题,说白了,起码不求你看过那技术的源码,起码你大概知道那个技术的基本原理,核心组成部分,基本架构构成,然后参照一些开源的技术把一个系统设计出来的思路说一下就好比如说这个消息队列系统,我们来从以下几个角度来考虑一下(1)首先这个mq得支持可伸缩性吧,就是需要的时候快速扩容,就可以增加吞吐量和容量,那怎么搞?设计个分布式的系统呗,参照一下kafka的设计理念,broker ->...

2020-03-05 11:02:04 279

转载 MQ那点事(六)---消息积压在消息队列里怎么办

1.大量消息在mq里积压了几个小时了还没解决场景:几千万条数据在MQ里积压了七八个小时,从下午4点多,积压到了晚上很晚,10点多,11点多。线上故障了,这个时候要不然就是修复consumer的问题,让他恢复消费速度,然后傻傻的等待几个小时消费完毕。这个肯定不行。一个消费者一秒是1000条,一秒3个消费者是3000条,一分钟是18万条,1000多万条。所以如果你积压了几百万到上千万的数据,即使消...

2020-03-05 10:58:47 863

转载 MQ那点事(五)---如何保证消息按顺序执行

1.为什么要保证顺序消息队列中的若干消息如果是对同一个数据进行操作,这些操作具有前后的关系,必须要按前后的顺序执行,否则就会造成数据异常。举例:比如通过mysql binlog进行两个数据库的数据同步,由于对数据库的数据操作是具有顺序性的,如果操作顺序搞反,就会造成不可估量的错误。比如数据库对一条数据依次进行了 插入->更新->删除操作,这个顺序必须是这样,如果在同步过程中,消息的...

2020-03-04 18:09:17 1357

转载 MQ那点事(四)---如何保证消息不丢失

1.mq原则数据不能多,也不能少,不能多是说消息不能重复消费,这个我们上一节已解决;不能少,就是说不能丢失数据。如果mq传递的是非常核心的消息,支撑核心的业务,那么这种场景是一定不能丢失数据的。2.丢失数据场景丢数据一般分为两种,一种是mq把消息丢了,一种就是消费时将消息丢了。下面从rabbitmq和kafka分别说一下,丢失数据的场景,(1)rabbitmqA:生产者弄丢了数据生产者...

2020-03-04 18:04:35 467

转载 MQ那点事(三)---如何保证消息不重复消费

1.幂等性简单来说,幂等性就是一个数据或者一个请求,给你重复来了多次,你得确保对应的数据是不会改变的,不能出错。2.出现重复消费场景(1)首先,比如rabbitmq、rocketmq、kafka,都有可能会出现消息重复消费的问题。因为这个问题通常不是由mq来保证的,而是消费方自己来保证的。(2)举例kafka来说明重复消费问题kafka有一个叫做offset的概念,就是每个消息写进去,都...

2020-03-04 17:53:23 521

转载 MQ那点事(二)---如何保证消息队列的高可用

1.RabbitMQ的高可用RabbitMQ基于主从模式实现高可用。RabbitMQ有三种模式:单机模式,普通集群模式,镜像集群模式。(1)单机模式:单机模式就是demo级别的,生产中不会有人使用。(2)普通集群模式普通集群模式就是在多台机器上启动多个rabbitmq实例,每个机器启动一个。但是创建的queue只会放在一个rabbitmq实例上面,但是其他的实例都同步了这个queue的元...

2020-03-04 17:51:13 125

转载 MQ那点事(一)---消息队列的用途、优缺点、技术选型

1.为什么使用消息队列?(1)解耦:可以在多个系统之间进行解耦,将原本通过网络之间的调用的方式改为使用MQ进行消息的异步通讯,只要该操作不是需要同步的,就可以改为使用MQ进行不同系统之间的联系,这样项目之间不会存在耦合,系统之间不会产生太大的影响,就算一个系统挂了,也只是消息挤压在MQ里面没人进行消费而已,不会对其他的系统产生影响。(2)异步:加入一个操作设计到好几个步骤,这些步骤之间不需...

2020-03-04 17:46:16 325

原创 史上最全---------程序员在面试中介绍项目经验

面试时7份靠能力,3份靠技能。而刚开始时的介绍项目又是技能中的重中之重,所以下面将从“介绍”和“引导”两大层面告诉大家如何准备面试时的项目介绍。1.面试前项目描述准备面试官是人,不是神,拿到你的简历的时候,是没法核实你的项目细节的。更何况,你做的项目是以月为单位算的,而面试官最多用30分钟来从你的简历上了解你的项目经验,所以你对项目的熟悉程度要远远超过面试官。既然面试官无法了解你的底细...

2020-03-04 17:21:20 912

原创 Java面试之项目介绍

1.请描述下你做的项目:XXX系统是什么什么,主要目的是XXX,整个系统包含了哪些功能模块,然后说包含了哪些模块,自己做了哪些模块。2.结合项目谈谈你对MVC的理解MVC是model-view-controler的简称。也就是模型-视图-控制器。mvc是一种设计模式,他强制性的把应用程序的输入、处理和输出分开。mvc中的模型、视图、控制器分别担任着不同的任务。视图:视图是用户看到并与之交互...

2020-03-04 17:04:46 9303

原创 Java 对象和类

本章重点研究对象和类的概念。对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。类:类是一个模板,它描述一类对象的行为和状态。例如:男孩(boy)、女孩(girl)为类(class),而具体的每个人为该类的对象(object)。1.Java类:1.1变量局部变量:在方法、构造方法或者语句块中定义的...

2019-12-20 16:12:13 99

原创 史上最全的GIT教程:Push出现rejected - non-fast-forward错误

1.错误如下:2.错误原因分析文件冲突,本地的代码和远程Repository中的文件个数不一致(即远程Repository中存在本地项目中不存在的文件)或本地得项目不是在远程Repository代码的基础上修改的经过检查,本次错误原因:发现是在建立Repository时,添加了ReadMe.md文件,导致和本地得项目分支不一致。3.解决方案(1)每次本地修改代码前先从git仓库pull...

2019-12-18 14:43:10 5647

原创 JVM启动失败,内存不足

1.记一次生产事故。当时突然客服和对接群大量反馈,系统下单失败,然后查看服务器,官网服务器大量IO异常信息2019-12-03 15:50:08,418(1880889806) [INFO ] [catalina-exec-42] -->I/O exception (java.net.ConnectException) caught when processing request: Co...

2019-12-04 11:25:35 1443

原创 Tomcat服务器清除缓存

1.Tomcat中的jsp编译过程当访问某个jsp页面时,tomcat会在work目录里把这个jsp页面转成java文件比如将index. jsp转换成index_ jsp.java文件 ,而后编译为index_ jsp.class文件,最后tomcat容器通过ClassLoader类把这个index_ jsp.class类装载入内存,进行响应客户端的工作。2.缓存原因tomcat会定时扫描...

2019-12-04 10:13:45 1077

原创 全网最细的微信支付错误解决

系统近期频发微信支付失败问题,提示参数错误,于是跟踪定位服务器日志进行处理。1.错误信息:2.解决步骤:(1)系统JSAPI调用微信统一下单接口,发起预付单请求,微信服务器返回错误问题。err_code=PARAM_ERROR, err_code_des=无效的openid, return_msg=OK(2)JSAPI方式在微信浏览器调用微信支付,openID是必填参数。于是初步定位...

2019-11-14 10:12:33 2513

原创 将第三方JAR包反编译,修改后重新编译打包

系统在并发量大的时候,时不时提示ORA-01017: invalid username/password; logon denied错误。然而数据库配置文件都是正确的,所以打算反编译xapool-1.6.beta包,修改源代码,打印出来数据源具体的用户名和密码。具体步骤:(1)首先使用java.decompiler反编译工具,改工具可以反编译单个class文件,还可以反编译整个JAR包。下载改...

2019-11-08 10:33:07 2394

原创 ThreadLocal使用不当异常错误

多线程ThreadLocal使用中异常错误: public abstract class CustomerContextHolder { public final static String SESSION_FACTORY_PORTAL1 = "portal1"; public final static String SESSION_FACTORY_BO1 = "bo1...

2019-11-06 14:11:42 475

转载 史上最全的中高级JAVA工程师-面试题汇总

https://blog.csdn.net/shengqianfeng/article/details/102572691

2019-10-29 17:51:09 164

原创 502bad gateway错误

1.502 badgateway 错误说明502 是报错类型代码 bad getway 错误的网关2.错误原因(1)客户端向服务器发送请求 由于服务器当前链接太多,导致服务器方面无法给于正常的响应,产生此类报错(2)请求端的nginx返回,通常原因是应用所在机房的BGP出口有网络异常3.解决方法①基本刷新:就是点击刷新或者使用F5快捷键基本刷新只是从本地的硬盘重新拿取数据到浏览器,并...

2019-10-28 11:27:43 4311

转载 Web大规模高并发请求和抢购的解决方案

Web大规模高并发请求和抢购的解决方案:https://blog.csdn.net/sun_wangdong/article/details/51137008

2019-10-18 15:24:56 416

转载 MySQL优化技巧

MySQL优化技巧https://blog.csdn.net/u013087513/article/details/77899412

2019-10-18 15:19:01 104

原创 Apache服务器和tomcat服务器区别

1.概述Apache与Tomcat都是Apache开源组织开发的用于处理HTTP服务的项目,两者都是免费的,都可以做为独立的Web服务器运行。Apache是Web服务器而Tomcat是Java应用服务器。2.具体区分Apache服务器 只处理 静态HTML;tomcat服务器 静态HTML 动态 JSP Servlet 都能处理。一般是把 Apache服务器与tomcat服务器 搭配在一起...

2019-10-18 14:16:09 1885

转载 每秒上千订单场景下的分布式锁高并发优化实践

https://blog.csdn.net/u013322876/article/details/84455284

2019-10-18 11:17:59 225

原创 基于Redis的分布式锁实现与分析

1.Redis优缺点 Redis为单进程单线程模式,采用队列模式将并发访问变为串行访问。Redis本身没有锁的概念,Redis对于多个客户端连接并不存在竞争,但是在Jedis客户端对Redis进行并发访问时会发生连接超时、数据转换错误、阻塞、客户端关闭连接等问题,这些问题均是由于客户端连接混乱造成。2.分布式锁介绍单机部署情况下,为了保证一个方法或属性在高并发情况下的同一时间只能被同一个线...

2019-10-17 18:00:47 124

原创 事务的四种隔离级别

数据库事务的隔离级别有4种,由低到高分别为Read uncommitted 、Read committed 、Repeatable read 、Serializable 。而且,在事务的并发操作中可能会出现脏读,不可重复读,幻读。下面通过事例一一阐述它们的概念与联系。(1)Read uncommitted读未提交,顾名思义,就是一个事务可以读取另一个未提交事务的数据。事例:老板要给程序员发工...

2019-10-15 14:10:57 170

转载 Springboot面试大全2019年

1. spring boot基本概念** 随着新功能的增加,spring变得越来越复杂。只需访问页面https://spring.io/projects,我们将看到所有在应用程序中使用的不同功能的spring项目。如果必须启动一个新的spring项目,我们必须添加构建路径或maven依赖项,配置application server,添加spring配置。因此,启动一个新的spring项目需...

2019-09-26 20:15:37 154

原创 保险

钱难赚,保险别乱买柯基班长 7月3日保险来自柯基班长00:0008:45理财就是理生活。欢迎来到长投学堂小白理财训练营。社保,有限的保障今天,我们先来说一部曾经大火的电影,名字叫《我不是药神》。里面一个情节,一位老太太对着警察曹斌说:“我病了三年,4万块一瓶的正版药,我吃了三年,房子被吃没了,家人被我吃垮了。谁家还没个病人,你能保证一辈子不生病吗?我不想死,我想活着。”从这...

2019-08-14 08:41:32 294

原创 线程池详解

一.线程池简介1.为什么要用线程池(1)减少资源的开销 。减少了每次创建线程、销毁线程的开销。(2)提高响应速度 ,每次请求到来时,由于线程的创建已经完成,故可以直接执行任务,因此提高了响应速度。(3)提高线程的可管理性 ,线程是一种稀缺资源,若不加以限制,不仅会占用大量资源,而且会影响系统的稳定性。 因此,线程池可以对线程的创建与停止、线程数量等等因素加以控制,使得线程在一种可控的范围内...

2019-07-25 11:18:28 251

原创 队列queue的详细讲解

一、Java Queue基础1.Queue简单介绍Queue: 基本上,一个队列就是一个先入先出(FIFO)的数据结构2.Queue方法相似比较(1)offer,add区别: 一些队列有大小限制,因此如果想在一个满的队列中加入一个新项,多出的项就会被拒绝。 这时新的 offer方法就可以起作用了。它不是对调用 add() 方法抛出一个 unchecked 异常,而只是得到由 of...

2019-07-22 11:42:21 1702

原创 浅谈oracle数据库如何在Linux系统下基本操作使用

一.在Linux环境安装oracle11G1.安装步骤参考此博文:https://www.cnblogs.com/guipeng/p/8552424.html2.Linux系统已经装好了oracle数据库,只需要简单的几个步骤登录oracle中的用户。二.Oracle的基本登录操作命令1.首先需要切换用户到root权限。常用命令:sudo su 切换root权限只需要当前用户的密码...

2019-07-18 10:19:38 4155

转载 JAVA中(PO,VO,TO,BO,DAO,POJO)分别是指什么

(一)O/R Mapping 是 Object Relational Mapping(对象关系映射)的缩写。通俗点讲,就是将对象与关系数据库绑定,用对象来表示关系数据。在O/R Mapping的世界里,有两个基本的也是重要的东东需要了解,即VO,PO。O/R Mapper 对象/关系 映射定义好所有的mapping之后,这个O/RMapper可以帮我们做很多的工作。通过这些mappings...

2019-05-20 10:57:25 2222

原创 mybatis bcType类型和Java类型的对应关系

mybatis中 jdbcType 时间类型<result column="create_time" property="createTime" jdbcType="TIMESTAMP"/>当 jdbcType = TIMESTAMP , 年月日+ 时分秒 例: 2019-02-28 09:56:11<result column="create_time" pro...

2019-02-28 10:47:19 576

原创 linux tar打包压缩排除某个目录或文件

1.例子:比如你想打包/home这个目录,但是/home/afish/目录和/home/www/afish.php文件你都不想打包,方法是:tar -zcvf home.tar.gz /home --exclude=/home/afish --exclude=/home/www/afish.php2.命令格式如下:tar -zcvf xxx.tar.gz 要打包的目录 ...

2019-01-21 11:09:32 5544

原创 Mybatis中添加记录成功以后,返回主键id值

使用MyBatis往MySQL数据库中插入一条记录后,需要返回该条记录的自增主键值。方法:在mapper中指定设置useGeneratedKeys=“true”,keyProperty属性为主键属性<insert id="insertAndGetId" useGeneratedKeys="true" keyProperty="userId" parameterType="com.chen...

2019-01-11 17:31:34 2668

原创 Linux中tomcat服务器安装配置

/home/appuser/ 下面使用 建立一个soft目录,mkdir soft安装上传下载命令,然后在soft目录下使用 rz上传yum -y install lrzsz解压tomcattar -zxvf apache-tomcat-7.0.92.tar.gz将tar.gz的包移动到/software目录mv apache-tomc...

2019-01-11 15:22:48 189

空空如也

空空如也

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

TA关注的人

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