
java
文章平均质量分 68
Yang_yangyang
大鹏一日同风起,扶摇直上九万里!!!
展开
-
Nginx 代理服务,访问ftp图片,图片乱码
nginx 反向代理图片乱码原创 2024-01-08 14:54:05 · 814 阅读 · 0 评论 -
Git桌面工具 SourceTree上配置SSH,拉取代码
4、打开Source Tree --> 工具–> 选项–>选择id_rsa(私钥)–> 选择OpenSSH–>确定。配置完,以后连接git 就不需要输入密码了。这一步结束,在电脑路径 C:\Users\Administrator.ssh 下会生成两个文件。id_rsa (私钥) 和 id_rsa.pub (公钥)5、打开Source Tree–> 文件–>克隆/新建–>下载GitLab上的代码。期间会提示输入密码,我这里直接4 次回车,直接跳过。原创 2022-11-09 16:22:58 · 2038 阅读 · 0 评论 -
【解决】Linux Tomcat启动慢--Creation of SecureRandom instance for session ID generation using [SHA1PRNG] to
一、背景今天部署项目到tomcat,执行./startup.sh命令之后,访问项目迟迟加载不出来,查看日志又没报错(其实是我粗心了,当时tomcat日志还没打印完),一开始怀疑是阿里云主机出现问题,访问ip:80发现nginx运行正常。在我百思不得其解时,项目访问正常了,查看启动日志,发现如下:15-Mar-2018 16:41:02.302 WARNING [main] org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom转载 2022-04-01 11:25:57 · 760 阅读 · 0 评论 -
微信支付,“签名错误,请检查后再试” 的坑爹经历
微信提交预订单**请求**XML报文:<xml> <appid><![CDATA[wx45485fdfd5fd5fdfd]]></appid> <mch_id><![CDATA[1687896659]]></mch_id> <nonce_str><![CDATA[0XMLHISMJSJUQV7ZA6KD5GBQC5VCOVKU]]></nonce_str> <sig...原创 2022-04-01 09:24:22 · 25395 阅读 · 10 评论 -
Connection is read-only. Queries leading to data modification are not allowed---事务配置引起的错误
-今天业务部门提交了一个bug,说运行很久的一个逻辑,报错了。查看日志后,发先如下错误, 记录一下,以儆效尤。Caused by: java.sql.SQLException: Connection is read-only. Queries leading to data modification are not allowed果断定位到出问题的类上,发现如下代码:方法所在类,有一行事务注解,标记为只读。出问题的方法如下:这是一个保存方法,必然会涉及到事务管理。所以这个类上的原创 2022-02-09 17:18:21 · 1522 阅读 · 0 评论 -
Maven 配置nexus仓库,并利用eclipse发布jar 包到私服。
搭建Nexus仓库下载并安装 Nexus Repository Manager OSS 2.xhttps://www.sonatype.com/download-oss-sonatype启动Nexus服务以管理员身份运行${安装目录}\nexus-2.14.4-03\bin\jsw\windows-x86-64\install-nexus.bat${安装目录}\nexus-2.14.4-03\bin\jsw\windows-x86-64\start-nexus.bat访问Nexus原创 2021-12-07 17:33:45 · 1138 阅读 · 0 评论 -
解决tomcat 静态页面(html)中文乱码
tomcat 中jsp不会乱码 但是html中文会乱码原因有好几个:没有设置页面编码 tomcat的配置不正确 文件保存的编码格式不是utf-8 等等 下面来讨论解决办法html页面设置为 utf-8 在页面头部添加标签tomcat的server.xml配置(1) 添加 URIEncoding=“UTF-8”<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000"转载 2021-07-13 16:32:47 · 701 阅读 · 0 评论 -
tomcat启动错误---Caused by: java.util.zip.ZipException: invalid LOC header (bad signature)
在tomcat启动时报invalid LOC header (bad signature)错误Caused by: java.lang.IllegalArgumentException: java.util.zip.ZipException: invalid LOC header (bad signature) at org.apache.catalina.webresources.AbstractSingleArchiveResourceSet.initInternal(AbstractSi翻译 2021-07-08 14:52:48 · 2063 阅读 · 0 评论 -
fail-fast 机制。List 不要随便remove 元素
代码片段1:其中IDs意义是:不为空的 String[] IDs 数组。List stkCs = new ArrayList();Collections.addAll(stkCs, IDs);List delList = new ArrayList();//用来装需要删除的stkCfor(String stkc :stkCs){List list = searchSer原创 2016-12-21 20:06:38 · 1882 阅读 · 0 评论 -
数据库连接池还在用C3P0?Druid?来试试号称最快的数据库连接池HikariCP
记录一次使用Druid连接池 换 HikariCP 的过程:本次运行环境:WIn10 x64、Eclipse、JDK1.8、SpringMCV、Mysql5.8项目最初使用的数据库连接池是阿里的Druid,后来偶然的机会发现了这款号称最快的数据库连接池HikariCP。官方文档放出的对比数据如下:下面我们来深入了解下它。什么是数据库连接池?连接池基本的思想是在系统初始化的时候,将数据库连接作为对象存储在内存中,当用户需要访问数据库时,并非建立一个新的连接,而是从连接池中取出一个已建立的空闲原创 2021-05-13 11:28:13 · 685 阅读 · 1 评论 -
[已解决]Tomcat启动报栈溢出的问题分析及处理org.bouncycastle.asn1.ASN1Boolean
问题缘由: 在tomcat下部署war包启动时报错,关键错误信息如下: Caused by: java.lang.IllegalStateException: Unable to complete the scan for annotations for web application [] due to a StackOverflowError. Possible root causes in...转载 2021-05-07 10:59:09 · 1110 阅读 · 0 评论 -
Spring 事务失效的 8 大场景,看看你都遇到过几个
用 Spring 的@Transactional注解控制事务有哪些不生效的场景?不知道小伙伴们有没有这样的经历,在自己开心的编写业务代码时候,突然某一个方法里的事务好像失效了。然后 debug 跟踪代码时发现,自己第一步的 insert 或者 update 的数据在语句执行完毕后,数据库中并没有立即出现更改或保存完的新数据。所以一度怀疑spring 的事务失效了。那么这篇文章就来总结一下,大家给大家造成 “spring事务失效”错觉的 几个常见场景,然后对症下药。Let's GO!!!以本人..原创 2021-03-04 10:46:42 · 1867 阅读 · 3 评论 -
Spring 如何在一个事务中开启另一个事务?
Spring 如何在一个事务中开启另一个事务?这样的情景可能不常见,但是还是会有的,一旦遇到,如果业务比较复杂,就会很麻烦,但是还是有解决的方案的,比如将一个service方法拆成两个方法,也就是将两个操作的事务分开。但是这只适用与业务比较简单的,如果出现多次数据库的写操作,而我们调用的系统只需要其中一个写操作的最新数据,如果我们将它分开,那么如果调用目标系统出现异常的时候,那么之前的写操作就不能回滚了。举个简单的例子:@Servicepublic class ServiceA { @Tran原创 2021-03-04 10:45:02 · 916 阅读 · 1 评论 -
maven+springmvc+dubbo+zookeeper
maven+springmvc+dubbo+zookeeper 为什么要用dubbo? 还是让官方来解释吧:http://dubbo.io/User+Guide-zh.htm http://dubbo.io/ 一般 nginx+tomcat | ----> Controller1--------->service1请求-转载 2017-03-13 18:52:15 · 357 阅读 · 0 评论 -
Java进阶(五)Java I/O模型从BIO到NIO和Reactor模式
本文介绍了Java中的四种I/O模型,同步阻塞,同步非阻塞,多路复用,异步阻塞。同时将NIO和BIO进行了对比,并详细分析了基于NIO的Reactor模式,包括经典单线程模型以及多线程模式和多Reactor模式。本文转发自技术世界,原文链接 http://www.jasongj.com/java/nio_reactor/Java I/O模型同步 vs. 异步同步I/转载 2017-11-09 20:13:55 · 342 阅读 · 0 评论 -
Map拷贝 关于对象深拷贝 浅拷贝的问题
Map拷贝 关于对象深拷贝 浅拷贝的问题问题:map拷贝时发现数据会变化。高能预警,你看到的下面的栗子是不正确的,后面有正确的一种办法,如果需要看的话的,请看到底,感谢各同学的提醒,已做更正,一定要看到最后 先看例子: public class CopyMap { /** *转载 2017-11-09 20:16:30 · 630 阅读 · 0 评论 -
JAVA WEB 判断上传的文件是否是图片
在Web程序中,如果限制上传文件为图片,大部分方法都采取检查文件扩展名。这样,当把一个非图片文件的扩展名改为jpg、gif或者bmp时,就能绕过限制。所以必须得通过读取文件内容来进行判断。这里提供两种实现代码。ImageInputStream iis = ImageIO.createImageInputStream(new File("E:/photo/4.jpg"));Ite原创 2018-01-30 15:44:59 · 5909 阅读 · 0 评论 -
1.dubbo源码分析 之 架构原理探索
原文地址:http://www.carlzone.cn/dubbo/1-dubbo-architecture/在之前的文章中介绍了Dubbo的出现背景以及使用方式,下面我们通过源码的方式来分析一下Dubbo的架构。1、准备在分析探索Dubbo架构原理之前,我们需要准备一下环境,用于后面我们来分析dubbo的架构。1.1 ZookeeperDubbo使用Zookeeper为注册中心。所以需要在本地启...转载 2018-06-29 13:51:00 · 563 阅读 · 0 评论 -
Json解析之 ---- FastJSON 实现 Map、JSON、String 之间的互转
简介Fastjson是一个Java语言编写的高性能功能完善的JSON库(由阿里巴巴团队完善开发)。高性能fastjson采用独创的算法,将parse的速度提升到极致,超过所有json库,包括曾经号称最快的jackson。并且还超越了google的二进制协议protocol buf。支持标准Fastjson完全支持http://json.org的标准,也是官方网站收录的参考实现之...原创 2018-08-10 10:50:17 · 759 阅读 · 2 评论 -
Centos7 安装Redis5.0.4,设置开机启动,连接RedisDesktopManger完整步骤
1.检查安装依赖程序//安装需要的运行环境,防止安装出错yum install gcc-c++yum install -y tcl#yum install -y vim*2.获取安装文件//下载源码文件wget http://download.redis.io/releases/redis-5.0.4.tar.gz//解压文件tar xzf redis-5.0.4....原创 2019-03-19 18:24:27 · 2540 阅读 · 0 评论 -
java小数点精度的问题
小数点的精度问题,四舍五入在做公司的支付系统的时候,遇到了一个很小的问题,但是前后改了很多次,就是钱的精度问题。要求是保留2位小数,也就是精确到人民币的“分”。下面就是我的改bug 的痛苦经历,直接帖出代码package com.msds;import java.math.BigDecimal;import java.ma...原创 2019-08-09 13:10:05 · 831 阅读 · 0 评论 -
Java进阶(四)线程间通信剖析
本文将介绍常用的线程间通信工具CountDownLatch、CyclicBarrier和Phaser的用法,并结合实例介绍它们各自的适用场景及相同点和不同点。本文转发自技术世界,原文链接 http://www.jasongj.com/java/thread_communication/CountDownLatchCountDownLatch适用场景Java多线程编程转载 2017-11-09 20:13:32 · 222 阅读 · 0 评论 -
Java进阶(三)多线程开发关键技术
本文将介绍Java多线程开发必不可少的锁和同步机制,同时介绍sleep和wait等常用的暂停线程执行的方法,并详述synchronized的几种使用方式,以及Java中的重入锁(ReentrantLock)和读写锁(ReadWriteLock),之后结合实例分析了重入锁条件变量(Condition)的使用技巧,最后介绍了信号量(Semaphore)的适用场景和使用技巧。本文转发自技转载 2017-11-09 20:12:57 · 302 阅读 · 0 评论 -
Kafka设计解析(一)- Kafka背景及架构介绍
本文介绍了Kafka的创建背景,设计目标,使用消息系统的优势以及目前流行的消息系统对比。并介绍了Kafka的架构,Producer消息路由,Consumer Group以及由其实现的不同消息分发方式,Topic & Partition,最后介绍了Kafka Consumer为何使用pull模式以及Kafka提供的三种delivery guarantee。本文转发自技术世界,原文链接 h转载 2017-10-31 16:35:29 · 285 阅读 · 0 评论 -
URL传递中文参数乱码----js对url进行编码和解码
URL 中用get 方式传递中文参数,会造成乱码的情况,可以采用前台用JS 编码+后台action 解码的方式解决。但是有时候,后台的action 不可见的时候,就需要在前台 用 JS 完成编码+解码的工作。js对url进行编码和解码的三种方式和区别*** 只有 0-9[a-Z] $ - _ . + ! * ' ( ) , 以及某些保留字,才能不经过编码直接用于原创 2017-10-12 10:04:52 · 20679 阅读 · 1 评论 -
maven setting.xml 设置
速度较快的Maven仓库镜像。Maven配置文件Maven仓库速度快翻译 2017-08-24 14:55:27 · 1455 阅读 · 0 评论 -
Dubbo与Zookeeper、SpringMVC整合和使用(负载均衡、容错)
Dubbo与Zookeeper、互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,Dubbo是一个分布式服务框架,在这种情况下诞生的。现在核心业务抽取出来,作为独立的服务,使前端应用能更快速和稳定的响应。第一:介绍Dubbo背景 大规模服务化之前,应用可能只是通过RMI或Hess转载 2017-08-28 18:58:05 · 260 阅读 · 0 评论 -
java 跳出多层for 循环
在循环语句中,我们常使用break来跳出循环 如 方法1。但这只是跳出单层循环的方法。当然通过break 搭配逻辑运算也可以实现跳出多层for 循环,如方法2。其实想说的是其他的方法:a.通过标号;b.return; 下面一一列出以上方法。[java] view plain copy方法1:跳出单层循环public static void m原创 2017-09-05 13:18:09 · 5402 阅读 · 1 评论 -
java实现导出Excel(跨行,跨列)
最终效果:。第一步: 传参,后期可根据自己需要进行调整。我这里需要的是 quarter 代表季度dptid 部门编号根据接受过来的参数进行文档命名。UserInfo userInfo=(UserInfo)request.getSession().getAttribute("userInfo"); String userid=userInfo.getUserID();转载 2016-12-20 15:56:28 · 8503 阅读 · 0 评论 -
ArrayList 内 放入Map 时,元素重复
向一个ArrayList 里添加元素,元素类型为Map 的时候,会出现这样的问题:如果list 内有 5个 map 元素,那么取出来的 所有 map 元素均相同,有相同的key 和 value。 出现问题的错误代码: for(int i=0;i temp = (JSONObject原创 2016-09-08 10:13:40 · 2923 阅读 · 0 评论 -
Dubbo+Zookeeper+SpringMVC 架构
互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,Dubbo是一个分布式服务框架,在这种情况下诞生的。现在核心业务抽取出来,作为独立的服务,使前端应用能更快速和稳定的响应。第一:介绍Dubbo背景 大规模服务化之前,应用可能只是通过RMI或Hessian等转载 2016-06-28 14:52:42 · 499 阅读 · 0 评论 -
diamond专题(一)-- 简介和快速使用
大家好,今天开始为大家带来我们通用产品团队的产品 —— diamond的专题,本次为大家介绍diamond的概况和快速使用。一、概况diamond是淘宝内部使用的一个管理持久配置的系统,它的特点是简单、可靠、易用,目前淘宝内部绝大多数系统的配置,由diamond来进行统一管理。diamond为应用系统提供了获取配置的服务,应用不仅可以在启动时从diamond获取相关的配置,转载 2016-03-22 11:55:29 · 495 阅读 · 0 评论 -
Kafka设计解析(二)- Kafka High Availability (上)
Kafka从0.8版本开始提供High Availability机制,从而提高了系统可用性及数据持久性。本文从Data Replication和Leader Election两方面介绍了Kafka的HA机制。本文转发自技术世界,原文链接 http://www.jasongj.com/2015/04/24/KafkaColumn2摘要 Kafka在0.8以前的版本中,并转载 2017-10-31 16:38:25 · 255 阅读 · 0 评论 -
Kafka设计解析(三)- Kafka High Availability (下)
本文在上篇文章 基础上,更加深入讲解了Kafka的HA机制,主要阐述了HA相关各种场景,如Broker failover,Controller failover,Topic创建/删除,Broker启动,Follower从Leader fetch数据等详细处理过程。同时介绍了Kafka提供的与Replication相关的工具,如重新分配Partition等。本文转发自技术世界,原文链转载 2017-10-31 16:40:11 · 275 阅读 · 0 评论 -
Java进阶(二)当我们说线程安全时,到底在说什么
提到线程安全,可能大家的第一反应是要确保接口对共享变量的操作要具体原子性。实际上,在多线程编程中我们需要同时关注可见性、顺序性和原子性问题。本篇文章将从这三个问题出发,结合实例详解volatile如何保证可见性及一定程序上保证顺序性,同时例讲synchronized如何同时保证可见性和原子性,最后对比volatile和synchronized的适用场景。本文转发自技术世界,原文链接转载 2017-11-09 20:12:36 · 241 阅读 · 0 评论 -
Java进阶(一)Annotation(注解)
本文介绍了Java Annotation的概念及Java提供的四种Meta Annotation的功能,并结合实例详解了自定义Annotation的方法和注意事项本文转发自技术世界,原文链接 http://www.jasongj.com/2016/01/17/Java1_注解Annotation概念Annotation是Java5开始引入的特性。它提供了一种安全的类似于转载 2017-11-09 20:12:00 · 234 阅读 · 0 评论 -
Java进阶(六)从ConcurrentHashMap的演进看Java多线程核心技术
本文分析了HashMap的实现原理,以及resize可能引起死循环和Fast-fail等线程不安全行为。同时结合源码从数据结构,寻址方式,同步方式,计算size等角度分析了JDK 1.7和JDK 1.8中ConcurrentHashMap的实现原理。本文转发自技术世界,原文链接 http://www.jasongj.com/java/concurrenthashmap/线程转载 2017-11-09 20:11:02 · 602 阅读 · 0 评论 -
Java设计模式(二) 工厂方法模式
本文介绍了工厂方法模式的概念,优缺点,实现方式,UML类图,并介绍了工厂方法(未)遵循的OOP原则本文转发自技术世界,原文链接 http://www.jasongj.com/design_pattern/factory_method/工厂方法模式解决的问题上文《简单工厂模式不简单》中提到,简单工厂模式有如下缺点,而工厂方法模式可以解决这些问题由于工厂类集中了所有转载 2017-10-31 16:55:36 · 233 阅读 · 0 评论 -
Java设计模式(一) 简单工厂模式不简单
本文介绍了简单工厂模式的概念,优缺点,实现方式,以及结合Annotation和反射的改良方案。同时介绍了简单工厂模式(未)遵循的OOP原则。最后给出了简单工厂模式在JDBC中的应用本文转发自技术世界,原文链接 http://www.jasongj.com/design_pattern/simple_factory简单工厂模式使用案例有一种抽象产品——汽车(Car),同时转载 2017-10-31 16:54:40 · 250 阅读 · 0 评论 -
Kafka设计解析(七)- Kafka Stream
本文介绍了Kafka Stream的背景,如Kafka Stream是什么,什么是流式计算,以及为什么要有Kafka Stream。接着介绍了Kafka Stream的整体架构,并行模型,状态存储,以及主要的两种数据集KStream和KTable。并且分析了Kafka Stream如何解决流式系统中的关键问题,如时间定义,窗口操作,Join操作,聚合操作,以及如何处理乱序和提供容错能力。最后结合示转载 2017-10-31 16:45:41 · 1143 阅读 · 0 评论