- 安卓基础面试题
享哥。
android
自定义viewAndroid自定义View-CSDN博客view和viewgroupView和ViewGroup的区别-view的事件分发事件分发详解---历史最容易理解组件化Android-组件化开发什么是ANRAndroidANR详解-CSDN博客Android性能优化Android优化-CSDN博客Aroute原理Arouter框架原理浅解-简书2021年Android面试题汇总(初级)-简
- Android 小型路由 SimpleRouter
Parallel_Lines
闲来无事,利用APT写了个类似ARouter的小型路由框架,方便组件化跳转。功能说明基本路由跳转路由跳转当然是SimpleRouter最基本的功能。1、使用SimpleRouter注解标注路由名。@SimpleRouter(value="main_page",interceptor="")publicclassMainActivityextendsAppCompatActivity{...}@Si
- Android学习之路(26) ARouter APT技术详解
星如雨グッ!(๑•̀ㅂ•́)و✧
安卓android学习python
APT前置知识注解基础:1.元注解1.@Target:目标,表示注解修饰的目标ElementType.ANNOTIONS_TYPE:目标是注解,给注解设置的注解ElementType.CONSTRUCTOR:构造方法ElementType.FIELD:属性注解ElementType.METHOD:方法注解ElementType.Type:类型如:类,接口,枚举ElementType.PACKAGE
- ARouter 迁移到 TheRouter 使用感受
快乐的小Android
之前项目中一直用的是ARouter,但是启动耗时问题一直没办法解决。最近发现货拉拉开源了一套更先进的路由框架TheRouter,还宣传能无缝切换,就赶紧拿来试了一下,真香!!先看一下官方介绍:TheRouter是一个Kotlin编写,用于Android模块化开发的一整套解决方案框架。Github项目地址:https://github.com/HuolalaTech/hll-wp-therouter
- Android常用三方框架源码解读-Arouter
RNGyyds
组件化开发的目的是为了解耦提高业务的复用,各业务之间相互独立,如何跳转页面和数据传输就成为了首要解决的问题,阿里的Arouter的框架为组件化改造提供了一种思路,作为开发中的常用框架,有必要知道其实现原理。今天就来分析一波常用模块arouter-api及arouter-compiler的源码实现。一、arouter-compiler1.思想转变平常开发时,经常会有一些重复且无聊的模板代码需要手动敲
- Android学习之路(22) ARouter原理解析
星如雨グッ!(๑•̀ㅂ•́)و✧
安卓android学习
1.ARouter认知首先我们从命名来看:ARouter翻译过来就是一个路由器。官方定义:一个用于帮助AndroidApp进行组件化改造的框架——支持模块间的路由、通信、解耦那么什么是路由呢?简单理解就是:一个公共平台转发系统工作方式:1.注册服务:将我们需要对外暴露的页面或者服务注册到ARouter公共平台中2.调用服务:调用ARouter的接口,传入地址和参数,ARouter解析传入的地址和参
- Android学习之路(23)组件化框架ARouter的使用
星如雨グッ!(๑•̀ㅂ•́)و✧
安卓android学习
一、功能介绍支持直接解析标准URL进行跳转,并自动注入参数到目标页面中支持多模块工程使用支持添加多个拦截器,自定义拦截顺序支持依赖注入,可单独作为依赖注入框架使用支持InstantRun支持MultiDex(Google方案)映射关系按组分类、多级管理,按需初始化支持用户指定全局降级与局部降级策略页面、拦截器、服务等组件均自动注册到框架支持多种方式配置转场动画支持获取Fragment完全支持Kot
- Android-三方框架的源码
龙腾腾
android
ARouterArouter的整体思路是moduelA通过中间人ARouter把路由信息的存到仓库WareHouse;moduleB发起路由时,再通过中间人ARouter从仓库WareHouse取出路由信息,这要就实现了没有依赖的两者之间的跳转与通信。其中涉及Activity的跳转、服务provider的获取、拦截器的处理等。路由元信息是怎么收集的?跳转Activity最终必定是走到了startA
- 模块化+组件化+插件化+ARouter
一书一世界
什么是模块化?模块化开发,大家应该都是比较熟悉的。就是将常用的UI、网络请求、数据库操作、第三方库的使用等公共部分抽离封装成基础模块,或者将大的业务上拆分为多个小的业务模块,这些业务模块又依赖于公共基础模块的开发方式,最终将这些模块打包成一个完整的app模块化的优点复用:基础模块,可为业务模块所复用解耦:降低模块间的耦合,避免出现一处代码修改,牵一发而动全身的尴尬局面协同开发:项目越来越大,团队人
- Android 冷启动优化的3个小案例
卓修武
Android性能监控与优化android
背景为了提高App的冷启动耗时,除了在常规的业务侧进行耗时代码优化之外,为了进一步缩短启动耗时,需要在纯技术测做一些优化探索,本期我们从类预加载、Retrofit、ARouter方面进行了进一步的优化。从测试数据上来看,这些优化手段的收益有限,可能在中端机上加起来也不超过50ms的收益,但为了冷启动场景的极致优化,给用户带来更好的体验,任何有收益的优化手段都是值得尝试的。类预加载一个类的完整加载流
- ARouter源码解析(五)
俞其荣
arouter-gradle-pluginversion:1.0.2AutoRegister:https://github.com/luckybilly/AutoRegister前言====在本系列的第一篇中讲过,ARouter可以通过扫描dex文件中class的全类名,来加载compiler生成的路由类。但这种方式影响性能,并且效率也不高。所以在ARouterv1.3.0之后的版本中,加入了自动
- 一文了解Android中路由(Router)的实现
susion哒哒
Router对于一个功能越来越复杂的APP来说,路由对于代码的解耦、页面灵活跳转配置、页面拦截功能提供了很好的支持。下面我将分析业界比较出名的两个路由框架WMRouter和ARouter的源码,了解他们的实现原理。这两个框架的实现核心原理是差不多的:通过注解标注路由信息,在编译期动态扫描路由信息,生成加载路由表信息的java类。并利用gradletransform和asm生成加载全部路由信息的cl
- Android 开源框架ARouter
孟芳芳
第三方开源库android
1.ARouterARouter是阿里开源的一款路由框架,是一个用于帮助AndroidApp进行组件化改造的框架,支持模块间的路由、通信、解耦。在组件化架构中,ARouter帮助无相互依赖的组件间进行跳转和通信。以组件化开发中Activity跳转为例,无论上层框架如何封装,activity的底层跳转总是要通过startActivity()实现的,所以就需要获取到目标Activity的实例或路径。为
- Android路由框架ARouter最佳实战
键盘上de烟灰
Android基础ARouterAndroid支付路由AndroidARouter
转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/76165252本文出自【赵彦军的博客】一:什么是路由?说简单点就是映射页面跳转关系的,当然它也包含跳转相关的一切功能。二:为什么需要路由Android系统已经给我们提供了api来做页面跳转,比如startActivity,为什么还需要路由框架呢?我们来简单分析下路由框架存在的意义:在
- 开源最佳实践:Android平台页面路由框架ARouter
johnson-大牛
Androidandroid架构设计阿里云模块化
摘要:为了更好地让开发者们更加深入了解阿里开源,阿里云云栖社区在3月1号了举办“阿里开源项目最佳实践”在线技术峰会,直播讲述了当前阿里新兴和经典开源项目实战经验以及背后的开发思路。在本次在线技术峰会上,阿里云资深开发工程师刘志龙分享了Android平台页面路由框架ARouter的技术方案、解决的问题以及在实际场景中的最佳实践。演讲嘉宾介绍:刘志龙(花名正纬),阿里云资深开发工程师,主要从事Andr
- Android路由框架 - ARouter使用(一) Activity跳转
国际巨星赫赫
Android框架android移动开发
ARouter是阿里开源的一款路由框架,他可以方便的去跳转界面,并自动注入参数到目标页面中,处理组件化模式开发,Module间的跳转及通信。ARoutter-Github地址在组件化模式开发时,以前应该会遇到过需要跳转其他模块的Activity或Service,去引用其他module就会造成引用非常乱,还会出现循环引用想跳转就需要隐式跳转,而且要配置Manifest和Intent跳转,难以维护,代
- Android开发 基于ARouter开源的路由框架的YmRouter
安静的男孩
Android开源android开源
一、ARouter的简介ARouter是一个用于Android的路由框架,它能够帮助开发者实现组件之间的通信和页面跳转。ARouter的核心原理是通过注解来标记和生成路由映射表。开发者只需要在需要跳转的页面上添加注解,然后在代码中通过路由表找到对应的页面进行跳转。ARouter提供了丰富的功能和灵活的配置,可以支持参数传递、拦截器、页面拦截、自动注入等功能。开发者可以根据自己的需求进行配置和使用。
- 基于Arouter实现的组件化方案说明
Android高级工程师
image.png基于Arouter实现的组件化方案说明:基于Arouter实现的组件化方案说明:一个项目,随着业务的发展,模块会变的越来越多,代码量也会变的异常庞大,进而可能开发的人会越来越多,这种情况下如果还是基于单一工程架构,那就需要每一个开发者都熟悉所有的代码,而且代码之间耦合严重,一个模块穿插着大量其他业务模块的逻辑,严重的话可能使项目处于牵一发而动全身,不想轻易修改的局面;而且庞大的单
- android注解apt实现收集activity列表
神的漾
需求:配合Arouter使用,将每个子module的activity的path和name收集起来,这样就可以在app下生成一个依赖的module的activity列表,方便调式.点击直接进入activity.activitylist.png预期方式:直接在每个activity上写上注解,自动收集,省去每次都更改的问题.实现:注解是比较好的方式.1.在studio中创建一个javalibrary.创
- 使用ARouter实现登录拦截功能
QXHL
添加登录的拦截器@Interceptor(priority=1)publicclassLoginInterceptorImplimplementsIInterceptor{@Overridepublicvoidprocess(Postcardpostcard,InterceptorCallbackcallback){Stringpath=postcard.getPath();//登录或者跳到登录界
- ARouter自动注册插件-AutoRegister解析
鹧鸪晏
一、Arouter的组件注册1.自动注册插件在看ARouter源码的过程中看到,在初始化方法init(),有个boolean变量registerByPlugin,表示是否用了插件注册组件。那么这个插件干了什么,为什么要用插件或者不用插件有啥问题吗?LogisticsCenter#init(){...//loadbypluginfirstloadRouterMap();if(registerByPl
- Android组件化基础(二)——组件间的通信
Sean_Word
android
目录导入依赖内容补充修改所有使用到路由跳转的组件的build.gradle文件初始化ARouter的SDK使用ARouter进行跳转在活动中添加注解设置跳转事件组件间的通信携带参数跳转只传输数据不跳转书接上回Android组件化基础(一)——概述与基本配置-CSDN博客组件化后,不同组件之间没有相互依赖,模块间的跳转就不能再通过startActivity()这种方式,比较常用的是阿里的ARoute
- ARouter::There is no route match the path
jxtx
ARouter:https://github.com/alibaba/ARouter在使用服务时会提示找不到路由路径,但是已经按照官网提示的配置好了路径。原因:可能是配置出现问题。在模块化开发时需要在各个模块的build.gradle里都要配置defaultConfig{...javaCompileOptions{annotationProcessorOptions{arguments=[modu
- 全面掌握组件化ARouter,即刻吊打面试官!
不落魄Android开发
前言为了实现组件化要解决的几个问题点,其中页面跳转、组件间通信的问题是使用了ARouter这个框架来解决的。ARouter确实是专门用于做组件化改造,官方是这么介绍的:一个用于帮助AndroidApp进行组件化改造的框架——支持模块间的路由、通信、解耦是时候对ARouter这个强大的框架做一个解析了:它是如何做到页面跳转、组件间通信的?我们能从ARrouter中学到哪些东西?由于内容预计较多,这篇
- 【JavaPoet】浅析JavaPoet的APT代码生成功能
摸鱼小小虫
第三方开源框架javaJavaPoetAndroidARouter
三、JavaPoet目录1、APT技术1.1APT是什么?1.2APT中的结构体思路1.3TypeMirror,element、Class的区别与联系1.4APT中常用Api2、JavaPoet是什么?3、JavaPoet相关Api说明4、使用JavaPoet实现代码生成功能4.1创建一个注解功能库arouter-annottation4.2在app工程下使用注解功能库4.3实现注解处理器功能5、
- ARouter 的简单使用
波波维奇c
阿里巴巴开源的路由:https://github.com/alibaba/ARouterARouter在模块化的开发中尤为的重要,为了解耦不在需要依赖另一个模块又能实现模块间的跳转,还未了解的可以点上面的链接去了解,这篇文章只是介绍简单的使用方法。1.配置:gradle插件大于2.2的可以直接配置android{defaultConfig{...javaCompileOptions{annotat
- Android 组件化基础(二)—— 仿 ARouter 实现一个路由框架
tmacfrank
#开源框架Androidandroid
本篇文章还是从理解ARouter的架构思想和实现细节的角度出发,仿照ARouter实现一个简单的路由框架。如果对ARouter框架和组件化概念不是很熟悉,可以先看前置文章:Android组件化基础(一)——概述与基本配置。由于能力有限,就仅实现三个基本功能:路由扫描、建立路由表通过路由跳转到目标页面通过路由调用其它模块对外暴露的服务拦截器等功能暂不打算实现。一、概述1.1项目结构我们计划用三个模块
- Kotlin 元编程之 KSP 全面突破
川峰
kotlinkotlinandroidKSP元编程注解处理器
什么是元编程没想到吧,这世上除了元宇宙,还有元编程,如果没有接触过,可能会有点懵,不过没关系,简单的说就是用代码来生成代码。实现元编程的传统常见手段主要是使用APT注解处理器+JavaPoet组合拳,如果你是作为一名Android开发者,一定在曾经或者现在使用过很多知名的开源库,比如ButterKnife、ARouter等,这些都是基于注解处理器+JavaPoet的方式实现的元编程,是的,虽然元编
- ARouter启动优化引发的探索
BlueSocks
前言笔者在做启动优化时,发现第一次启动应用时,ARouter初始化耗时占用了接近2s的时间。查询优化方案时,发现只需要通过一个插件就可以解决了。感觉解决方法挺新奇的,但由于对ARouter底层实现不是非常了解,所以本文就诞生了,从一个小白的角度分析下这个插件是如何做到的,实现思路对我们又有什么启发。ARouter的基本使用ARouter的基本使用比较简单,官方README写的也比较清楚,也可以参考
- ARouter路由: com.alibaba.android.arouter.routes.ARouter$$Group$$activity
liys_android
记录一下碰到的坑报错信息.png报错信息如上图;原因:包名重复导致.解决办法:修改路径包名即可,如下图:修改.png
- ASM系列五 利用TreeApi 解析生成Class
lijingyao8206
ASM字节码动态生成ClassNodeTreeAPI
前面CoreApi的介绍部分基本涵盖了ASMCore包下面的主要API及功能,其中还有一部分关于MetaData的解析和生成就不再赘述。这篇开始介绍ASM另一部分主要的Api。TreeApi。这一部分源码是关联的asm-tree-5.0.4的版本。
在介绍前,先要知道一点, Tree工程的接口基本可以完
- 链表树——复合数据结构应用实例
bardo
数据结构树型结构表结构设计链表菜单排序
我们清楚:数据库设计中,表结构设计的好坏,直接影响程序的复杂度。所以,本文就无限级分类(目录)树与链表的复合在表设计中的应用进行探讨。当然,什么是树,什么是链表,这里不作介绍。有兴趣可以去看相关的教材。
需求简介:
经常遇到这样的需求,我们希望能将保存在数据库中的树结构能够按确定的顺序读出来。比如,多级菜单、组织结构、商品分类。更具体的,我们希望某个二级菜单在这一级别中就是第一个。虽然它是最后
- 为啥要用位运算代替取模呢
chenchao051
位运算哈希汇编
在hash中查找key的时候,经常会发现用&取代%,先看两段代码吧,
JDK6中的HashMap中的indexFor方法:
/**
* Returns index for hash code h.
*/
static int indexFor(int h, int length) {
- 最近的情况
麦田的设计者
生活感悟计划软考想
今天是2015年4月27号
整理一下最近的思绪以及要完成的任务
1、最近在驾校科目二练车,每周四天,练三周。其实做什么都要用心,追求合理的途径解决。为
- PHP去掉字符串中最后一个字符的方法
IT独行者
PHP字符串
今天在PHP项目开发中遇到一个需求,去掉字符串中的最后一个字符 原字符串1,2,3,4,5,6, 去掉最后一个字符",",最终结果为1,2,3,4,5,6 代码如下:
$str = "1,2,3,4,5,6,";
$newstr = substr($str,0,strlen($str)-1);
echo $newstr;
- hadoop在linux上单机安装过程
_wy_
linuxhadoop
1、安装JDK
jdk版本最好是1.6以上,可以使用执行命令java -version查看当前JAVA版本号,如果报命令不存在或版本比较低,则需要安装一个高版本的JDK,并在/etc/profile的文件末尾,根据本机JDK实际的安装位置加上以下几行:
export JAVA_HOME=/usr/java/jdk1.7.0_25  
- JAVA进阶----分布式事务的一种简单处理方法
无量
多系统交互分布式事务
每个方法都是原子操作:
提供第三方服务的系统,要同时提供执行方法和对应的回滚方法
A系统调用B,C,D系统完成分布式事务
=========执行开始========
A.aa();
try {
B.bb();
} catch(Exception e) {
A.rollbackAa();
}
try {
C.cc();
} catch(Excep
- 安墨移动广 告:移动DSP厚积薄发 引领未来广 告业发展命脉
矮蛋蛋
hadoop互联网
“谁掌握了强大的DSP技术,谁将引领未来的广 告行业发展命脉。”2014年,移动广 告行业的热点非移动DSP莫属。各个圈子都在纷纷谈论,认为移动DSP是行业突破点,一时间许多移动广 告联盟风起云涌,竞相推出专属移动DSP产品。
到底什么是移动DSP呢?
DSP(Demand-SidePlatform),就是需求方平台,为解决广 告主投放的各种需求,真正实现人群定位的精准广
- myelipse设置
alafqq
IP
在一个项目的完整的生命周期中,其维护费用,往往是其开发费用的数倍。因此项目的可维护性、可复用性是衡量一个项目好坏的关键。而注释则是可维护性中必不可少的一环。
注释模板导入步骤
安装方法:
打开eclipse/myeclipse
选择 window-->Preferences-->JAVA-->Code-->Code
- java数组
百合不是茶
java数组
java数组的 声明 创建 初始化; java支持C语言
数组中的每个数都有唯一的一个下标
一维数组的定义 声明: int[] a = new int[3];声明数组中有三个数int[3]
int[] a 中有三个数,下标从0开始,可以同过for来遍历数组中的数
- javascript读取表单数据
bijian1013
JavaScript
利用javascript读取表单数据,可以利用以下三种方法获取:
1、通过表单ID属性:var a = document.getElementByIdx_x_x("id");
2、通过表单名称属性:var b = document.getElementsByName("name");
3、直接通过表单名字获取:var c = form.content.
- 探索JUnit4扩展:使用Theory
bijian1013
javaJUnitTheory
理论机制(Theory)
一.为什么要引用理论机制(Theory)
当今软件开发中,测试驱动开发(TDD — Test-driven development)越发流行。为什么 TDD 会如此流行呢?因为它确实拥有很多优点,它允许开发人员通过简单的例子来指定和表明他们代码的行为意图。
TDD 的优点:
&nb
- [Spring Data Mongo一]Spring Mongo Template操作MongoDB
bit1129
template
什么是Spring Data Mongo
Spring Data MongoDB项目对访问MongoDB的Java客户端API进行了封装,这种封装类似于Spring封装Hibernate和JDBC而提供的HibernateTemplate和JDBCTemplate,主要能力包括
1. 封装客户端跟MongoDB的链接管理
2. 文档-对象映射,通过注解:@Document(collectio
- 【Kafka八】Zookeeper上关于Kafka的配置信息
bit1129
zookeeper
问题:
1. Kafka的哪些信息记录在Zookeeper中 2. Consumer Group消费的每个Partition的Offset信息存放在什么位置
3. Topic的每个Partition存放在哪个Broker上的信息存放在哪里
4. Producer跟Zookeeper究竟有没有关系?没有关系!!!
//consumers、config、brokers、cont
- java OOM内存异常的四种类型及异常与解决方案
ronin47
java OOM 内存异常
OOM异常的四种类型:
一: StackOverflowError :通常因为递归函数引起(死递归,递归太深)。-Xss 128k 一般够用。
二: out Of memory: PermGen Space:通常是动态类大多,比如web 服务器自动更新部署时引起。-Xmx
- java-实现链表反转-递归和非递归实现
bylijinnan
java
20120422更新:
对链表中部分节点进行反转操作,这些节点相隔k个:
0->1->2->3->4->5->6->7->8->9
k=2
8->1->6->3->4->5->2->7->0->9
注意1 3 5 7 9 位置是不变的。
解法:
将链表拆成两部分:
a.0-&
- Netty源码学习-DelimiterBasedFrameDecoder
bylijinnan
javanetty
看DelimiterBasedFrameDecoder的API,有举例:
接收到的ChannelBuffer如下:
+--------------+
| ABC\nDEF\r\n |
+--------------+
经过DelimiterBasedFrameDecoder(Delimiters.lineDelimiter())之后,得到:
+-----+----
- linux的一些命令 -查看cc攻击-网口ip统计等
hotsunshine
linux
Linux判断CC攻击命令详解
2011年12月23日 ⁄ 安全 ⁄ 暂无评论
查看所有80端口的连接数
netstat -nat|grep -i '80'|wc -l
对连接的IP按连接数量进行排序
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
查看TCP连接状态
n
- Spring获取SessionFactory
ctrain
sessionFactory
String sql = "select sysdate from dual";
WebApplicationContext wac = ContextLoader.getCurrentWebApplicationContext();
String[] names = wac.getBeanDefinitionNames();
for(int i=0; i&
- Hive几种导出数据方式
daizj
hive数据导出
Hive几种导出数据方式
1.拷贝文件
如果数据文件恰好是用户需要的格式,那么只需要拷贝文件或文件夹就可以。
hadoop fs –cp source_path target_path
2.导出到本地文件系统
--不能使用insert into local directory来导出数据,会报错
--只能使用
- 编程之美
dcj3sjt126com
编程PHP重构
我个人的 PHP 编程经验中,递归调用常常与静态变量使用。静态变量的含义可以参考 PHP 手册。希望下面的代码,会更有利于对递归以及静态变量的理解
header("Content-type: text/plain");
function static_function () {
static $i = 0;
if ($i++ < 1
- Android保存用户名和密码
dcj3sjt126com
android
转自:http://www.2cto.com/kf/201401/272336.html
我们不管在开发一个项目或者使用别人的项目,都有用户登录功能,为了让用户的体验效果更好,我们通常会做一个功能,叫做保存用户,这样做的目地就是为了让用户下一次再使用该程序不会重新输入用户名和密码,这里我使用3种方式来存储用户名和密码
1、通过普通 的txt文本存储
2、通过properties属性文件进行存
- Oracle 复习笔记之同义词
eksliang
Oracle 同义词Oracle synonym
转载请出自出处:http://eksliang.iteye.com/blog/2098861
1.什么是同义词
同义词是现有模式对象的一个别名。
概念性的东西,什么是模式呢?创建一个用户,就相应的创建了 一个模式。模式是指数据库对象,是对用户所创建的数据对象的总称。模式对象包括表、视图、索引、同义词、序列、过
- Ajax案例
gongmeitao
Ajaxjsp
数据库采用Sql Server2005
项目名称为:Ajax_Demo
1.com.demo.conn包
package com.demo.conn;
import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;
//获取数据库连接的类public class DBConnec
- ASP.NET中Request.RawUrl、Request.Url的区别
hvt
.netWebC#asp.nethovertree
如果访问的地址是:http://h.keleyi.com/guestbook/addmessage.aspx?key=hovertree%3C&n=myslider#zonemenu那么Request.Url.ToString() 的值是:http://h.keleyi.com/guestbook/addmessage.aspx?key=hovertree<&
- SVG 教程 (七)SVG 实例,SVG 参考手册
天梯梦
svg
SVG 实例 在线实例
下面的例子是把SVG代码直接嵌入到HTML代码中。
谷歌Chrome,火狐,Internet Explorer9,和Safari都支持。
注意:下面的例子将不会在Opera运行,即使Opera支持SVG - 它也不支持SVG在HTML代码中直接使用。 SVG 实例
SVG基本形状
一个圆
矩形
不透明矩形
一个矩形不透明2
一个带圆角矩
- 事务管理
luyulong
javaspring编程事务
事物管理
spring事物的好处
为不同的事物API提供了一致的编程模型
支持声明式事务管理
提供比大多数事务API更简单更易于使用的编程式事务管理API
整合spring的各种数据访问抽象
TransactionDefinition
定义了事务策略
int getIsolationLevel()得到当前事务的隔离级别
READ_COMMITTED
- 基础数据结构和算法十一:Red-black binary search tree
sunwinner
AlgorithmRed-black
The insertion algorithm for 2-3 trees just described is not difficult to understand; now, we will see that it is also not difficult to implement. We will consider a simple representation known
- centos同步时间
stunizhengjia
linux集群同步时间
做了集群,时间的同步就显得非常必要了。 以下是查到的如何做时间同步。 在CentOS 5不再区分客户端和服务器,只要配置了NTP,它就会提供NTP服务。 1)确认已经ntp程序包: # yum install ntp 2)配置时间源(默认就行,不需要修改) # vi /etc/ntp.conf server pool.ntp.o
- ITeye 9月技术图书有奖试读获奖名单公布
ITeye管理员
ITeye
ITeye携手博文视点举办的9月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。 9月试读活动回顾:http://webmaster.iteye.com/blog/2118112本次技术图书试读活动的优秀奖获奖名单及相应作品如下(优秀文章有很多,但名额有限,没获奖并不代表不优秀):
《NFC:Arduino、Andro