自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Java 攻城狮~~

一名Java攻城狮,喜欢研究相关的技术,对计算机的任何方面都感兴趣。真正的全栈,装系统,搭服务器,搭分布式,搭集群,操作数据库,搭框架,设计,写后端,写前端,单元测试,集成测试,联调,优化,部署

  • 博客(31)
  • 收藏
  • 关注

转载 Spring AOP的底层实现技术 Proxy InvocationHandler

AOP概述软件的编程语言最终的目的就是用更自然更灵活的方式模拟世界,从原始机器语言到过程语言再到面向对象的语言,我们看到编程语言在一步步用更自然、更强大的方式描述软件。AOP是软件开发思想的一个飞跃,AOP的引入将有效弥补OOP的不足,OOP和AOP分别从纵向和横向对软件进行抽象,有效地消除重复性的代码,使代码以更优雅的更有效的方式进行逻辑表达。AOP有三种植入切面的方法:其一是编

2016-07-12 17:50:55 625

转载 Spring aop利用jdk的InvocationHandler产生动态代理

笔记之用……首先有一个接口UserService package com.spring.test;import org.springframework.stereotype.Component;@Componentpublic interface UserService { public void createUser(); public void

2016-07-12 17:28:20 1754

转载 Spring Aop配置使用示例及实现过程和原理介绍

相信只要使用过Spring框架的,大家对于AOP都不陌生,尤其提起它就能立刻随口说出,一般用在日志处理、异常处理、权限验证等方面。今天通过例子了解了Spring Aop的配置使用(注意不是AspectJ的配置使用)及通过源码了解了Spring Aop大致的实现过程和原理。一、相关概念JointPoint系统在运行之前,AOP的功能模块需要织入到OOP的功能模块中。要进行这种

2016-07-12 17:26:20 695

转载 JDK的动态代理深入解析(Proxy,InvocationHandler)

创建Proxy对象,测试public class ProxyTest_old {     public static void main(String[] args) {        UserDao userDao = new UserDaoImpl();        LogHandler_old logHandler = new LogHandler_old(

2016-07-12 17:24:50 492

转载 java jdk动态代理详解

动态代理类的Class实例是怎么生成的呢,是通过ProxyGenerator类来生成动态代理类的class字节流,把它载入方法区jdk动态代理要对一个类进行代理,被代理的类必须实现至少一个接口,并且只有接口中的方法才能被代理。jdk实现动态代理一般分为三步:1. 编写接口和实现类。2. 写一个处理器,该处理器实现InvocationHandler接口

2016-07-12 17:06:07 432

转载 【SSH进阶之路】Struts + Spring + Hibernate 进阶开端(一)

Long Long ago,就听说过SSH,起初还以为是一个东东,具体内容更是不详,总觉得高端大气上档次,经过学习之后才发现,不仅仅是高大上,更是低调奢华有内涵,经过一段时间的研究和学习SSH框架的基本原理与思想,总算接地气了。作为初学者,有点小小收获,想通过以博文的形式和大家一起分享,共同进步,在更新博文的过程中难免有认识不足的地方,还请各位大牛提出宝贵的建议,对于好的建议一定虚心接受,认真学习

2016-07-11 16:09:48 457

原创 SpringMVC框架

spring mvc框架是一个MVC框架,通过实现MVC很好的将数据、业务、展现进行分离框架搭建的简单步骤:1、创建Java工程,配置构建路径,引入SpringMVC相关的jar包2、配置Web.xml文件,配置前端控制其DispatcherServlet3、在WEB-IFO下面创建SpringMVC配置文件,文件命名为[servletname]-servlet

2016-07-11 16:07:24 356

转载 【持久化框架】SpringMVC+Spring4+Mybatis3集成,开发简单Web项目+源码下载

上篇博文我们介绍了mybatis的基本概念与原理,这篇博文我们通过Spring与Mybatis集成,开发一个简单用户增删改查的Web项目。 基本准备工作 1、安装JDK1.6以上版本,安装与配置2、下载mybatis-3.2.0版:https://repo1.maven.org/maven2/org/mybatis/mybatis/3、下载mybat

2016-07-11 16:05:23 1173

转载 【项目管理与构建】Nexus的详细介绍以及安装(四)

前面几篇博文,我们介绍了怎么使用maven,这篇博文我们简单的介绍maven的私服Nexus。简介        Nexus是Maven仓库管理器,也可以叫Maven的私服。Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问。利用Nexus你可以只在一个地方就能够完全控制访问和部署在你所维护仓库中的每个Artifact。

2016-07-11 16:03:49 414

转载 【持久化框架】Mybatis简介与原理

从这篇博文开始我们学习一下Mybatis,希望大家提出宝贵的建议。 什么是Mybatis        MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。iBATIS一词来源于“internet”和“abatis”的组合,是一

2016-07-11 16:02:25 433

转载 【持久化框架】Mybatis与Hibernate的详细对比

这篇博文我们重点分析一下Mybatis与Hibernate的区别,当然在前面的博文中我们已经深入的研究了Mybatis和Hibernate的原理。Mybatis【持久化框架】Mybatis简介与原理【持久化框架】SpringMVC+Spring4+Mybatis3集成,开发简单Web项目+源码下载Hibernate【SSH进阶之路】Hibernate基本原理(一)【

2016-07-11 16:01:39 317

转载 【项目管理和构建】十分钟教程,eclipse配置maven + 创建maven项目(三)

上篇博文中我们介绍了maven下载、安装和配置(二),这篇博文我们配置一下eclipse,将它和maven结合,并我们创建一个maven的项目。准备工作在eclipse配置maven之前需要我们做好准备工作,如下: 1. 安装jdk 2. 已安装好 maven,将maven配置成功 3. 下载Eclipse,解压缩安装完成,建立工作空间。 这些内容相信大家都已经轻车

2016-07-11 15:59:55 353

原创 【项目管理和构建】——Maven下载、安装和配置(二)

前言在上篇博文【项目管理和构建】——Maven简介(一)中我们了解到maven是一种全新的项目构建方式,让我们的开发更加简单,高效。Maven主要做的是两件事:统一开发规范与工具统一管理jar包这两件事情他都做到了,而且还做了更多的事情。Maven还可以管理项目的整个声明周期,包括编 译,构建,测试,发布,报告等等。目前Apache下绝大多数项目都已

2016-07-11 15:59:20 317

转载 【项目管理和构建】——Maven简介(一)

在现实的企业中,以低成本、高效率、高质量的完成项目,不仅仅需要技术大牛,企业更加需要管理大牛,管理者只懂技术是远远不够的。当然,管理可以说有很多的方面,例如:对人员的管理,也有对项目的管理等等。如果你想成为一个优秀的管理者,你必须得会使用高大上的管理工具。      从这篇博文开始,我会给大家介绍更多的项目管理工具,经过点点滴滴的积累,不断的进步,最终成为管理大牛。简介

2016-07-11 15:58:33 343

转载 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2016-07-09 21:51:30 297

转载 关于getClass().getClassLoader()

InputStream   is   =   getClass().getClassLoader().getResourceAsStream("helloworld.properties");中getClass()和getClassLoader()都是什么意思呀.getClass():取得当前对象所属的Class对象  getClassLoader():取得该Class对象的类装载器类

2016-07-09 21:41:25 945

转载 java解析xml的4种经典方法

==========================================xml文件<?xml version="1.0" encoding="GB2312"?> <RESULT> <VALUE>    <NO>A1234</NO>    <ADDR>四川省XX县XX镇XX路X段XX号</ADDR> </VALUE> <VALUE>    <NO>B1

2016-07-05 17:44:40 347

转载 XML的解析

上一篇说到了xml的约束,这一篇就来说一下xml的解析吧,其实xml的解析很简单的,因为人家都为我们写好了接口,我只需简单的调用就行了,所以这里没有什么难点,首先来了解一下现在的xml的解析方式吧:解析XML的方法越来越多,但主流的方法也就四种,即:DOM、SAX、JDOM、DOM4J和PULL下面首先给出这四种方法的jar包下载地址DOM:在现在的Java J

2016-07-05 17:38:15 354

转载 Java并发编程:阻塞队列

Java并发编程:阻塞队列  在前面几篇文章中,我们讨论了同步容器(Hashtable、Vector),也讨论了并发容器(ConcurrentHashMap、CopyOnWriteArrayList),这些工具都为我们编写多线程程序提供了很大的方便。今天我们来讨论另外一类容器:阻塞队列。  在前面我们接触的队列都是非阻塞队列,比如PriorityQueue、LinkedList(L

2016-07-05 14:22:24 276

转载 二叉树的非递归遍历

二叉树的非递归遍历         二叉树是一种非常重要的数据结构,很多其它数据结构都是基于二叉树的基础演变而来的。对于二叉树,有前序、中序以及后序三种遍历方法。因为树的定义本身就是递归定义,因此采用递归的方法去实现树的三种遍历不仅容易理解而且代码很简洁。而对于树的遍历若采用非递归的方法,就要采用栈去模拟实现。在三种遍历中,前序和中序遍历的非递归算法都很容易实现,非递归后序遍历实现起来相对

2016-07-05 14:20:59 332

转载 探秘Java中的String、StringBuilder以及StringBuffer

探秘Java中String、StringBuilder以及StringBuffer  相信String这个类是Java中使用得最频繁的类之一,并且又是各大公司面试喜欢问到的地方,今天就来和大家一起学习一下String、StringBuilder和StringBuffer这几个类,分析它们的异同点以及了解各个类适用的场景。下面是本文的目录大纲:  一.你了解String类吗?

2016-07-05 14:19:29 397

转载 Java 提高篇 - 抽象类与接口

接口和内部类为我们提供了一种将接口与实现分离的更加结构化的方法。       抽象类与接口是java语言中对抽象概念进行定义的两种机制,正是由于他们的存在才赋予java强大的面向对象的能力。他们两者之间对抽象概念的支持有很大的相似,甚至可以互换,但是也有区别。      一、抽象类       我们都知道在面向对象的领域一切都是对象,同时所有的对象都是通过类

2016-07-05 14:18:31 241

转载 Java异常处理和设计

Java异常处理和设计  在程序设计中,进行异常处理是非常关键和重要的一部分。一个程序的异常处理框架的好坏直接影响到整个项目的代码质量以及后期维护成本和难度。试想一下,如果一个项目从头到尾没有考虑过异常处理,当程序出错从哪里寻找出错的根源?但是如果一个项目异常处理设计地过多,又会严重影响到代码质量以及程序的性能。因此,如何高效简洁地设计异常处理是一门艺术,本文下面先讲述Java异常机制最基

2016-07-05 14:16:55 218

转载 JVM的内存区域划分

JVM的内存区域划分  学过C语言的朋友都知道C编译器在划分内存区域的时候经常将管理的区域划分为数据段和代码段,数据段包括堆、栈以及静态数据区。那么在Java语言当中,内存又是如何划分的呢?  由于Java程序是交由JVM执行的,所以我们在谈Java内存区域划分的时候事实上是指JVM内存区域划分。在讨论JVM内存区域划分之前,先来看一下Java程序具体执行的过程:     

2016-07-05 14:16:09 248

转载 浅谈Java中的hashcode方法

浅谈Java中的hashcode方法  哈希表这个数据结构想必大多数人都不陌生,而且在很多地方都会利用到hash表来提高查找效率。在Java的Object类中有一个方法:1public native int hashCode();  根据这个方法的声明可知,该方法返回一个int类型的数值,并且是

2016-07-05 14:15:29 316

转载 Java 输入输出流 转载

1.什么是IO      Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列。Java的I/O流提供了读写数据的标准方法。任何Java中表示数据源的对象都会提供以数据流的方式读写它的数据的方法。       Java.io是大多数面向数据流的输入/输出类的主要软件包。此外,Ja

2016-07-05 14:13:19 470

转载 java 字节流和字符流的区别 转载

转载自:http://blog.csdn.net/cynhafa/article/details/6882061java 字节流和字符流的区别字节流与和字符流的使用非常相似,两者除了操作代码上的不同之外,是否还有其他的不同呢?实际上字节流在操作时本身不会用到缓冲区(内存),是文件本身直接操作的,而字符流在操作时使用了缓冲区,通过缓冲区再操作文件,如图12-6所示。  下面以两个

2016-07-05 14:12:16 238

转载 Java垃圾回收机制

Java垃圾回收机制  说到垃圾回收(Garbage Collection,GC),很多人就会自然而然地把它和Java联系起来。在Java中,程序员不需要去关心内存动态分配和垃圾回收的问题,这一切都交给了JVM来处理。顾名思义,垃圾回收就是释放垃圾占用的空间,那么在Java中,什么样的对象会被认定为“垃圾”?那么当一些对象被确定为垃圾之后,采用什么样的策略来进行回收(释放空间)?在目前的商

2016-07-05 14:11:41 213

转载 Java中的static关键字解析

Java中的static关键字解析  static关键字是很多朋友在编写代码和阅读代码时碰到的比较难以理解的一个关键字,也是各大公司的面试官喜欢在面试时问到的知识点之一。下面就先讲述一下static关键字的用法和平常容易误解的地方,最后列举了一些面试笔试中常见的关于static的考题。以下是本文的目录大纲:  一.static关键字的用途  二.static关键字的误区

2016-07-05 14:11:02 240

转载 Java:类与继承

Java:类与继承  对于面向对象的程序设计语言来说,类毫无疑问是其最重要的基础。抽象、封装、继承、多态这四大特性都离不开类,只有存在类,才能体现面向对象编程的特点,今天我们就来了解一些类与继承的相关知识。首先,我们讲述一下与类的初始化相关的东西,然后再从几个方面阐述继承这一大特性。以下是本文的目录大纲:  一.你了解类吗?  二.你了解继承吗?  三.常见的面试笔

2016-07-05 14:10:04 335

转载 深入理解Java的接口和抽象类

深入理解Java的接口和抽象类  对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。很多人在初学的时候会以为它们可以随意互换使用,但是实际则不然。今天我们就一起来学习一下Java中的接口和抽象类。下面是本文的目录大纲:  一.抽象类  二.接口  三.抽象类和接口

2016-07-05 14:09:00 290

空空如也

空空如也

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

TA关注的人

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