回答了问题2019-09-23
可以考虑换一种方式实现,例如你可以用aop的方式,定义一个切面,也可以是自定义注解,然后将需要校验的方法都打上该注解,然后逻辑自己实现,再用ControllerAdvice就可以了。
回答了问题2019-09-05
可以考虑从不同的数据源将数据返回之后,在客户端使用Java stream等方式来处理。
发布了文章2019-09-05
在Java中,代理可以分为静态代理和动态代理,这个都是JDK支持的,这个的区别主要就是在于能否在程序运行期间生成一个代理类,很明显,动态代理就可以做到这一点。
赞了文章2019-07-08
某天,我在写代码的时候,无意中点开了 String hashCode 方法。然后大致看了一下 hashCode 的实现,发现并不是很复杂。但是我从源码中发现了一个奇怪的数字,也就是本文的主角31。这个数字居然不是用常量声明的,所以没法从字面意思上推断这个数字的用途。后来带着疑...
发布了文章2018-08-17
这个问题我们在开发的时候,或多或少都能遇到,对业务逻辑没有正确的梳理,又或者是在多线程的情况下,对程序的执行顺序有理解上的偏差等等,但是这种问题有时候执行代码是看不出来的,那我们今天就看一看如何使用简单的命令来查看死锁。
赞了文章2018-08-11
工作中对外提供的API 接口设计都要考虑限流,如果不考虑限流,会成系统的连锁反应,轻者响应缓慢,重者系统宕机,整个业务线崩溃,如何应对这种情况呢,我们可以对请求进行引流或者直接拒绝等操作,保持系统的可用性和稳定性,防止因流量暴增而导致的系统运行缓慢或...
发布了文章2018-08-10
之前有一篇文章我们简单的谈到了Java中同步的问题,但是可能在平常的开发中,有些理论甚至是某些方式是用不到的,但是从程序的角度看,这些理论思想我们可以运用到我们的开发中,比如是不是应该一谈到同步问题,就应该想到用synchronized?,什么时候应该用ReentrantLo...
发布了文章2018-08-09
在我们平常的开发工作中,或多或少的都能接触到多线程编程或者一些并发问题,随着操作系统和系统硬件的升级,并发编程被越来越多的运用到我们的开发中,我们使用多线程的最初的想法是能够更大程度的利用系统资源,但是我们在使用多线程的时候,也会有一些问题的存在...
发布了文章2018-07-24
在Java中,有一种而且我们使用很频繁的数据结构,叫做HashMap,其实准确的来说,这是散列表的一种冲突解决的实现,那么什么是散列表呢?这个概念在网上可以找到很多专业的回答,这里我们就举一个很简单的例子来说明一下什么是散列表。
发布了文章2018-06-19
之前有篇文章比较浅显的分析了一下golang的服务器如何实现,还有Handler, DefaultServeMux,HandlerFunc的用处。
发布了文章2018-06-19
这里就建立起了一个比较简单的服务器,这个是什么意思呢?现在先大概的说一下,这里监听了一个我们本机的端口,然后接受客户端的请求,再响应给客户端相应的数据。我们再来看一段代码
赞了文章2018-06-04
前言 之前在 Java-Interview 中提到过秒杀架构的设计,这次基于其中的理论简单实现了一下。 本次采用循序渐进的方式逐步提高性能达到并发秒杀的效果,文章较长请准备好瓜子板凳(liushuizhang😂)。 本文所有涉及的代码: [链接] [链接] 最终架构图: <!--more-->...
回答了问题2018-06-03
首先确定一下你把JAR包放到你本地的仓库了,然后你在看看你的maven的settings.xml的配置中仓库位置指向的是哪里。
回答了问题2018-06-03
3、只要“&&”前面是false,无论“&&”后面是true还是false,结果都将返“&&”前面的值;
回答了问题2018-06-03
classloader最顶级的那个就是bootstrapclassloader,至于为什么要设计双亲委派机制这种模型,说的简单一点其实就是为了保护JDK的安全性,如果你自己写了一个System这个类,如果没有这种机制,那么你自己写的这个类将被加载,这样对JDK的入侵是很大的,那么现在有这种...
回答了问题2018-05-29
在mybatis中,#{} 相当于是JDBC的preparestatement,是预编译的,${}不是预编译的,会有SQL注入的风险,其实你可以看看SQL打印出的log,然后run一下这些SQL,看看哪种是正确的。
回答了问题2018-05-29
看这个信息,应该是spring没有扫描到dao层,你看一下配置文件配置的是否正确。
回答了问题2018-05-29
换一个注解试试,@Size(min=, max=) 验证对象(Array,Collection,Map,String)的长度是否在给定的区间内。
回答了问题2018-05-29
如果在不用框架的基础上,你可以这样操作,在你现在的这个页面上面定义一个主方法,在你每一次点击左侧菜单的时候,通过ajax或者其他的异步方式,去后台拿对应的模板页面,然后渲染在右侧区域,还有另一种方式就是不用这种异步加载,通过左侧的菜单地址直接去后台拿...
发布了文章2018-05-28
在第一行定义变量w的时候,声明了其类型为io.Writer,这里是真正意义上的空接口,为什么是空接口,就是它的类型和值都为nil,在这里可以用==或者!=来和nil做判断。