自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 处理器拦截器详解

spring Web MVC的处理器拦截器(如无特殊说明,下文所说的拦截器即处理器拦截器)类似于Servlet开发中的过滤器Filter,用于对处理器进行预处理和后处理。5.1.1、常见应用场景1、日志记录:记录请求信息的日志,以便进行信息监控、信息统计、计算PV(Page View)等。2、权限检查:如登录检测,进入处理器检测检测是否登录,如果没有直接返回

2016-12-28 20:05:23 425

原创 Spring MVC启动过程

以Tomcat为例,想在Web容器中使用Spirng MVC,必须进行四项的配置:修改web.xml,添加servlet定义、编写servletname-servlet.xml( servletname是在web.xm中配置DispactherServlet时使servlet-name的值) 、配置contextConfigLocation初始化参数、配置ContextLoaderLister

2016-12-27 22:23:48 390

原创 解释为什么Spring 默认会加载/WEB-INF/applicationContext.xml

/* * Copyright 2002-2014 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * Y

2016-12-27 19:59:30 1913

转载 用Spring Boot颠覆Java应用开发

使用Java做Web应用开发已经有近20年的历史了,从最初的Servlet1.0一步步演化到现在如此多的框架,库以及整个生态系统。经过这么长时间的发展,Java作为一个成熟的语言,也演化出了非常成熟的生态系统,这也是许多公司采用Java作为主流的语言进行服务器端开发的原因,也是为什么Java一直保持着非常活跃的用户群。Java开发概述:使用Java做Web应用开发已经有近2

2016-12-26 22:27:22 586

转载 软件系统设计思路

摘要: 拿到一份需求,项目负责人是怎么想的?整个项目的架构设计和思路又是怎么样的?希望能有大师能够指点一下迷津。 下面是我转载的一篇文章,大家也可以指出哪里可以补充或者需要特别指出来的。谢谢。要设计一个面向对象的系统,建议遵循如下思路:  1.  调研,完成一份详细的需求文档   (1)系统要实现什么功能   (2)性能上有什么特别的要求   (3)哪些是技术难点,可以

2016-12-26 19:56:44 17123

原创 Spring ConcurrentReferenceHashMap简单测试

Spring ConcurrentReferenceHashMap简单测试ConcurrentReferenceHashMap是自spring3.2后增加的一个同步的软(虚)引用Map。关于软引用(SoftRefrence)和虚引用(WeakRefrence)可以参见java四种引用类型。废话不多说直接上测试代码:@Testpublic void test() throws Inte

2016-12-25 20:38:45 2724 3

原创 Apache Commons类库大全

最近开始研究Apache commons 这个类库,发现里面有很多好用的库,研究明白了可以事半功倍。贴在这里mark 一下。ComponentsDescriptionLatest VersionReleasedBCELByte Code Engineering Library - analyze, create, and ma

2016-12-25 17:42:16 1487

原创 二叉树的广度优先遍历

package com.dengpf.BinaryTreeLevelOrderTraversal;import java.util.ArrayList;import java.util.LinkedList;import java.util.List;import java.util.Queue;/** * Definition for a binary tree node. *

2016-12-24 16:41:17 367

原创 计算一个二叉树的深度

// 获取最大深度 public static int getMaxDepth(TreeNode root) { if (root == null) return 0; else { int left = getMaxDepth(root.left); int right = getMa

2016-12-24 16:08:31 860

原创 LeetCode Linked List Cycle II 计算带环的链表的起点

图:设:链表头是X,环的第一个节点是Y,slow和fast第一次的交点是Z。各段的长度分别是a,b,c,如图所示。环的长度是L。slow和fast的速度分别是qs,qf。第一次相遇时slow走过的距离:a+b,fast走过的距离:a+b+c+b。因为fast的速度是slow的两倍,所以fast走的距离是slow的两倍,有 2(a+b) =

2016-12-24 14:49:25 799

转载 Hibernate 延迟加载剖析与代理模式应用

Hibernate 的延迟加载(lazy load)是一个被广泛使用的技术。这种延迟加载保证了应用只有在需要时才去数据库中抓取相应的记录。通过延迟加载技术可以避免过多、过早地加载数据表里的数据,从而降低应用的内存开销。Hibernate 的延迟加载本质上就是代理模式的应用,当程序通过 Hibernate 装载一个实体时,默认情况下,Hibernate 并不会立即抓取它的集合属性、关联实体所以对

2016-12-21 21:10:28 240

转载 全面分析 Spring 的编程式事务管理及声明式事务管理

Spring 的事务管理是 Spring 框架中一个比较重要的知识点,该知识点本身并不复杂,只是由于其比较灵活,导致初学者很难把握。本教程从基础知识开始,详细分析了 Spring 事务管理的使用方法,为读者理清思路。开始之前关于本教程本教程将深入讲解 Spring 简单而强大的事务管理功能,包括编程式事务和声明式事务。通过对本教程的学习,您将能够理解 S

2016-12-21 20:45:21 435

转载 JVM 优化经验总结

本文讲解了如何将新对象预留在年轻代、如何让大对象进入年老代、如何设置对象进入年老代的年龄、稳定的 Java 堆 VS 动荡的 Java 堆、增大吞吐量提升系统性能、尝试使用大的内存分页、使用非占有的垃圾回收器等主题。开始之前Java 虚拟机有自己完善的硬件架构, 如处理器、堆栈、寄存器等,还具有相应的指令系统。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Jav

2016-12-21 20:13:49 275

原创 合并两个有序链表

Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists.Subscribe to see which companies asked this questio

2016-12-20 16:16:20 291

原创 3Sum

Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero.Note: The solution set must not contain

2016-12-17 16:53:32 272

原创 指定数组的下标,如果数组元素等于指定值

Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exactly one solution.Example:Given nums = [2, 7, 11,

2016-12-17 13:15:45 586

原创 判断是否是回文数字

package com.dengpf.HuiWen;/** * Created by kobe73er on 16/12/17. */public class Solution { public boolean isPalindrome(int x) { String result = String.valueOf(x); int start

2016-12-17 12:59:32 391

原创 Implement atoi to convert a string to an integer.

package com.dengpf.StringToInteger;/** * Created by kobe73er on 16/12/17. */public class Solution { public int myAtoi(String str) { if (str == null || str.length() < 1) re

2016-12-17 11:45:25 638

原创 自己实现LRUCache

LRU的典型实现是double linked list + hash map。 双向链表根据每个节点最近被访问的时间有序存储,最近被访问的节点存储在表头,最近没有被访问的节点存储的表尾,存储依据是因为:最近被访问的节点在接下来的一段时间仍有很大的概率被再次访问到。 哈希表的作用是用来提高查找效率,如果不使用哈希表,则查找一个节点的时间复杂度是O(n),而使用了哈希表,则每个节点的查找时间复杂度为O

2016-12-17 09:27:08 584

原创 Longest string

/** * Created by kobe73er on 16/12/9. * * Examples: * * Given "abcabcbb", the answer is "abc", which the length is 3. * * Given "bbbbb", the answer is "b", with the length of 1. * * Given

2016-12-15 21:20:36 276

原创 Add two numbers

package com.dengpf.AddTwoNumbers;import org.w3c.dom.ls.LSException;import java.util.ArrayList;import java.util.LinkedList;/** * Created by kobe73er on 16/12/9. * * /** * Definition for sin

2016-12-15 21:18:27 386

翻译 JMS 和 ActiveMQ

JMS with ActiveMQ JMS short for Java Message Service provides a mechanism for integrating applications in a loosely coupled, flexible manner. JMS delivers data asynchronously across applicatio

2016-12-05 15:14:47 274

空空如也

空空如也

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

TA关注的人

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