自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 资源 (1)
  • 收藏
  • 关注

原创 java开发汇总

IDEIntelliJ  IDEA项目构建maven版本控制git  数据库mysqldruid 数据库中间件TDDL 持久层框架mybatis  NOSQLredisMongDBHBase WEB技术http协议tomcatjsonrpcrestfulspringmvcjava模板引擎veloci...

2018-04-19 11:48:35 146

原创 JackJson - JSON to Java

public class People implements Serializable{ private Long id; private String name; private Integer age; public People() { } public People(Lo...

2018-04-10 17:50:49 147

原创 解读JVM06-类文件结构

JVM如何实现平台无关性和语言无关性的?平台无关性:使用java编译器为java源码为统一存储格式的字节码文件,实现不同平台的JVM去解释执行字节码。语言无关性:实现不同语言的编译器,编译成统一存储格式的字节码文件,由某平台JVM去解释执行字节码。 什么是高位在前?就是各个字节上的各个bit代表的数据的数位是从高到低。123,表示一百二十三,就是高位在前的大端数;如果表...

2017-05-20 16:25:56 134

原创 CGLib动态代理原理及实现

引用:http://blog.csdn.net/yakoo5/article/details/9099133/ 

2017-02-13 17:38:43 108

原创 maven auto-config 多环境自动打包

maven有许多优秀的插件,最近在研究打包中替换多重环境的配置,同事介绍使用阿里的auto-config,使用了一下确实不错。auto-config其实和ant时代的字符替换差不多太多,只是ant需要自己写脚本完成这些事情,但是auto-config通过配置就可以了。auto-config的核心技术我个人认为是volicty的模板技术,包括里面的占位符oplacehold都是以${}vo...

2016-12-23 17:00:27 147

原创 配置文件

MybatisMappingUtilspackage com.mycompany.myapp.common.utils;import com.alibaba.fastjson.JSON;import com.google.common.collect.Lists;import com.google.common.collect.Maps;import org.apach...

2016-04-15 17:48:47 130

原创 springmvc之数据格式化

一、使用内置的注解进行字段级别的解析/格式化:1、在模型类字段级别添加@NumberFormat、@DateTimeFormat等内置注解:public class FormatterModel { @NumberFormat(style=Style.NUMBER, pattern="#,###") private int totalCount; ...

2016-01-28 19:58:27 112

原创 springmvc之数据类型转换

 一、springmvc集成数据转换框架: 1、自定义类型转换器,可根据需求实现Converter、GenericConverter、ConverterFactory之一皆可。如String-->PhoneNumber: /** *自定义Sring转PhoneNumberModel的类型转换器*/public class StringToPhoneNumber...

2016-01-28 14:42:43 151

原创 springmvc之数据验证

一、Spring集成JSR-303验证框架:1、在pom.xm中添加JSR-303验证框架的hibernate实现:hibernate-validator <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</arti...

2016-01-27 13:41:08 105

使用命令行快速创建Maven多模块项目

使用命令行快速创建Maven多模块项目 1.创建父模块mvn archetype:generate -DgroupId=name.isgodonto -DartifactId=auth-all -Dversion=1.0.0-SNAPSHOT -Dpackage=name.isgodonto -DarchetypeArtifactId=maven-archetype-site-si...

2015-11-24 12:51:50 332

原创 配置jetty maven插件

配置Jetty Maven插件Jetty Maven插件用于快速开发和测试。你可以将它添加到任何Maven Web项目。插件会定期扫描你项目的变化,并在检测到变化后自动重新部署应用。这种通过消除构建和部署步骤的方式使得开发周期更有效率:您使用IDE来编辑项目,运行中的jetty容器会自动编译它们,你可以立即进行测试。 快速开始:启动并运行首先,添加 jetty-maven-plu...

2015-11-02 23:31:06 616

原创 Maven插件:maven-antrun-plugin

antrun插件:http://maven.apache.org/plugins/maven-antrun-plugin/ant任务列表:http://ant.apache.org/manual/tasksoverview.html 功能:运行ant任务。 示例:<plugin> <artifactId>maven-antrun-plugin...

2015-11-02 21:22:10 309

原创 Maven插件:maven-jetty-plugin

Jetty7/8的Maven插件下载:http://mvnrepository.com/artifact/org.mortbay.jetty/jetty-maven-pluginJetty9的Maven插件下载:http://mvnrepository.com/artifact/org.eclipse.jetty/jetty-maven-pluginJetty7/8 的Maven插件配...

2015-11-02 16:23:40 1246

原创 Maven实战(十):使用Maven进行测试

surefire插件:http://maven.apache.org/surefire/maven-surefire-plugin/ 本文引自:http://blog.csdn.net/sin90lzc/article/details/75432621.maven-surefire-plugin简介Maven本身并不是一个单元测试框架,它只是在构建执行到特定生命周期阶段的时候,通过...

2015-11-02 13:57:43 242

原创 Maven插件:maven-assembly-plugin

assembly插件介绍:http://maven.apache.org/plugins/maven-assembly-plugin/assembly:single:http://maven.apache.org/plugins/maven-assembly-plugin/single-mojo.htmlassembly配置样例:http://maven.apache.org/plug...

2015-10-29 17:09:26 112

原创 Maven内置隐式变量

引自:http://blog.csdn.net/xh16319/article/details/22981051 Maven提供了三个隐式的变量可以用来访问环境变量,POM信息,和Maven Settings。 env env变量,暴露了你操作系统或者shell的环境变量。便 如在Maven POM中一个对${env.PATH}的引用将会被${PATH}环境变量替换,在...

2015-10-29 14:16:09 125

原创 如何使用HSF

   应用场景:B项目需要访问A项目的某些接口 一、A项目: 1.在pom.xml中添加hsf <dependency> <groupId>com.taobao.hsf</groupId> <artifactId>hsf.app.spring</artifactId> <version>...

2015-10-24 11:35:15 974

原创 Struts2整合Spring方法及原理[转]

一、   Struts 2框架整合Spring步骤 1、 复制文件。复制struts2-spring-plugin-x-x-x.jar和spring.jar到WEB-INF/lib目录下。其中的x对应了Spring的版本号。还需要复制commons-logging.jar文件到WEB-INF/lib目录下。 2、 配置struts.objectFactory属性值。在strut...

2013-07-25 20:31:06 102

原创 OpenSessionInViewFilter作用及配置[转]

一、作用Spring为我们解决Hibernate的Session的关闭与开启问题。Hibernate 允许对关联对象、属性进行延迟加载,但是必须保证延迟加载的操作限于同一个 Hibernate Session 范围之内进行。如果 Service 层返回一个启用了延迟加载功能的领域对象给 Web 层,当 Web 层访问到那些需要延迟加载的数据时,由于加载领域对象的 Hibernate S...

2013-07-25 19:33:41 62

原创 Hibernate的映射类型[转]

 转自:http://aumy2008.blogbus.com/logs/13732626.html Hibernate映射类型分为两种:内置映射类型和客户化映射类型。内置映射类型负责把一些常见的Java类型映射到相应的SQL类型;此外,Hibernate还允许用户实现UserType或CompositeUserType接口,来灵活地定制客户化映射类型。客户化类型能够把用户定义的Ja...

2013-07-17 14:38:46 112

原创 hibernate 悲观锁与乐观锁[转]

Hibernate支持两种锁机制: 即通常所说的“悲观锁(Pessimistic Locking)”和 “乐观锁(OptimisticLocking)”。 悲观锁的实现,往往依靠数据库提供的锁机制(也只有数据库层提供的锁机制才能真正保证数据访问的排他性,否则,即使在本系统中实现了加锁机制,也无法保证外部系统不会修改数据)。 Hibernate的加锁模式有: Ø LockMode.NONE : ...

2013-07-17 14:24:56 81

原创 用递归列出和删除文件的所有目录

递归(Recursion),就是方法调用自身。对于递归来说,一定有一个出口,让递归结束,只有这样才能保证不出现死循环。 递归计数器:private static int time;public static void recursion(){        time++;        recursion();        time--;} ...

2013-07-15 05:36:04 99

原创 Session缓存和域对象在持久化层的三种状态

Session缓存:当Session的save()方法持久化一个Customer对象时,Customer对象被加入到Session的缓存中,以后即使应用程序中的引用变量不再引用Customer对象,只要Session的缓存还没有被清空,Customer对象仍然处于生命周期中。 Session会在下面的时间点清理缓存:  (1).当应用程序调用org.hibernate.Transa...

2013-07-12 18:13:25 110

原创 struts2 ognl表达式

推荐阅读:http://developer.51cto.com/art/201203/322509.htm OGNL:(Object Graphic Navigation Language)对象图导航语言。  OgnlContext:ognl上下文对象,实现Map接口。把对象放到OgnlContext中,就可以通过ognl表达式很容易的操纵对象。 ROOT:Ognl...

2013-07-12 00:24:53 60

原创 以动态代理模式看Action的执行流程

action的整个执行流程使用的就是动态代理模式。关于动态代理模式的原理可以看这篇文章:http://tiro-li.iteye.com/blog/1901678 Action:真实角色,这是动态改变的;ActionSupport:抽象角色,Action实现的接口;ActionProxy:动态代理角色。相当于Proxy动态生成的$Proxy0类,有以下三点信息需要我们明确。...

2013-07-10 14:41:46 152

原创 动态代理的工厂实现

动态代理的角色及其原理,见下文:[url]http://tiro-li.iteye.com/blog/1901678[/url]动态代理的工厂类:DynamicProxyFactory.java[code="java"]import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;i...

2013-07-09 01:18:56 311

原创 动态代理模式

动态代理角色:一个真实角色:一个抽象角色:真实角色实现的接口,代理角色也必须实现这个接口;一个由Proxy类在运行时动态生成的代理角色$Proxy0;一个实现InvocationHandler接口的类,可能看成是二级代理。它们的关系及原理:1. 首先由Proxy动态生成一个代理角色,这个代理角色会实现真实角色的接口,并关联到InvocationHandler的处理类handle;2. 代理角色...

2013-07-09 01:18:02 78

原创 静态代理模式

[b]静态代理模式的角色:[/b]抽象角色:声明真实角色和代理角色的接口;真实角色: 最终要引用的对象代理角色:持有一个真实角色的引用一个房东(真实角色),一个中介(代理角色),都能实现卖房子这个动作(接口中的抽象方法)。但只有房东有房子,它一定能卖房子,但中介必须与房东交互才能卖掉房子(必须持有真实角色的引用)。1.抽象角色:Subject.java[code...

2013-07-09 00:38:45 72

原创 servlet实现文件下载

servlet下载文件的原理:把服务器上的文件以application/octet-stream的响应类型输出到JSP页面。下载页面download.jsp[code="html"] 二进制文件 文本文件 中文文件名[/code]Servelt-FileDownloadServlet:[code="java"]impo...

2013-07-08 15:43:34 96

原创 servlet使用fileupload组件实现文件上传

需要的库:[url]http://commons.apache.org/fileupload/[/url][url]http://commons.apache.org/io/[/url]下载后解压zip 包,将commons-fileupload-1.3.x.jar和commons-io-2.x.jar 复制到t项目的WEB-INF/lib下。文件上传的过程:1).以m...

2013-07-08 15:14:29 130

sed实例分析(三)--s命令中的&与\1-\9

一、&与\1-\9用法说明:s命令语法:s/regexp/replacement/&字符用于完全替换regexp匹配,如 s/man/wo&/,将man替换成woman\1字符用于替换regexp中无字符()中的内容,\1替换第一个();\2替换第二个();如/s/I \(love\) \(you\)/\2\1me/,将I love you替换成you lov...

2012-05-30 19:49:00 773

sed实例分析(二)--G和H的用法

一、示例文件及需求:cat file1111111122222223333333反序显示二、sed处理及结果:sed '1!G;h;$!d'3333333222222211111111三、命令说明:g G 复制/附加保持空间的内容到模式空间h H 复制/附加模式空间的内容到保持空间四、命令执行流程:执行第一行,保存第一行保持空间,清除模...

2012-05-30 16:18:00 349

sed怎么读取行和打印行

一、sed读取行和打印行解析:1.sed读取到模式空间的行不包括\n字符;2.sed读取多行到模式空间时,自动以\n字符进行分隔;3.sed打印行时并不打印以模式空间加的\n字符,而是行逐行打印除\n外的字符,然后由p或P命令添加\n字符;4.sed默认自动打印每一个模式空间单元,其实是隐式执行-e 'p;d'命令 误解:1.sed读取到模式空间的行包括\n字符;...

2012-05-30 11:33:00 416

sed实例分析(一)---P与D命令的用法

一、示例文件及需求:catfile111111111111111111222222222222222222=333333333333333333444444444444444444如果某行以=开始,则合并到上一行并替代=为空格二、sed脚本执行结果:sed-e:a-e'$!N;s/\n=//;ta'-e'P;D'file111111111111111111...

2012-05-29 17:10:00 459

linux中防止误删除

一.脚本执行过程:1.在/bin/bash中创建4个模拟回收站机制的脚本:remove、undel、ctrash、lrm2../bashrc中添加alias rm='remove'行.二.脚本使用方法:./undel.sh [-u] //直接执行undel.sh脚本将安装4个功能脚本,-u参数用于卸载remove [files] //用于删除文件和目录,使用rm时自动执行该脚...

2012-05-29 14:28:00 461

Linux启动类故障分析

 一、修复MBR扇区故障:1.MBR-主引导记录:MBR(512Byte)= 引导程序(446Byte)+分区表(64Byte)+MagicNumber(2Byte)2.故障原因:病毒、木马等造成的破坏不正确的分区操作、磁盘读写误操作3.故障现象:找不到引导程序,启动中断无法加载操作系统,开机后黑屏错误提示"Operatingsystemnotfound"4.解决...

2012-05-25 14:59:00 105

sip软电话X-Lite

X-Lite 是一种特有VoIP软件电话的免费软件,使用SIP协议。X-Lite 由位于温哥华的一家CounterPath软件公司所开发。

2013-07-06

空空如也

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

TA关注的人

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