
后端技术
文章平均质量分 89
Java技术栈
Java每天一篇干货,微信公众号:Java技术栈
展开
-
注意:阿里Druid连接池监控的两个坑
阿里的Druid大家都知道是最好的连接池,其强大的监控功能是我们追求的重要特性。但在实际情况中也有不少坑,说下最近遇到的一个坑吧!问题1:不断打印error级别的错误日志 session ip change too many下面是其报错的关键源码 com.alibaba.druid.support.http.stat.WebSessionStat#addRemot...原创 2018-02-28 22:31:35 · 50399 阅读 · 2 评论 -
Mybatis传递多个参数的4种方式(干货)
现在大多项目都是使用Mybatis了,但也有些公司使用Hibernate。使用Mybatis最大的特性就是sql需要自己写,而写sql就需要传递多个参数。面对各种复杂的业务场景,传递参数也是一种学问。下面给大家总结了以下几种多参数传递的方法。方法1:顺序传参法public User selectUser(String name, int deptId);<select...原创 2018-02-28 22:32:35 · 43570 阅读 · 11 评论 -
Java程序员注意:Tomcat Get请求的巨坑!
Tomcat8.5,当Get请求中包含了未经编码的中文字符时,会报以下错误,请求未到应用程序在Tomcat层就被拦截了。Tomcat报错: java.lang.IllegalArgumentException: Invalid character found in the request target. The valid characters are defined in RFC...原创 2018-03-25 19:39:03 · 4319 阅读 · 0 评论 -
Redis 的 4 大法宝,2018 必学中间件!
Redis是什么? 全称:REmote DIctionary ServerRedis是一种key-value形式的NoSQL内存数据库,由ANSI C编写,遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。Redis最大的特性是它会将所有数据都放在内存中,所以读写速度性能非常好。当然,它也支持将内存中的数据以快照和日...原创 2018-03-25 19:43:51 · 662 阅读 · 0 评论 -
图解 5 种 Join 连接及实战案例!(inner/ left/ right/ full/ cross)
Join 连接在日常开发用得比较多,但大家都搞清楚了它们的使用区别吗??一文带你上车~~内连接 inner join内连接是基于连接谓词将俩张表(如A和B)的列组合到一起产生新的结果表,在表中存在至少一个匹配时,INNER JOIN 关键字返回行。 下面是一个简单的使用案例 以下是运行代码及结果 左外连接 left join...转载 2018-03-31 18:14:14 · 552 阅读 · 0 评论 -
2018最新后端开发人员的路线图
简评:之前,后端开发路线图仅仅是一个技术推荐,且没有明确的方向指明应该遵循的顺序,这份重新制作的指南将会给你一个更好的方向。现在的 Web 开发与几年前完全不同了,有很多不同的东西可以轻易地把人拒之门外,这也是我们决定制作这个循序渐进指南的原因之一,并让任何人可以清楚地了解他们在 web 开发中扮演的角色。可以在下面的图片中找到详细的路线图,而我也将在下面的描述中解释每一个步骤。...转载 2018-05-22 15:17:57 · 11927 阅读 · 0 评论 -
坑爹的日志无法按天切割问题!
问题背景线上某个新管理型系统出现了日志无法按天切割生成日志文件的问题,所有的日志都在一个日志文件里面,只有每次重启的时候才会重新生成文件。这个管理系统使用的是 Spring Boot + Logback 框架,查看了 Logback 的日志文件,发现了策略组合使用问题。以下是有问题的日志配置代码。<appender name="FILE" class="ch.qos.lo...原创 2018-05-24 14:53:12 · 2064 阅读 · 0 评论 -
分布式作业 Elastic Job 如何动态调整?
前面分享了两篇分布式作业调度框架 Elastic Job 的介绍及应用实战。ElasticJob-分布式作业调度神器分布式作业 Elastic Job 快速上手指南!Elastic Job 提供了简单易用的运维平台,方便用户监控、动态修改作业参数、作业操作及查询作业。设计理念运维平台和elastic-job-lite并无直接关系,是通过读取作业注册中心数据展现作业状态,或...原创 2018-08-24 11:04:56 · 922 阅读 · 0 评论 -
参数验证 @Validated 和 @Valid 的区别
来源:blog.youkuaiyun.com/qq_27680317/article/details/79970590整编:Java技术栈(公众号ID:javastack)Spring Validation验证框架对参数的验证机制提供了@Validated(Spring’s JSR-303 规范,是标准 JSR-303 的一个变种),javax提供了@Valid(标准JSR-303规范),配合 Bin...转载 2019-01-21 10:38:11 · 3252 阅读 · 0 评论 -
Tomcat集群session复制与Oracle的坑。。
问题描述公司某个系统使用了tomcat自带的集群session复制功能,然后后报了一个oracle驱动包里面的连接不能被序列化的异常。01-Nov-2017 16:45:26.653 SEVERE [https-jsse-nio-8443-exec-2] org.apache.catalina.ha.session.DeltaManager.requestCompleted Unabl原创 2018-01-19 14:18:28 · 635 阅读 · 0 评论 -
浅析负载均衡的6种算法,Ngnix的5种算法。
常见的几种负载均衡算法1、轮询法将请求按顺序轮流地分配到后端服务器上,它均衡地对待后端的每一台服务器,而不关心服务器实际的连接数和当前的系统负载。2、随机法通过系统的随机算法,根据后端服务器的列表大小值来随机选取其中的一台服务器进行访问。由概率统计理论可以得知,随着客户端调用服务端的次数增多,其实际效果越来越接近于平均分配调用量到后端的每一台服务器,也就是轮询的结果。3、源原创 2018-01-10 09:20:05 · 6032 阅读 · 0 评论 -
JSON Web Token (JWT),服务端信息传输安全解决方案。
JWT介绍JSON Web Token(JWT)是一种开放标准(RFC 7519),它定义了一种紧凑独立的基于JSON对象在各方之间安全地传输信息的方式。这些信息可以被验证和信任,因为它是数字签名的。JWTs可以使用一个密钥(HMAC算法),或使用RSA的公钥/私钥密钥对对信息进行签名。让我们进一步解释这个定义的一些概念。紧凑由于其较小的体积,JWTs可以通过URL、POST参原创 2018-01-12 17:25:42 · 4531 阅读 · 0 评论 -
SaaS,PaaS,IaaS都是什么鬼?
IaaSInfrastructure as a Service,基础设施即服务。假如你现在要做一个网站,你肯定要有一台服务器或者虚拟机,要么自己搭建,要么买服务器运营商的。说白了,IaaS就是解决企业硬件问题的,包括服务器、存储设备、网络设备等基础设施。基础设施有了,你就可以搭建环境了。PaaSPlatform as a Service,平台即服务。假如你现在要做一个网站,原创 2018-01-13 10:07:55 · 6647 阅读 · 0 评论 -
什么是CPU密集型、IO密集型?
CPU密集型(CPU-bound)CPU密集型也叫计算密集型,指的是系统的硬盘、内存性能相对CPU要好很多,此时,系统运作大部分的状况是CPU Loading 100%,CPU要读/写I/O(硬盘/内存),I/O在很短的时间就可以完成,而CPU还有许多运算要处理,CPU Loading很高。在多重程序系统中,大部份时间用来做计算、逻辑判断等CPU动作的程序称之CPU bound。例如一个计......原创 2018-01-14 10:13:10 · 101741 阅读 · 28 评论 -
阿里Druid连接池的坑。。
Druid的坑当查询数据库的Clob转换为Oracle Clob类型的时候。java.lang.ClassCastException: com.alibaba.druid.proxy.jdbc.ClobProxyImpl cannot be cast to oracle.sql.CLOB问题原因ClobProxyImpl不能转换为Oracle的Clob字段,这也是醉了。原创 2018-01-07 08:10:39 · 18787 阅读 · 2 评论 -
Druid-目前最好的连接池
Druid是什么Druid是阿里开源的连接池,是Java语言中最好的数据库连接池.Druid能够提供强大的监控和扩展功能,是为监控而生的数据库连接池! GitHub:https://github.com/alibaba/druid/添加依赖dependency> groupId>com.alibabagroupId> artifactId>druida原创 2018-01-17 09:20:55 · 4341 阅读 · 0 评论 -
JSON Web Token (JWT)生成Token及解密实战。
昨天讲解了JWT的介绍、应用场景、优点及注意事项等,今天来个JWT具体的使用实践吧。从JWT官网支持的类库来看,jjwt是Java支持的算法中最全的,推荐使用,网址如下。 https://github.com/jwtk/jjwt下面来看看如何使用jjwt来实现JWT token的生成与解密,主要用到sha512算法来演示。1、导入jjwt的maven包。depende原创 2018-01-25 09:37:55 · 10146 阅读 · 0 评论 -
一分钟开启Tomcat https支持
1、修改配置文件打开tomcat/conf/server.xml配置文件,把下面这段配置注释取消掉,keystorePass为证书密钥需要手动添加,创建证书时指定的。Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol" maxThreads="150"原创 2018-01-18 09:16:14 · 532 阅读 · 0 评论 -
一个比Spring Boot快44倍的Java框架!
最近栈长看到一个框架,官方号称可以比 Spring Boot 快 44 倍,居然这么牛逼,有这么神奇吗?今天带大家来认识一下。这个框架名叫:light-4j。官网简介:A fast, lightweight and more productive microservices framework很简单,翻译过来就是:一个快速、轻量级和更高效的微服务框架。为什么叫light-4j?全称应...原创 2019-03-26 08:48:16 · 14943 阅读 · 38 评论