自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 Webx3原理分析

WebX3原理分析1 前言抽空总结了Webx3框架,如有错误,欢迎指正!2 背景知识2.1 MavenMaven主要解决了以下两个问题:(1)、它为项目构建引入了一个统一的接口,抽象了构建的生命周期,并为生命周期中的绝大部分任务提供了实现的插件。你不需要去关心这个生命周期里发生的事情,只需要把代码...

2016-07-09 19:05:34 2148 0

原创 使用JDB-debug调试

由JDK内置提供的debug调试工具

2016-06-16 14:42:05 359 0

原创 Volocity使用总结

基本展示: $!var 集合遍历: #foreach($var in $varList) $!var(!是避免var为空时,$var直接显示在页面上) #end

2016-06-15 11:46:25 441 0

原创 端口号被占用解决方法

Mac环境下: 1、查看占用端口号的pid,以端口8080为例       sudo lsof -i:8080  (需要输入密码) 2、根据1中的pid结束对应的进程       kill -9  pid Linux环境:  1、查看占用端口号的pid,以端口8080为...

2016-04-11 09:07:47 1442 0

原创 Java的四种引用类型分析

引用的基本概念 1.1、强引用 当我们使用new 这个关键字创建对象时被创建的对象就是强引用,如Object object = new Object() 这个Object()就是一个强引用了,如果一个对象具有强引用。垃圾回收器就不会去回收有强引用的对象。如当jvm内存不足时,具备强引用的对象,虚拟...

2016-03-30 11:24:53 330 0

原创 Dubbo分布式服务框架

Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。说到RPC框架和SOA服务治理,还是从"淘宝技术这十年"听过并尝试着了解这一块的内容,Dubbo是阿里开源的RPC框架,与其类似的还有HSF,但是这个应该是阿里内部框架。

2016-03-05 21:02:20 508 1

原创 Homebrew的使用

Homebrew的使用: linux系统有个通病,软件包依赖,好在当前主流的两大发行版本都自带了解决方案,Red hat有yum,Ubuntu有apt-get,但是mac os没有类似的东西,但是有第三方支持版本:Homebrew,Homebrew简称brew,是Mac OSX上的软件包管理工具,...

2016-03-05 18:16:25 364 0

原创 spring mvc使用Maven配置Velocity

在Spring mvc中视图解析器组件默认为Jsp,这仅仅是其中一种视图解析器。除了使用Jsp作为视图解析器之外,我们还可以使用Velocity、FreeMarker作为视图解析器,该文章主要针对Spring mvc配置Velocity作为spring mvc的视图解析器,至于配置Freemark...

2016-03-05 18:14:03 816 0

原创 Servet介绍及其生命周期

1、Servlet简介Servlet是java用于开发动态web资源的技术。是java web的基础。 2、Servlet生命周期Servlet程序是由WEB服务器调用,web服务器收到客户端的Servlet访问请求后: ①Web服务器首先检查是否已经装载并创建了该Servlet的实例对象。如果是...

2016-02-12 09:58:45 341 0

原创 SAX和DOM解析的xml的区别

DOM解析 DOM方法读取XML文档,需要将整个XML文档加载内存中,对系统资源占用比较多,尤其对内存比较紧张的Android系统来说,使用DOM方法读取XML文档 会有很大的限制。 SAX解析 使用SAX方法读取XML,对内存资源的占用的比较少,因此在嵌入式设备中极力推荐使用,网站项目也不例...

2016-02-12 09:54:58 292 0

原创 DTD和Schema

DTD和Schema是两种常用的xml文件的约束文件,都是用来约定XML文件,目的是会提示使用者让使用者按照规定的格式去书写XML,验证XML文件有效性。主要的区别有一下几点: 1、Schema遵循XML语法,学习成本低,不需要再学习新的语法;DTD和XML语法使用的是自己特殊的语...

2016-01-29 10:15:54 280 0

原创 Map遍历

public static void main(String[] args) {   Map map = new HashMap();   map.put("1", "value1");   map.put("2", "val...

2016-01-26 09:21:16 179 0

原创 QPS UV PV

QPS UV PVQPS:每秒查询率(Query Per Second),每秒的响应请求数,也即是最大的吞吐能力。 QPS= req/sec = 请求数/秒 QPS统计方式【一般使用http_load进行统计】峰值QPS: 原理:每天80%的访问集中在20%的时间里,这20%的时间叫做峰值时间 公...

2016-01-22 19:19:58 309 0

原创 Hash和一致性Hash算法

Hash Hash无论是数据结构还是分布式缓存,都有应用。Hash更确切的说是hash函数,是一个集合的数据到另一个集合内数据的一个映射。被映射方在数学里面叫做原象,这里我们叫做数据,映射到的叫象,这里我们称作槽。 分布式缓存服务器和应用服务器的区别在于,应用服务器中的所有服务器...

2016-01-10 15:19:46 459 0

原创 日志框架和日志系统

日志框架和日志系统 日志系统 Log4j,是较早出现的比较成功的日志系统,它开创的日志系统模型(如 Logger/Appender/Level)行之有效,且一直沿用至今; JUL(java.util.logging.*),JDK 1.4 自带的日志系统;JUL 并没有明显的优势来战胜Log...

2016-01-05 09:20:15 957 0

原创 StringUtil.isEmpty()和StringUtil.isBlank()的区别

1. public static boolean isEmpty(String str) 判断某字符串是否为空,为空的标准是str==null或str.length()==0 下面是StringUtils判断是否为空的示例: StringUtils.isEmpty(null) = true S...

2015-12-22 10:41:26 21290 2

原创 spring mvc使用Maven配置Velocity

Maven依赖配置<dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactI...

2015-12-22 10:25:33 486 0

原创 Mac卸载MySQL

Mac卸载MySQL由于Mac只有安装MySQL的方法,没有卸载MySQL的方法,只能使用命令行的方式进行卸载sudo rm /usr/local/mysql sudo rm -rf /usr/local/mysql* sudo rm -rf /Library/StartupItems/My...

2015-12-21 15:51:13 424 0

原创 IntelliJ IDEA 常用设置

####修改javaDoc签名 1、打开Setting 2、找到File and Code Templates 3、找到Includes 4、修改掉${User}为自定义用户名即可,可以改为 /** * Created by 姓名 on ${DATE}. */ ####导入包的时候...

2015-12-14 10:59:51 8076 0

原创 Linux修改hostname导致无法解析主机错误

电脑新安装系统后,默认的hostname为电脑品牌加上具体的型号很长的一串主机名,这样导致在terminal界面看起来很不友好,默认第一行全部被计算机名字占用了,然后便通过指令将hostname更改了:sudo vi /etc/hostname //输入计算机密码后,然后在里面配置自己自定义的主机...

2015-12-11 09:54:22 7010 0

原创 Velocity 页面四则运算

因为项目需求,在数据库里面存储的数据是美分,在前台显示要显示为美元,所以要对金额数据进行除10操作(其它除数可能需要考虑到无限小数的问题),但是因为使用Velocity进行四则运算和远程部署热部署问题导致了不少的坑,下面总结下使用Velocity如何正确的进行四则运算

2015-12-09 17:50:55 11274 2

原创 Java自定义注解

说到注解,也是面试中的重点高频知识点,因为利用注解加上反射可以做很多事情,通过注解对一些类或方法进行标示(override),通过注解、反射和AOP切面来做缓存,通过注解在类文件编译的时候添加一些自定义的结构或是方法(例:Lombok) 如果要自己写自定义注解,那我们应该知道我们系统的注解是什么...

2015-12-08 14:14:52 246 0

原创 Java常见异常总结

1. java.lang.NullPointerException(空指针异常) 调用了未经初始化的对象或者是不存在的对象,经常出现在创建图片,调用数组这些操作中,比如图片未经初始化,或者图片创建时的路径错误等等。对数组操作中出现空指针,即把数组的初始化和数组元素的初始化混淆起来了。数组的初...

2015-12-07 16:17:30 306 0

原创 单例模式

单例模式 单例模式在全局范围内,同一个类只构造一个对象,全局范围可以引用。减少因对象创造、销毁带来的资源消耗。(项目中的应用:spring容器中所有的bean都是单例的),因为是单例,也就意味着只能多线程环境下使用,所以不得不考虑线程安全的问题,所以应该尽量避免使用类的实例变量,因为在单例的环境下...

2015-12-01 16:49:30 279 0

原创 Java实现Date日期加一天

因为在项目中遇到了需要将日期进行加减一些天数的操作,但是自己加需要考虑到跨月的情况,所以便找了Java提供的相关的API,方法如下date=new date(); //取时间 Calendar calendar = new GregorianCalendar(); calendar.s...

2015-12-01 13:34:44 31246 0

转载 VO、DTO、DO、PO的概念、区别和用处

概念: VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。 DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次...

2015-11-30 12:49:48 326 0

原创 spring mvc原理分析

什么是spring mvc? spring mvc是spring框架的一个模块,spring mvc和spring无需通过中间整合层整合 spring mvc是一个基于mvc的web框架 spring mvc框架 spring mvc框架原理(掌握) 前端控制器、处理器映射器、处理器适配器、...

2015-11-23 09:18:50 302 0

原创 mybatis原理分析

在使用mybatis之前,我们要知道不使用Mybatis的时候我们用JDBC是如何做数据库相关的操作,进而才会更加深刻的理解为什么我们要使用mybatis这种ORM框架,当然ORM框架还有一个比较有名的开源框架Hibernate,本文我会重点讲解为什么将JDBC封装成Mybatis这样一种持久层框...

2015-11-23 09:17:01 514 0

原创 Lombok精简Java代码及安装使用

Lombok是一个Jar的包,一种Java使用工具,通过注解的方式实现对Java代码的精简和优化,通过在项目中引入Lombok的jar包和在IDE集成开发环境中安装相应的Lombok插件,开发人员就可以节省构建冗余方法所耗费的大量时间,进而提升开发效率

2015-11-20 09:55:08 310 0

原创 使用IntelliJ IDEA如何使用远程debug

项目的部署方式有在本地搭建服务器进行启动或是debug,或是将项目在远程服务器上面部署。一般如果在本地搭建服务器的时候,可以直接选择启动或是直接debug,但是如果项目部署在远程的服务器上面的时候, 我们该如何进行调试呢?这时候我们就需要用远程debug,通过远程服务器的ip地址和远程开启的deb...

2015-11-19 16:23:39 15808 0

原创 Linux系统日常笔记总结

Linux系统简介:Linux系统是一个免费使用和自由传播的操作系统 Linux应用: 1.Linux作为Internet网络服务器的应用 --提供Web DNS FTP和Mail服务 2.Linux作为中小企业内部服务器的应用 --提供网络代理 网络防火墙 DHCP和文件共享服务 3.Linu...

2015-11-16 17:51:54 568 0

原创 svn日常笔记总结

SVN是Subversion的简称,是一个开放源代码的集中式的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。但是相比较于分布式的Git分布式版本管理系统还是有很大的差距,目前新项目几乎统一采用的是Git作为版本管理工具,但是很多公司的老项目依旧采用的是svn...

2015-11-16 13:54:56 407 0

原创 Linux系统下安装Intellij IDEA

安装Intellij IDEA之前首先要安装的是JDK,并配置好相关的环境变量 (1)首先到官网下载相关Intellij IDEA的安装包:http://www.jetbrains.com/idea/download/ (2)解压安装文件  tar xvzf ideaIC-14.0.1.tar.g...

2015-11-16 10:33:20 1408 0

原创 Linux系统环境变量设置

由于Linux操作系统是多用户操作系统,所以对应的环境变量Path有两种,一种是单一用户的环境变量Path,一种是全局的环境变量Path 1、设置系统环境变量变量的方法:使用终端输入sudo vi /etc/envirment,根据提示输入密码,在PATH="...."的末尾处...

2015-11-14 23:24:57 312 0

原创 一方库、二方库、三方库

一方库:自己项目中的各模块的相互依赖 二方库:公司内部的依赖库,一般放在公司Maven私服上,指公司内部的引用或是被引用的jar包 三方库:公开的外部依赖jar包

2015-11-12 16:54:10 1443 0

原创 Ubuntu下面vi编辑器使用方向键会出现ABCD解决办法

ubuntu下 vi输入方向键会变成ABCD 先卸载vim-tiny: $ sudo apt-get remove vim-common 再安装vim full: $ sudo apt-get install vim

2015-11-12 14:40:37 327 0

原创 Git日常笔记总结

git init:git仓库初始化 git config - -global user.name “ahpuchunwei” git config - -global user.email ahpuchunwei@163.com git remote remove origin master删...

2015-10-16 12:56:40 298 0

原创 Java Web学习路线

什么是spring mvc? spring mvc是spring框架的一个模块,spring mvc和spring无需通过中间整合层整合 spring mvc是一个基于mvc的web框架 spring mvc框架 spring mvc框架原理(掌握) 前端控制器、处理器映射器、处理器适...

2015-08-25 16:11:14 520 0

原创 数据结构日常笔记总结

数据结构概述 定义: 我们如何把现实中大量而复杂的问题以特定的数据类型和特定的存储结构保存到主存储器(内存)中, 以及在此基础上为实现某个功能(比如查找某个元素,删除某个元素,对所有元素进行排序)而执行的的相应 操作,这个相应的操作也叫算法 数据结构=个体+个体的关系 算法=对存储数据的操作 算法...

2015-08-13 09:01:57 440 0

转载 数据库设计三大范式

为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库,必须满足一定的范式。                   在实际开发中最为常见的设计范式有三个: 1.第一范...

2015-08-08 12:15:48 304 0

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