自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小工匠

show me the code ,change the world

  • 博客(49)
  • 资源 (12)
  • 收藏
  • 关注

原创 Spring JDBC-NamedParameterJdbcTemplate模板类

概述示例BeanPropertySqlParameterSource 使用示例MapSqlParameterSource使用示例NamedParameterJdbcTemplate 支持 in 的操作PrepareStatement的缺陷NamedParameterJdbcTemplate的操作示例概述除了标准的JdbcTemplate外,Spring还提供了两个易用的JDBC模板类S

2017-09-30 12:50:16 15712

原创 Spring JDBC-自增键和行集RowSet

概述自增键的使用Oracle以序列方式产生主键值MySQL以表方式产生主键值如何规划主键方案自增键小结以行集返回数据示例示例源码概述Spring JDBC提供了对自增键及行集的支持,自增键对象让用户可以不依赖数据库的自增键,在应用层为新纪录提供主键。 在Java1.4中引入RowSet,它允许在连接断开的情况下操作数据。 这里我们讨论如何在Spring JDBC中使用RowSet。

2017-09-29 13:33:16 15363

原创 Spring JDBC-使用Spring JDBC获取本地连接对象以及操作BLOB/CLOB类型数据

概述如何获取本地数据连接示例从DBCP数据源中获取Oracle的本地连接对象相关接口操作示例源码概述我们在Spring-使用Spring JDBC访问数据库使用JDBC进行了CRUD(Create Retrieve Update Delete增删改查)以及调用存过的操作,这里我们将进一步了解一些高级的数据库操作知识,包括获取本地数据连接进行数据库相关的操作和如何操作BLOB、CLBO这些LO

2017-09-29 04:40:09 17021 2

原创 Spring JDBC-使用Spring JDBC访问数据库

概述使用Spring JDBC基本的数据操作更改数据返回数据库表的自增主键值批量更改数据查询数据使用RowCallbackHandler处理结果集使用RowMapperT处理结果集RowCallbackHandler和RowMapperT的比较查询单值数据调用存储过程3种方式示例源码概述Spring JDBC是Spring所提供的持久层技术,它的主要目的降低JDBC API的

2017-09-28 06:02:56 21129

原创 Spring JDBC-数据连接泄露解读

概述示例数据连接泄露演示事务环境下通过DataSourceUtils获取数据连接事务环境下通过DataSourceUtils获取数据连接也可能造成泄漏JdbcTemplate 如何做到对连接泄漏的免疫使用 TransactionAwareDataSourceProxy其它数据访问技术的等价类 数据访问框架 连接 获取工具类 SpringJDBC MyBatis orgspri

2017-09-27 10:13:44 17780 1

原创 Spring JDBC-混合框架的事务管理

概述问题解决方案示例Hibernate Spring JDBC概述Spring 抽象的 DAO 体系兼容多种数据访问技术,它们各有特色,各有千秋。Hibernate 是非常优秀的 ORM 实现方案,但对底层 SQL 的控制不太方便MyBatis 则通过模板化技术让我们能方便地控制 SQL,但没有 Hibernate 那样高的开发效率自由度最高的当然是直接使用 Spring JDBC 莫

2017-09-27 09:17:18 18518 93

原创 Spring JDBC-事务管理中的多线程问题

概述示例结论示例源码概述众所周知,Spring 的事务管理器是通过线程相关的 ThreadLocal 来保存数据访问基础设施,再结合 IOC 和 AOP 实现高级声明式事务的功能,所以 Spring 的事务天然地和线程有着千丝万缕的联系。我们知道 Web 容器本身就是多线程的,Web 容器为一个 Http 请求创建一个独立的线程,所以由此请求所牵涉到的 Spring 容器中的 Bean 也是运

2017-09-27 04:22:57 16154

原创 Spring JDBC-实施Spring AOP事务注意事项及案例分析

实施SpringAOP事务注意事项基于接口动态代理的AOP事务增强基于CGLib字节码动态代理的AOP事务增强示例示例源码实施SpringAOP事务注意事项众所周知,Spring事务管理是基于接口代理或动态字节码技术,通过AOP实施事务增强的,虽然Spring也支持AspectJ LTW在类加载期实施增强,但这种方法很少使用,我们先暂且不予理会,我们重点关注基于接口代理和动态字节码技术基于接

2017-09-26 13:23:30 15121

原创 JavaScript-WebStorm中配置Github并将代码托管到Github

WebStorm概述下载WebStorm激活WebStorm配置GitHub配置本地Git配置ssh创建Github项目迁出项目提交代码WebStorm概述WebStorm 是一款前端开发 IDE(集成开发环境),可以简单理解为,它是一个智能的、强大的代码编辑器。语法着色、代码补全、代码分析、代码导航、格式化、快捷键、就地参考文档、实时纠错提示、代码重构、脚本调试、版本控制、单元测试

2017-09-25 12:53:50 14254

原创 JavaScript-语法、关键保留字及变量

语法构成区分大小写标识符注释直接量字面量literal关键字保留字变量语法构成JavaScript 的语言核心 ECMAScript.区分大小写ECMAScript 中的一切,包括变量、函数名和操作符都是区分大小写的。例如:artisan和Artisan表示两种不同的变量。标识符所谓标识符,就是指变量、函数、属性的名字,或者函数的参数。标识符可以是下列格式规则组合起来的一或多个字符:1

2017-09-24 14:31:03 14559

原创 Spring JDBC-事务方法嵌套调用解读

Spring事务传播机制回顾相互嵌套的服务方法Spring事务传播机制回顾关于Spring事务的一个错误的说法:一个事务方法中不应该调用另外一个事务方法,否则将产生两个事务,其实这是不正确的。 这是因为未正确认识Spring事务传播机制而造成的误解。 Spring对事务控制的支持统一在TransactionDefinition类中描述我们来看下该类中的接口方法int getPropagation

2017-09-24 13:38:01 15874

原创 Spring JDBC-使用注解配置声明式事务

系列概述使用Transactional注解txannotation-driven其他两个属性关于Transaction的属性在何处标注Transactional注解在方法处使用注解使用不同的事务管理器系列Spring对事务管理的支持概述以及 编程式的事务管理Spring JDBC-使用XML配置声明式事务Spring JDBC-使用注解配置声明式事务概述除了基于XML的事务配置,Spr

2017-09-24 08:51:05 16505 1

原创 Spring JDBC-使用XML配置声明式事务

系列概述基于aoptx命名空间的配置示例txmethod元素属性系列Spring对事务管理的支持概述以及 编程式的事务管理Spring JDBC-使用XML配置声明式事务Spring JDBC-使用注解配置声明式事务概述大多数开发者选择声明式事务管理的功能,这种方式对代码的侵入性最小,可以让事务管理完全从业务代码中移除,非常符合非侵入式轻量容器的理念。Spring的声明式事务管理是通过AOP

2017-09-23 05:49:14 15828

原创 JavaScript-JavaScript概述及简单使用

什么是JavaScript 的特点JavaScript 的核心使用创建一张 HTML 页面Script标签解析JS 代码嵌入的一些问题完整实例什么是JavaScript 是一种具有面向对象能力的、解释型的程序设计语言。更具体一点,它是基于对象和事件驱动并具有相对安全性的客户端脚本语言。因为它不需要在一个语言环境下运 行,而只需要支持它的浏览器即可。它的主要目的是,验证发往服务器端的数据

2017-09-22 13:36:28 15357

原创 Spring4.X系列之AOP-@AspectJ

专栏导读源码专栏欢迎关注 :专栏一 :Spring-AOP基础手札专栏二:Spring-AspectJ手札导读Spring-AOP注解基础Java5.0注解解读Spring-AOP 使用@AspectJSpring-AOP @AspectJ语法基础Spring-AOP @AspectJ切点函数导读Spring-AOP @AspectJ切点函数之@annotation()Spring-AOP @A

2017-09-22 10:03:24 15012

原创 Spring4.X系列之AOP基础篇

专栏导读专栏欢迎关注 :专栏一 :Spring-AOP基础手札 专栏二:Spring-AspectJ手札导读Spring-AOP概述Spring-AOP基础知识Spring-AOP基础之JDK动态代理Spring-AOP基础之CGLib动态代理Spring-AOP 增强(Advice)5种类型和创建增强类Spring-AOP 通过配置文件实现 前置增强Spring-AOP 通过配置文件实现 后置增

2017-09-22 09:56:41 14581

原创 Spring4.X系列之IOC

专栏导读专栏欢迎关注 专栏 :Spring-IOC手札导读Spring-Spring4.X 概述Spring-Spring 开发环境搭建及HelloSpringSpring-Spring MVC + Spring JDBC + Spring Transaction + Maven 构建web简易登录模块Spring-IoC容器Spring-利用Spring提供的Resource/ResourceL

2017-09-21 23:53:22 14206

原创 Spring JDBC-Spring对事务管理的支持

概述事务管理关键抽象Spring事务管理的实现类Spring JDBC 和MybBatis的事务管理器的配置JPA的事务管理器的配置Hibernate的事务管理器的配置JTA 的事务管理器的配置事务同步管理器事务的传播行为示例编程式的事务管理示例概述 Spring为事务管理提供了一致的编程模板,在高层次建立了统一的事务抽象。也就是说,不管选择Spring JDBC、Hibern

2017-09-21 12:08:15 18620 4

原创 Spring-AOP 混合使用各种切面类型及不同切面总结

概述混合使用各种切面类型各种切面类型总结概述通过我们整个AOP系列的学习,我们可以总结出 4种定义切面的方式:基于@AspectJ注解的方式基于<aop:aspect>的方式基于<aop:advisor>的方式基于Advisor类的方式如果项目采用JDK5.0及以上版本,可以优先考虑使用@AspectJ;如果项目只能使用低版本的JDK,则可以考虑使用<aop:aspect>; 如果正在升

2017-09-21 10:21:53 19540 1

原创 Spring JDBC-Spring事务管理之ThreadLocal基础知识

概述ThreadLocal是什么ThreadLocal的接口方法ThreadLocal示例与Thread同步机制的比较Spring中使用ThreadLocal解决线程安全问题概述Spring通过各种模板类降低了开发者使用各种数据持久技术的难度,这些模板类都是线程安全的。 也就是说,多个DAO可以复用同一个模板实例而不会发生冲突。我们使用模板类访问底层数据,根据持久化技术的不同,模板类需要绑

2017-09-18 04:14:42 16566

原创 Spring JDBC-Spring事务管理之数据库事务基础知识

概述数据库事务的概念数据并发的问题数据库锁机制事务隔离级别JDBC对事务的支持概述在使用Spring开发应用时,Spring的事务管理可能是被使用最多、应用最广的功能。 Spring不但提供了和底层事务源无关的事务抽象,还提供了声明性事务的功能,可以让开发者从事务代码中解放出来。 数据库事务的概念数据并发的问题数据库锁机制事务隔离级别JDBC对事务的支持

2017-09-18 01:52:40 15007

原创 C3P0-数据库连接池解读

概述配置项说明常用配置管理连接池的大小和连接的生存时间配置连接测试配置PreparedStatement缓存重连相关配置定制管理Connection的生命周期配置未提交的事务处理配置debug和回收Connection概述官网: http://www.mchange.com/projects/c3p0/C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3

2017-09-17 11:26:41 15671

翻译 Apache-DBCP数据库连接池解读

概述配置项说明基本配置项usernamepasswordurldriverClassnameconnectionProperties事务相关配置项数据源链接数量配置项连接健康情况维护和检查缓存语句配置项连接泄露回收配置项概述官网: https://commons.apache.org/proper/commons-dbcp/index.htmlcommons-dbcp2包依赖

2017-09-17 01:11:28 7508

原创 Spring JDBC-Spring对DAO的支持

概述Spring的DAO理念统一的异常体系统一的数据访问模板使用模板和回调机制模板类数据源配置数据源DBCP数据源C3P0数据源获取JNDI数据源Spring的数据源实现类总结概述Spring对多个持久化技术提供了集成支持,包括Hibernate、MyBatis、JPA、JDO。 此外Spring还提供了一个简化JDBC API操作的Spring JDBC框架。 Sprin

2017-09-16 14:08:54 15661 4

原创 Spring-AOP 基于Schema配置切面

概述简单切面配置实例示例配置命名切点示例各种增强类型的配置示例绑定连接点信息Advisor配置概述如果项目不能使用Java5.0, 那么就无法使用基于@AspectJ注解的切面。 但是Spring提供了基于Schema配置的方法,它完全可以替代基于@AspectJ注解声明切面的方式。 基于@AspectJ注解的切面,本质上是将切点、增强类型的信息使用注解描述,我们将这两个信息转移到S

2017-09-16 09:51:16 15064 1

原创 Spring-AOP @AspectJ进阶之绑定类注解对象

概述实例概述@within()和@target()函数可以将目标类的注解对象绑定到增强方法中。我们通过@within()演示注解绑定的操作实例代码已托管到Github—> https://github.com/yangshangwei/SpringMaster注解(使用的是自定义注解,也可以使用框架提供的注解)package com.xgj.aop.spring.advisor.aspectJAd

2017-09-14 22:09:03 14653

原创 Spring-AOP @AspectJ进阶之绑定代理对象

概述实例概述使用this()或target()可绑定被代理对象实例,在通过类实例名绑定对象时,还依然具有原来连接点匹配的功能,只不过类名是通过增强方法中同名入参的类型间接决定罢了。这里我们通过this()来了解对象绑定的用法:实例代码已托管到Github—> https://github.com/yangshangwei/SpringMaster业务类package com.xgj.aop.spr

2017-09-13 23:51:55 13899

原创 Spring-AOP @AspectJ进阶之绑定抛出的异常

概述实例总结概述和通过切点函数绑定连接点信息不同,连接点抛出的异常必须使用AfterThrowing注解的throwing成员进行绑定实例代码已托管到Github—> https://github.com/yangshangwei/SpringMaster业务类package com.xgj.aop.spring.advisor.aspectJAdvance.bindException;impo

2017-09-13 08:35:19 19272

原创 Spring-AOP @AspectJ进阶之绑定连接点方法的返回值

概述实例概述 在后置增强中,可以通过returning绑定连接点方法的返回值实例代码已托管到Github—> https://github.com/yangshangwei/SpringMaster 业务类package com.xgj.aop.spring.advisor.aspectJAdvance.bingReturnValue;import org.springframework.st

2017-09-13 05:59:54 15271

原创 Spring-AOP @AspectJ进阶之绑定类注解对象

概述实例概述@within()和@target()函数可以将目标类的注解对象绑定到增强方法中。我们通过@within()演示注解绑定的操作实例代码已托管到Github—> https://github.com/yangshangwei/SpringMaster注解(使用的是自定义注解,也可以使用框架提供的注解)package com.xgj.aop.spring.advisor.aspectJAd

2017-09-13 05:00:21 11937 3

原创 Spring-AOP @AspectJ进阶之绑定代理对象

概述实例概述使用this()或target()可绑定被代理对象实例,在通过类实例名绑定对象时,还依然具有原来连接点匹配的功能,只不过类名是通过增强方法中同名入参的类型间接决定罢了。这里我们通过this()来了解对象绑定的用法:实例代码已托管到Github—> https://github.com/yangshangwei/SpringMaster业务类package com.xgj.aop.spr

2017-09-13 01:55:53 14184

原创 Spring-AOP @AspectJ进阶之绑定连接点方法入参

概述实例概述我们前面的博文在讲解切点函数时说过args()、this()、target()、@args()、@within()、@target()和@annotation()这7个函数除了可以指定类名外,还可以指定参数名将目标对象连接点上的方法入参绑定到增强的方法中。 其中args()用于绑定连接点方法的入参,@annotation()用于绑定连接点方法的注解对象,而@args()用于绑定连接点方

2017-09-12 14:10:19 16216

原创 Spring-AOP @AspectJ进阶之访问连接点信息

概述JoinPointProceedingJoinPoint实例概述AspectJ使用org.aspectj.lang.JoinPoint接口表示目标类连接点对象,如果是环绕增强时,使用org.aspectj.lang.ProceedingJoinPoint表示连接点对象,该类是JoinPoint的子接口。任何一个增强方法都可以通过将第一个入参声明为JoinPoint访问到连接点上下文的信息。

2017-09-12 12:06:06 14991

原创 Spring-AOP @AspectJ进阶之增强织入的顺序

概述示例概述一个连接点可以同时匹配多个切点,切点对应的增强在连接点上的织入顺序到底是如何安排呢?这个问题需要分三种情况讨论: 如果增强在同一个切面类中声明,则依照增强在切面类中定义的顺序进行织入;如果增强位于不同的切面类中,且这些切面类都实现了org.springframework.core.Ordered接口,则由接口方法的顺序号决定(顺序号小的先织入);如果增强位于不同的切面类中,且这些

2017-09-11 13:55:02 16359

原创 Spring-AOP @AspectJ进阶之命名切点

概述示例概述在前面所举的例子中,比如@Before("within(com.xgj.aop.spring.advisor.aspectJAdvance.pointcutComplex.*)" + " && execution(* greetTo(..))") public void matchGreetTo() { System.out.printl

2017-09-11 01:34:32 14820

原创 Spring MVC-使用Spring Tool Suite IDE搭建Spring MVC开发环境

Spring MVC 概述新建Spring MVC Project分析IDE建立的工程Maven dependencies configurationSpring MVC configurationWeb deployment descriptor (web.xml)示例controller: HomeController.java示例JSP view: home.jspDep...

2017-09-10 14:00:57 16047

原创 Spring-AOP @AspectJ进阶之切点复合运算

概述示例概述@AspectJ可以使用切点函数定义切点,还可以使用逻辑运算符对切点进行复合运算得到复合切点。 为了在切面中重用切点,还可以对切点进行命名,以便在其他地方引用定义过的切点。 当一个连接点匹配多个切点时,需要考虑织入顺序的问题,另外一个重要的问题是如何在增强中访问连接点上下文的信息。 示例代码已托管到Github—> https://github.com/yangshangwei/Sp

2017-09-09 14:31:43 14421

原创 Java-工具类之ZIP压缩解压

概述实例zip压缩单个或者多个文件unzip到指定目录zip目录及子孙目录不解压读取zip中的文件列表概述整理ZIP相关的工具类实例代码已托管到 https://github.com/yangshangwei/commonUtilszip压缩单个或者多个文件package com.artisan.commonUtils.zip;import java.io.File;import jav

2017-09-09 11:13:08 19440 2

原创 Java-Java I/O 字节流之BufferedReader/BufferedWriter

概述Reader InputStreamReader FileReader and BufferedReaderWriter OutputStreamWriter FileWriter and BufferedWriterCharacter Encoding and Charset概述本篇博文主要介绍 如何使用java.io包中提供的类读取和写入文本(或字符)文件Reader, InputSt

2017-09-09 08:52:18 15959

翻译 Java-Java I/O流解读之Object Serialization and Object Streams

概述方法概述哪些类型的对象有资格进行序列化ObjectInputStream ObjectOutputStreamjavaioSerializable Externalizable InterfacesjavaioExternalizable Interface代码概述数据流(DataInputStream和DataOutputStream)允许我们读取和写入原始数据(如int,do

2017-09-08 05:02:57 5962

Scalable IO in Java

NIO - Scalable IO in Java

2023-11-10

腾讯万亿级 Elasticsearch 架构实践

腾讯万亿级 Elasticsearch 架构实践

2023-07-24

实时分析引擎&实时分析引擎

实时分析引擎

2023-07-24

X86-NFS rpm包

gssproxy-0.7.0-21.el7.x86_64.rpm keyutils- libbasicobjects-0 libcollection-0.6 libevent-2.0.21-4 libini_config libnfsidmap libpath_utils-0.2 libref_array-0.1. libtirpc-0.2.4-0. libverto-libeventm nfs-utils-1.3.0-0m quota-4.01-14.ns7 quota-nls-4.01-14 rpcbind tcp_wrappers

2020-11-24

中标龙芯-MIPS- NFS rpm包

gssproxy-0.7.0-4.ns7_4.mips64 keyutils-1.5.8-3. libbasicobjects-0 libcollection-0.6 libevent-2.0.21-4 libini_config-1.3 libnfsidmap-0.25- libpath_utils-0.2 libref_array-0.1. libtirpc-0.2.4-0. libverto-libeventm nfs-utils-1.3.0-0m quota-4.01-14.ns7 quota-nls-4.01-14 rpcbind-0.2.0-42. tcp_wrappers-7.6

2020-11-24

mybatisSource.zip

MyBatis源码功能演示环境 ,演示MyBatis的Executor 、StatementHandler 、 SQL映射、对象转换 等核心功能

2020-06-14

apache-tomcat-8.5.50-src.zip

Tomcat启动流程分析 组件的生命周期管理 用Lifecycle管理启动、停止、关闭 Lifecycle接口预览 几个核心方法 Server中的init方法示例 为啥StandardServer没有init方法 LifecycleBase中的init与initInternal方法 为什么这么设计? 分析Tomcat请求过程 链接器(Connector)与容器(Container) 解耦 Connector设计 监听服务端口,读取来自客户端的请求 将请求数据按照指定协议进行解析 根据请求地址匹配正确的容器进行处理 将响应返回客户端 Container设计 Servlet容器的实现。

2020-06-02

「Tomcat源码剖析」.pdf

Tomcat源码剖析 : 整体架构 层层分析 源码解析 架构分析 (Http服务器功能:Socket通信(TCP/IP)、解析Http报文 Servlet容器功能:有很多Servlet(自带系统级Servlet+自定义Servlet),Servlet处理具体的业务逻辑)

2020-06-01

Jest-5.3.4.zip

Jest是Elasticsearch 的Java Http Rest 客户端。 ElasticSearch已经具备应用于Elasticsearch内部的java API,但是Jest弥补了ES自有API缺少Elasticsearch Http Rest接口客户端的不足。 Jest 配置ES 集群 示例代码 及源码解读 - 核心原理 - NodeChecker源码解读 -

2020-01-19

MQ对比:Kafka VS Rocketmq VS Rabbitmq.pdf

MQ对比:Kafka VS Rocketmq VS Rabbitmq 超详细 ,值的收藏,参考资料

2019-11-04

elasticsearch-analysis-ik-6.4.1.zip

修改ik分词器源码,支持从mysql中每隔一定时间,自动加载新的词库

2019-08-20

Nginx1.14.2 + zlib + pcre + openssl

1. nginx 主软件 和 3个依赖包 zlib + pcre + openssl

2019-03-12

Spring4CachingAnnotationsExample

Spring4CachingAnnotationsExample的示例,通过Java注解的方式整合EhCache框架

2017-10-04

ORACLE_AWR报告详细分析

ORACLE_AWR报告详细分析

2016-09-28

Java反编译工具

jd-gui.exe使用C++开发,主要具有以下功能: 一、支持众多Java编译器的反编译; 二、支持对整个Jar文件进行反编译,并本源代码可直接点击进行相关代码的跳转;

2015-06-04

空空如也

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

TA关注的人

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