5 代码与酒

尚未进行身份认证

万丈高楼平地起,要想辉煌靠自己。

等级
TA的排名 2w+

单例模式的五种正确姿势详解

单例模式算是设计模式中最容易理解,也是最容易手写代码的模式了吧。但是其中的坑却不少,所以也常作为面试题来考。本文主要对几种单例写法的整理,并分析其优缺点。很多都是一些老生常谈的问题,但如果你不知道如何创建一个线程安全的单例,不知道什么是双检锁,那这篇文章可能会帮助到你。1、懒汉式当被问到要实现一个单例模式时,很多人的第一反应是写出如下的代码,包括教科书上也是这样教我们的。(错...

2018-04-28 17:25:29

如何正确的重写equals() 和 hashCode()方法

在比较两个Java对象时,有时候我们需要重写equals和hashCode方法。publicclassUser{privateStringname;privateintage;privateStringpassport;//gettersandsetters,constructor}在比较结果时:Useruser1=...

2018-04-20 18:17:38

ActiveMQ学习(四)Spring整合ActiveMQ

因为2018年的第一场雪,比以往时候来的更晚一些,所以,本篇文章隔了近5个月才更新,抱歉来的有点晚了各位,不是人造革,皮是真的皮,啊弥陀佛,罪过罪过……本篇,将继续跟随以往的脚步,使用SpringMVC+ActiveMQ+Maven+Tomcat,做一个整合的简单实例。1.开发环境1.1版本工具Spring4.1.8ActiveMQ5.14.5JDK1...

2018-04-08 12:09:01

使用maven的profile构建不同环境配置

最近使用到了maven的profile功能,发现这个功能的确很好用也很实用,这块的知识比较多也比较乱,其实真正理解了之后非常简单,为了巩固总结知识,有个更清晰的知识体系,本文诞生了,希望能让像我一样零基础的小白一看就懂,有请戏精,闪亮登场~~1.背景作为一名猿,在实际的项目开发中,通常会有很多配置环境,比如最基本的:开发、测试、生产;不同的环境,某些文件的配置是不一样的(如:数...

2018-02-27 14:19:03

ActiveMQ学习(三)Java中使用AMQ的简单实例

好了,接上一篇,在对JMS的概念以及AMQ的下载安装有了一定认识之后,本篇就来学习一下AMQ在Java中的HelloWorld级使用(下文我将着重把重点写在注释里面,请注意代码注释部分!!!)。1.开发环境AMQ5.14.5服务启动运行准备JavaMaven项目依赖jar包在apache-activemq-5.14.5根目录下即可找到,或者直接Maven依赖:

2017-11-15 17:35:13

ActiveMQ学习(二)初识AMQ及其下载安装

PS:为方便起见,本文以及后续文章均使用AMQ简称,请各位大大知晓!1.了解ActiveMQ上篇文章我们学习了Java消息系统的规范JMS,本篇就来认识一下AMQ。AMQ是Apache出品的、最流行的、能力强劲的开源消息总线。通过上篇我们知道JMS只是消息服务的接口,而该接口的实现(即JMS提供者)有很多种,在此不再一一列举。AMQ即是其中的一种,它完全支持JMS1.1和J2EE1

2017-11-06 17:18:34

ActiveMQ学习(一)了解JMS

前言  越来发现自己太渣,难道这就是传说中的“知道的越多,不知道的越多”?不!我相信我是确实不知道的有很多……[捂脸]  言归正传,最近使用到了ActiveMQ,发现这个玩意儿也是非常重要且有用!继Mongo专栏之后,计划以同样的style来从零开始学习一下ActiveMQ。  顺便吐槽一下:别说,这Markdown还确实挺好用嘿!不过不支持排版缩进什么鬼啊???还得用 或 

2017-11-05 21:36:15

MongoDB进阶(十)去除Spring Data生成的_class字段并同时配置类型转换器

【前言】    实不相瞒,当初在使用MongoDB的时候这个问题我也遇到过,但因为项目着急,就暂且的没去管它。直到昨天有个小伙伴儿问起我这个问题,我才想起来Word天,我也没解决,今天有空摸索了一下,最终有了答案,在此感谢这位小伙伴~!1.心路历程老司机温馨提示:本模块无重点,解决方案请直奔最后一题!    用过MongoDB以及SpringDat

2017-10-31 14:09:47

Maven项目连接&发布到Nexus私服

【前言】接上一篇。如果你本地还没有安装maven,那就……传送门;如果你还没有搭建Nexus环境,那就……传送门;【环境】Windows7x64、EclipseMars、Nexus2.14.5-02、apache-maven-3.3.3、JDK1.71.Maven项目连接私服我已经提前准备好了如下工作:(1)使用Ec

2017-09-22 10:09:11

使用Nexus搭建maven私服

【前言】    吃过苦,尝过甜,转眼之间又一年……不对,又快半年没写博客了,时间这个家伙跑的可真快呀,正好最近公司搭建了maven私服,借此机会总结一下。【环境】    Windows7x64、JDK1.7、Nexus2.X(OSS2.14.5-02)1.初识Nexus    既然你已经看到本篇文章了,说明你已经对Nex

2017-09-21 16:06:28

MongoDB进阶(九)Java中实现MongoDB自增主键ID

1.了解MongoDB的ObjectId    MongoDB的文档固定是使用“_id”作为主键的,它可以是任何类型的,默认是个ObjectId对象(在Java中则表现为字符串),那么为什么MongoDB没有采用其他比较常规的做法(比如MySql的自增主键),而是采用了ObjectId的形式来实现?别着急,咱们看看ObjectId的生成方式便可知悉。    ObjectId

2017-05-27 18:41:01

解决腾讯云服务器启动tomcat巨慢导致浏览器无法加载的方案

【系统环境】使用腾讯云服务器CentOS7.2JDK1.7Tomcat7.0其他部署网站的必备环境一切正常【问题描述】    通过URL(比如http://123.45.6.78/web)访问网站迟迟加载不出来,一直处于等待响应状态,通过命令查看tomcat的启动日志发现tomcat启动时间很长【问题分析】    通过仔细观察日志,tomcat启动

2017-04-26 14:15:13

MongoDB进阶(八)Spring整合MongoDB(Spring Data MongoDB)

最近比较忙,忙的都没空理csdn了,今天我继续迈着魔鬼般的步伐,摩擦摩擦……总结下最近学到的MongoDB的知识。1.认识SpringDataMongoDB    之前还的确不知道Spring连集成Nosql的东西都实现了,还以为自己又要手动封装一个操作MongoDB的API呢,结果就发现了SpringDataMongoDB。不愧是Spring,真是给了我们

2017-04-12 19:29:42

MongoDB学习(七)$操作符表达式大全及实例

写在前面    本文基于官网v3.4的文档翻译整理而来,包含了绝大多数常用的操作符,更多详细的使用还请参考官网(戳这里)。本人水平有限,若各位看官发现错误,还望及时留言指出,以免误导!共同学习,共同进步!1.查询和投影1.1比较操作符$eq语法:{:{$eq:}}释义:匹配等于(=)指定值的文档举例:查询age=20的文档:

2017-02-28 17:50:59

MongoDB学习(六)数据库的备份、还原、导入及导出

MongoDB官方提供了两套数据导入导出工具,一般来说,进行整库导出导入时使用mongodump和mongorestore,这一对组合操作的数据是BSON格式,进行大量dump和restore时效率较高。    进行单个集合导出导入时使用mongoexport和mongoimport,这一对组合操作的数据是JSON格式,可读性较高。1、mongodump(备份)及mongo

2017-02-22 19:17:51

Spring MVC 中使用H5接口FormData上传文件实例

1.什么是FormData?    先来看下Mozilla上的介绍:XMLHttpRequestLevel2添加了一个新的接口FormData.利用FormData对象,我们可以通过JavaScript用一些键值对来模拟一系列表单控件,我们还可以使用XMLHttpRequest的send()方法来异步的提交这个"表单".比起普通的ajax,使用FormData的最大优点就是我们可以

2017-01-19 17:37:06

Spring MVC 映射Date类型参数的解决方案

在SpringMVC中,无法直接将Date类型的数据映射绑定到Controller方法的参数中,因为Spring本身不支持这种类型的转换,所以这里有两种解决方案供小伙伴儿们参考一下下。1.自定义格式转换(荐)    在Controller中使用InitBinder(该注解在Spring2.5之后才有)注解来定义如下方法,即可解决Date类型转换问题:/** *

2017-01-13 15:06:33

不同版本(2.3-3.1)web.xml文件的schema头部声明

1.Servlet3.1JavaEE7XMLschema,命名空间是 http://xmlns.jcp.org/xml/ns/javaee/<web-appxmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:sche

2016-12-21 13:30:53

在Eclipse中使用maven创建web项目

之前用maven开发过项目,但长时间不用都forget了。如今又有一个maven的好差事,创建maven项目的时候遇到很多坑,所以现在决定总结总结,以备不时之需,亦或帮助他人少走弯路。先约定几个条件如下:系统中安装了Eclipse(那还用说....)装了maven并配了Eclipse(见上篇《文章》)示例使用jdk1.7,web3.0,tomcat7

2016-12-21 11:46:35

maven的安装及其在Eclipse中的配置

开写之前先来说明一下本文的示例条件:Windows7x64系统系统已安装jdk1.7,且环境变量是以“JAVA_HOME”的方式配置本文实际所用maven版本为3.3.3,演示版本为3.3.9EclipseMars1.maven的安装1.1下载    打开官网(http://maven.apache.org/download.cgi),选择最新的版本下载,

2016-12-20 16:54:07

查看更多

勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!