Java 第4页

第一条建议:考虑用静态工厂方法代替构造方法——《Effective Java》读书笔记

3

yeseng 发布于 2019-03-24

《Effective Java》读书笔记系列文章用于整理和记录《Effective Java》一书的笔记,一来方便日后查阅和复习,二来与大伙共同学习与分享,并非商用,请大家尊重知识产权:smile:。 小盆友并未一成不变的将书本的观点 cv 到这篇博文中,而是加上自己的一些 “不...

阅读(14)评论(0)赞 (0)

深入理解ReentrantLock的实现原理

8

小丁 发布于 2019-03-24

ReentrantLock 是 Java 在 JDK1.5 引入的显式锁,在实现原理和功能上都和内置锁(synchronized)上都有区别,在文章最后我们再比较这两个锁。 首先我们要知道 ReentrantLock 是基于 AQS 实现的,所以我们得对 AQS 有所了解才能更好...

阅读(14)评论(0)赞 (0)

SpringBoot整合Swagger2,再也不用维护接口文档了!

6

puefu.he 发布于 2019-03-24

前后端分离后,维护接口文档基本上是必不可少的工作。一个理想的状态是设计好后,接口文档发给前端和后端,大伙按照既定的规则各自开发,开发好了对接上了就可以上线了。当然这是一种非常理想的状态,实际开发中却很少遇到这样的情况,接口总是在不断的变化之中,有变化就要去维护,做过的小伙伴都知道...

阅读(21)评论(0)赞 (0)

微服务上云爬坑记

尖兵 发布于 2019-03-24

背景 之前在创业公司,产品基于Spring Cloud做了微服务化的改造。在这个过程,因为时间原因我个人没有直接参与技术的引入及整体架构考量,只是简单做了一些基础架构层面的工作,比如Gradle替换Maven,日志和异常的封装处理,notification的统一抽象等。最终微服务...

阅读(16)评论(0)赞 (0)

设计监控体系

1

darida 发布于 2019-03-24

为了保证线上服务稳定,线上存在问题进行及时报警,需要能及时监控线上服务情况,已保证系统高可用,为用户提供稳定用户体验。 程序本身需要透明化整个系统状态,这样更能清晰找到程序内部异常以及内部存在问题,能够及时发现问题,避免系统悄无声息异常运行,这就需要程序设计时对内部状态查询予以相...

阅读(30)评论(0)赞 (0)

Maven基础教程之安装与配置

1

尖兵 发布于 2019-03-23

前言 至于为什么要写Maven这个系列呢?其实我自己还是感慨颇深的,在去年一年的工作中,接触了一帮出差过来支撑的兄弟,但是这帮兄弟也都是刚走出校门的,或者从其它行业转过来做开发的,经验都很少,基础的Maven都不会配置,更不要说Maven的那些概念了。其实,在我们周围很多的看似很...

阅读(36)评论(0)赞 (0)

Struts Action 控制器

2

邓龙华 发布于 2019-03-23

控制器 即,mvc模型的控制器模型,用于接收数据,传递给视图层,和模型层 默认使用execute方法 查看相关接口 查看com.opensymphony.xwork2下的Action接口 文件如下 /* * Licensed to the Apache Software Foun...

阅读(21)评论(0)赞 (0)

Servlet生命周期

zhuangli 发布于 2019-03-23

Servlet的生命周期是由它部署的容器控制的。当一个请求映射到一个Servlet,Servlet容器执行下面的步骤。 1 如果不存在这个Servlet的实例,容器执行: a. 加载Servlet类 b. 创建Servlet类实例 c. 通过调用init方法初始化Servlet(...

阅读(21)评论(0)赞 (0)

JVM垃圾回收的Tips

puefu.he 发布于 2019-03-23

整理了JVM垃圾回收的一些问题 为什么Young Generation适合使用复制算法 一句话:因为YGen的特点是大批对象快速死去,仅有少量对象存活。对于复制算法来说,每次复制的内容并不多,成本较低。 为什么是复制算法 一句话:算法简单,效率高,内存分配时也不需要考虑内存碎片等...

阅读(22)评论(0)赞 (0)

Struts

3

wenming.gapo 发布于 2019-03-23

运行流程 客户端浏览器通过HTTP请求,访问控制器,然后控制器读取配置文件,然后执行服务器端跳转,执行相应的业务逻辑,然后,在调用模型层,取得的结果展示给jsp页面,最后返回给客户端浏览器 组成部分 struts 视图 标签库 控制器 action 模型层 ActionFrom ...

阅读(22)评论(0)赞 (0)

使用@ConfigurationProperties配置Spring Boot模块

xubiao.zhuang 发布于 2019-03-23

SpringBoot应用经常需要一些参数,这些参数可以定义要连接的数据库,要支持的区域设置或要应用的日志记录级别。这些参数应该 外部化 (放在代码之外),这意味着我们不应该将它们变成可部署的工件,而是在启动应用程序时将它们作为命令行参数或配置文件提供。 通过@Configurat...

阅读(23)评论(0)赞 (0)

Spring data mongodb 唯一索引(@Indexed)单元测试注意事项

wenming.gapo 发布于 2019-03-23

问题 Spring data mongodb Entity有一个字段设置了唯一索引 @Indexed(unique=true) private String uid; 测试不能添加uid重复的记录 /** * 测试插入UID重复记录失败 */ MyCardDO myCardDO1...

阅读(20)评论(0)赞 (0)

读书笔记之《实战Java虚拟机》(6):性能监控工具

6

hellas 发布于 2019-03-23

top - 19:55:08 up 22 days, 3:12, 1 user, load average: 0.01, 0.08, 0.07 Tasks: 77 total, 1 running, 76 sleeping, 0 stopped, 0 zombie %Cpu(s)...

阅读(27)评论(0)赞 (0)

【Java并发】锁优化

11

darida 发布于 2019-03-23

锁的四种状态 锁的状态总共有四种:无锁状态、偏向锁、轻量级锁和重量级锁。随着锁的竞争,锁可以从偏向锁升级到轻量级锁,再升级的重量级锁。但是不可以降级。 重量级锁 sychronized就是重量级锁。 Synchronized是通过对象内部的一个叫做监视器锁(monitor)来实现...

阅读(23)评论(0)赞 (0)

排序算法 Java实现

yanxinchi 发布于 2019-03-23

选择最小元素,与第一个元素交换位置;剩下的元素中选择最小元素,与当前剩余元素的最前边的元素交换位置。 分析 选择排序的比较次数与序列的初始排序无关, 比较次数都是N(N-1)/2 。 移动次数最多只有n-1次。 因此,时间复杂度为O(N^2),无论输入是否有序都是如此,输入的顺序...

阅读(20)评论(0)赞 (0)

JSTL

1

尖兵 发布于 2019-03-23

关于对本次学习的JSTL进行总结 下载 在 mvnrepository 中,直接搜索jstl,,找到下载量最高的,下载1.2版本。 下载完导入到项目里面就好了 jstl概述 jstl是apache对EL表达式的扩展 使用需导jar包 JSTL标签库 core:核心标签库 fmt:...

阅读(22)评论(0)赞 (0)

java mvc 新趋势——从运行期间类扫描到编译期间

2

zhuangli 发布于 2019-03-23

简介 今天我要讲解的是主角是 Annotation Processor,她不是什么新技术 jdk 1.6 就存在了。 Annotation Processor是javac的一个工具,它用来在编译时扫描和处理注解。通过Annotation Processor可以获取到注解和被注解对...

阅读(21)评论(0)赞 (0)

Spring Security 进阶-加密篇

1

puefu.he 发布于 2019-03-23

在 Spring Security 中加密是一个很简单却又不能忽略的模块,数据只有加密起来才更安全,这样就散算据库密码泄漏也都是密文。本文分析对应的版本是 5.14。 概念 Spring Security 为我们提供了一套加密规则和密码比对规则,org.springframewo...

阅读(25)评论(0)赞 (0)