自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(84)
  • 收藏
  • 关注

原创 Maven依赖中的scope详解

Maven的一个哲学是惯例优于配置(Convention Over Configuration), Maven默认的依赖配置项中,scope的默认值是compile,项目中经常傻傻的分不清,直接默认了。今天梳理一下maven的scope。scope的分类compile默认就是compile,什么都不配置也就是意味着compile。compile表示被依赖项目需要参与当前项目的编译...

2018-03-14 14:48:21 440

原创 Spring Cache注解+Redis(二)

之前有写过一篇Spring Cache注解+Redis今天对Cache+Redis配置的优化。 首页还是Jar的依赖,请看之前的文章,这里不做赘述。然后后XML的配置:<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/bea...

2017-08-25 15:41:58 346

原创 Lombok使用(eclipse、idea)与注解指南

在 java平台上,lombok 提供了简单的注解的形式来帮助我们消除一些必须有但看起来很臃肿的代码, 比如属性的get/set,及对象的toString等方法,特别是相对于 POJO; eclipse中使用Lombokwindows环境1.下载lombok.jar包https://projectlombok.org/download.html,或在maven中下载;2.运...

2017-08-15 18:36:59 412

原创 函数式编程(二) 高阶函数

  上一篇博客介绍了函数式编程中的基础知识: 1)什么是编程范式; 2)编程函数与数学函数的关系。   上篇文章介绍了函数式编程属于声明式编程范式中的一种,它仿照数学概念中的公式演算去解决问题,是一种更接近数学语言的编程方式。并且我们知道函数式编程中所有的函数都是“纯函数(Pure Function)”,因为只有纯函数才符合数学中对函数的定义,即: 1)函数均有输...

2017-08-15 18:13:35 159

原创 函数式编程(一) 认识“编程范式”和“函数”

 编程范式(Programming paradigm)   编程范式指我们在编写程序解决问题的思路和视角。它提供了同时也决定了程序员对程序运行的看法。计算机编程中存在许多编程范式,如命令式编程、声明式编程、面向对象编程以及结构化编程等等。其中面向对象编程范式认为程序是由一系列相互作用的对象组成,而结构化编程范式认为程序采用子程序、代码区块、for循环以及while循环等结构组成。下...

2017-08-15 18:06:20 187

原创 log4j配置补充

Log4j组件构成  Log4j由三个重要的组件构成: 1.日志信息的优先级(Logger)2.日志信息的输出目的地(Appender)3.日志信息的输出格式(Layout)。 概要: 日志信息的优先级从高到低有ERROR、WARN、 INFO、DEBUG,分别用来指定这条日志信息的重要程度; 日志信息的输出目的地指定了日志将打印到控制台还是文件中...

2017-08-06 16:13:28 92

原创 web工程日志文件log.properties参数说明

log4j.properties  里边的内容如下:### set log levels ###log4j.rootLogger = debug,stdout,Elog4j.appender.stdout = org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.Target = System.outlog4j.app...

2017-08-06 15:49:39 381

原创 Spring调度和后台任务

   Spring应用上下文中添加一行配置:xmlns:task="http://www.springframework.org/schema/task" http://www.springframework.org/schema/taskhttp://www.springframework.org/schema/task/spring-task-3.0.xsd"     元素是...

2017-08-06 15:45:34 667

原创 spring dubbo 配置,项目中连接多个注册中心

 如果项目需要连接多个ZooKeeper,则定义多个dubbo:registry,对应的dubbo:reference与dubbo:service指定的注册中心registry="registry1"。    <?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframe...

2017-07-26 17:32:00 1740

原创 Eclipse报错:java.lang.ClassNotFoundException: ContextLoaderListener

Eclipse中tomcat部署工程启动后报错:Shell代码  严重: Error configuring application listener of class org.springframework.web.context.ContextLoaderListener  java.lang.ClassNotFoundException: org.springf...

2017-06-26 19:42:07 122

原创 Git分支管理策略

相比同类软件,Git有很多优点。其中很显著的一点,就是版本的分支(branch)和合并(merge)十分方便。有些传统的版本管理软件,分支操作实际上会生成一份现有代码的物理拷贝,而Git只生成一个指向当前版本(又称"快照")的指针,因此非常快捷易用。 但是,太方便了也会产生副作用。如果你不加注意,很可能会留下一个枝节蔓生、四处开放的版本库,到处都是分支,完全看不出主干发展的脉络。 ...

2017-06-26 19:33:17 82

原创 maven多环境配置打包

      在开发过程中,我们的软件会面对不同的运行环境,比如开发环境、测试环境、生产环境,而我们的软件在不同的环境中,有的配置可能会不一样,比如数据源配置、日志文件配置、以及一些软件运行过程中的基本配置,那每次我们将软件部署到不同的环境时,都需要修改相应的配置文件,这样来回修改,是个很麻烦的事情。有没有一种方法能够让我们不用修改配置就能发布到不同的环境中呢?当然有,这就是接下来要做的事。...

2017-06-08 20:42:51 144

原创 Git版本恢复命令reset

reset命令有3种方式: 1:git reset –mixed:此为默认方式,不带任何参数的git reset,即是这种方式,它回退到某个版本,只保留源码,回退commit和index信息      git reset HEAD~1 意为将版本库回退1个版本,将本地版本库的头指针全部重置到指定版本,且会重置暂存区,即这次提交之后的所有变更都移动到未暂存阶段。 2:git r...

2017-06-08 20:02:03 372

原创 Git中三种文件状态及其转换

      Git作为一种版本控制解决方案,由于其具有的分布式特性,正被越来越多的用户熟知,一些有名的开源项目,如:Linux kernel,CakePHP,Ruby on Rails等,都在使用Git进行版本管理。       在Git中,文件状态是一个非常重要的概念,不同的状态对应不同的操作。因此,要想熟练掌握Git的用法,需要了解Git的几种文件状态。       为了说...

2017-06-08 19:13:44 361

原创 java的几种对象(po,dto,dao等)

j2ee中,经常提到几种对象(object),理解他们的含义有助于我们更好的理解面向对象的设计思维。     POJO(plain old java object):普通的java对象,有别于特殊的java对象(含继承约束等)和EJB。POJO一般只有一系列的属性和相应的get、set方法。     PO(persistant object):持久化对象,有别于POJO,必须对应数据库中的实体。一...

2017-06-05 14:06:49 112

原创 将博客搬至CSDN

搬家

2017-05-24 15:42:23 84

原创 spring session redis管理

项目使用的是SpringMVC+hibernate,由于部署使用nginx代理发布多台服务(多个tomcat),使用Spring-Session进行处理session,用redis托管Session。下面为处理方式步骤:1.如果项目之前没有整合过spring-data-redis的话,这一步需要先做,在maven中添加这几个依赖:<!-- config redis data a...

2016-11-23 14:42:51 171

原创 Textile 标记语言 基础语法

语法标题h1. 标题一h2. 标题二h3. 标题三h4. 标题四h5. 标题五h6. 标题六字体显示输入黑体*黑体*斜体_斜体_删除线-删除线-下划线+下划线+下标sub下标 ~sub~上标sup上标 ^sup^所有这些标记基本都要保证*、-这些字符不在一个英文单...

2016-11-03 14:51:04 2322

原创 缓存、缓存算法和缓存框架简介

引言我们都听过 cache,当你问他们是什么是缓存的时候,他们会给你一个完美的答案,可是他们不知道缓存是怎么构建的,或者没有告诉你应该采用什么标准去选择缓存框架。在这边文章,我们会去讨论缓存,缓存算法,缓存框架以及哪个缓存框架会更好。面试“缓存就是存贮数据(使用频繁的数据)的临时地方,因为取原始数据的代价太大了,所以我可以取得快一些。”这就是 programmer one (p...

2016-10-31 16:12:36 682

原创 nginx+tomcat集群后session的处理

       单节点低负荷的情况下,我们通常把一个WEB应用打成WAR包放WEB应用服务器,如TOMCAT下运行就行了(如图1)。但随着用户量的增加,系统负载日益增长,这时我们通常就会采用多台WEB应用服务器组成集群来分担负荷(tomcat1, tomcat2上同时部署了应用application1; tomcat3上单独部署了应用application3),这时某一用户对同一应用的访问就有可...

2016-10-20 16:35:48 102

原创 nginx负载均衡方式用法教程

        有关nginx负载均衡的常用方式,包括轮询方式、按权重分配方式、ip hash分配方式,以及nginx负载均衡对server控制的方法。一、nginx负载均衡方式1、轮询方式       轮询即Round Robin,根据Nginx配置文件中的顺序,依次把客户端的Web请求分发到不同的后端服务器。upstream test_up { server ...

2016-10-19 11:45:32 167

原创 nginx中upstream负载均衡配置详解

有关nginx负载均衡的配置方法,nginx中负载后端服务是使用upstream,这里就介绍下upstream的一些选项,包括轮循方式、权重、ip_hash等,需要的朋友参考下。nginx负载均衡选项upstream用法举例nginx中upstream的几种方式:1、轮询(weight=1)默认选项,当weight不指定时,各服务器weight相同,每个请求按时间顺序逐一分配到不...

2016-10-19 11:09:08 206

原创 Spring Cache注解+Redis

依赖jar包:  <!-- config redis data and client jar--> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spr...

2016-10-18 17:52:27 181

原创 Tomcat自带log的配置

问题tomcat每次启动时,自动在logs目录下生产以下日志文件,且每天都会生成对应日期的一个文件,造成日志文件众多:     localhost.2012-07-05.txt     catalina.2012-07-05.txt     manager.2012-07-05.txt     host-manager.2012-07-05.txt目的     To...

2016-10-12 17:13:44 466

原创 Java enum的用法详解

用法一:常量在JDK1.5 之前,我们定义常量都是: public static fianl.... 。现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法。 public enum Color { RED, GREEN, BLANK, YELLOW }  用法二:switch JDK1.6之前的switch语句只支持...

2016-10-12 15:50:13 59

原创 java enum(枚举)使用详解 + 总结

    enum 的全称为 enumeration, 是 JDK 1.5  中引入的新特性,存放在 java.lang 包中。    下面是我在使用 enum 过程中的一些经验和总结,主要包括如下内容:1. 原始的接口定义常量2. 语法(定义)3. 遍历、switch 等常用操作4. enum 对象的常用方法介绍5. 给 enum 自定义属性和方法6. EnumSe...

2016-10-12 15:30:10 98

原创 Java 语言中 Enum 类型的使用介绍

Enum 类型的介绍枚举类型(Enumerated Type) 很早就出现在编程语言中,它被用来将一组类似的值包含到一种类型当中。而这种枚举类型的名称则会被定义成独一无二的类型描述符,在这一点上和常量的定义相似。不过相比较常量类型,枚举类型可以为申明的变量提供更大的取值范围。举个例子来说明一下,如果希望为彩虹描绘出七种颜色,你可以在 Java 程序中通过常量定义方式来实现。清单 1...

2016-10-12 15:09:04 115

原创 spring-aop-@Aspect说明

@AspectJ的详细用法 在spring AOP中目前只有执行方法这一个连接点,Spring AOP支持的AspectJ切入点指示符如下:一些常见的切入点的例子 execution(public * * (. .)) 任意公共方法被执行时,执行切入点函数。 execution( * set* (. .)) 任何以一个“set”开始的方法被执行时,执行切入点函数。 execution( * ...

2016-10-10 17:19:31 206

原创 Spring依赖注入:注解注入总结

注解注入顾名思义就是通过注解来实现注入,Spring和注入相关的常见注解有Autowired、Resource、Qualifier、Service、Controller、Repository、Component。Autowired是自动注入,自动从spring的上下文找到合适的bean来注入Resource用来指定名称注入Qualifier和Autowired配合使用,指定bean...

2016-09-29 11:34:00 95

原创 Jackson解析首字母大写的json字符串

最近在项目中调用.NET的服务时,Jackson在解析返回的json字符串时始终报错,纠结很久之后才找到原因,原来是是由于json字符串中的字母都是首字母大写,导致jackson找不到相应的KEY。        解决方法有两种: 直接将bean对象中的属性改为public,属性名命名为首字母大写,比如{"Name":"nomouse","Age":12},定义相应的bean为:...

2016-09-25 16:18:19 805

原创 Json解析工具Jackson(使用注解)

jackson在实际应用中给我们提供了一系列注解,提高了开发的灵活性,下面介绍一下最常用的一些注解@JsonIgnoreProperties         此注解是类注解,作用是json序列化时将java bean中的一些属性忽略掉,序列化和反序列化都受影响。@JsonIgnore         此注解用于属性或者方法上(最好是属性上),作用和上面的@JsonIgn...

2016-09-25 15:45:14 114

原创 Json解析工具Jackson(简单应用)

概述         Jackson库(http://jackson.codehaus.org),是基于java语言的开源json格式解析工具,整个库(使用最新的2.2版本)包含3个jar包:jackson-core.jar——核心包(必须),提供基于“流模式”解析的API。jackson-databind——数据绑定包(可选),提供基于“对象绑定”和“树模型”相关API。...

2016-09-25 15:43:34 64

原创 使用Java添加图片水印和文字水印

方法一: import java.awt.*; import java.awt.image.*; import java.io.*; import javax.swing.*; import com.sun.image.codec.jpeg.*; public class WaterSet { /** */ /** ...

2016-09-21 15:41:11 267

原创 搭建Git服务器

搭建Git服务器需要准备一台运行Linux的机器,强烈推荐用Ubuntu或Debian,这样,通过几条简单的apt命令就可以完成安装。假设你已经有sudo权限的用户账号,下面,正式开始安装。第一步,安装git:$ sudo apt-get install git第二步,创建一个git用户,用来运行git服务:$ sudo adduser git第三步,创建证书登录...

2016-09-21 14:18:30 60

原创 【持久化框架】Mybatis与Hibernate的详细对比

摘自: http://blog.csdn.net/jiuqiyuliang/article/details/45378065 作为一位优秀的程序员,只知道一种ORM框架是远远不够的。在开发项目之前,架构的技术选型对于项目是否成功起到至关重要的作用。我们不仅要了解同类型框架的原理以及技术实现,还要深入的理解各自的优缺点,以便我们能够在项目的实施过程中面对的困难更少。所以这篇博文我们要将...

2016-09-12 12:02:48 82

原创 Hibernate和MyBatis比较

摘自: http://www.cnblogs.com/inspurhaitian/p/4647485.html 我是一名java开发人员,hibernate以及mybatis都有过学习,在java面试中也被提及问道过,在项目实践中也应用过,现在对hibernate和mybatis做一下对比,便于大家更好的理解和学习,使自己在做项目中更加得心应手。第一方面:开发速度的对比就开发速度...

2016-09-12 12:01:11 74

原创 Linux服务器配置——搭建SVN服务器

 1,安装SVN服务端直接用apt-get或yum安装subversion即可(当然也可以自己去官方下载安装) sudo apt-get install subversion  2,创建版本库 svnadmin create /home/myrepos //这里的文件目录自己随便设置目录用途说明:hooks目录:放置hook脚本文件的目录lo...

2016-07-26 13:08:34 69

原创 公司职位英文及缩写大全

公司高层职位的英文缩写:CEO : Chief Executive Officer 首席执行官CFO : Chief Financial Officer 首席财务官COO : Chief Operated Officer 首席运营官CTO : Chief Technology Officer 首席技术官CIO : Chief Information Officer 首席信息官CRO : Chief...

2016-07-22 17:50:11 23913

原创 ubuntu安装和查看已安装

说明:由于图形化界面方法(如Add/Remove... 和Synaptic Package Manageer)比较简单,所以这里主要总结在终端通过命令行方式进行的软件包安装、卸载和删除的方法。一、Ubuntu中软件安装方法1、APT方式(1)普通安装:apt-get install softname1 softname2 …;(2)修复安装:apt-get -f install ...

2016-05-31 21:04:10 96

原创 Linux添加/删除用户和用户组

本文总结了Linux添加或者删除用户和用户组时常用的一些命令和参数。1、建用户:adduser phpq                             //新建phpq用户passwd phpq                               //给phpq用户设置密码2、建工作组groupadd test                          //新建te...

2016-05-26 14:57:43 118

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除