- android小白进阶系列----activity启动分析
code搬运
前言曾经我也有迷茫过,android开发过一定经验,我还要干嘛?学其他语言?经过几经思想斗争,我选择了专攻android之路,在我android未达到高层级别,我不会花太多精力去学其他,毕竟android是我饭碗,连饭碗都丢了,还能指望你能学好其他的?那么问题来了怎么专攻?对android底层的了解,无疑对你上层代码使用能更加的轻车熟路、避免bug。所有才有了源码分析系列的博客“好记性不如烂笔头”
- java后端开发学习android之路一(QMUI_Android demo源码分析)
front_ui
前提熟悉java语言的基础知识,了解常见的设计模式安卓基础知识建议看这个文档的第一章就够了,google出的安卓教程,了解activity、fragment和布局文件。官方文档翻译源码学习阶段界面UI建议直接学习QMUI_Android的源码的demoQMUI_Android直接在androidstudio里学习打开项目,找到AndroidManifest.xml这个文件,这个文件是整个项目的入口
- 重拾Android之路之日志封装StackTrace
OzanShareing
引言对于日志打印,之前都是使用Log.i()的方式。今天来探究下StackTraceElement获取方法调用栈的信息。痛点:编写项目的时候,肯定会或多或少的使用Log,尤其是发现bug的时候,会连续在多个类中打印Log信息,当问题解决了,然后需要一行一行地去删除刚才随便添加的Log,有时候还要几个轮回才能删除干净。当然了,我们有很多方案可以不去删除:我们可以通过gradle去配置debug、re
- 重拾Android之路之Activity的跳转方式
OzanShareing
引言项目中遇到这样的场景,从某个fragment或activity跳转到系统设置界面,例如系统定位,假设定位开启,返回界面需要被触发某个行为。由此,我们引入startActivityForResult这个方法。具体用法如下:具体用法一、使用场景在一个主界面(主Activity)通过意图(Intent)跳转至多个不同子Activity上去,当子模块的代码执行完毕后再次返回主页面,将子activity
- 原生Android之路:第一式
tarscoding
>,研习记录,有误轻喷(喷?不存在的,只接受交流和错误指正)1.gradle,工程构建工具,为编译工程文件服务2.build.gradle文件是IDE自动生成的,通常不需要修改3.目录结构如下:Project形态:image.pngIDE的Android工程形态:image.png以Project形态为基础,主要目录解释/.gradle/为gradle工具文件来源=>IDE自动生成,包含=>{版本
- 985硕艰难转行Android之路 加面经分享
上马定江山
程序人生面试Androidandroidjava
个人情况介绍本人为某末流985工科硕士,说来令人感慨,我的考研之路异常曲折,每次都觉得自己能十拿九稳,结果每次都阴差阳错,失之交臂,第一次因为那年目标院校大幅度提升初试线,导致差一分未过线,第二次换了学校,初试分数超复试线40多分,但是复试拉胯也未能上岸,直到第三次又换了个学校才最终如愿。虽然耽误了两年时间,但现在想来那段时期也让我明白了自己到底想要什么以及怎么去争取。春招之路研究生期间,因为所在
- 重拾Android之路之ViewPager(样式使用)
OzanShareing
引言android-support-v4.jar是谷歌提供给我们的一个兼容低版本安卓设备的软件包,里面包囊了只有在Android3.0以上可用的API。而ViewPager就是其中之一。利用它,我们可以做很多事情,从最简单的导航,到页面菜单等等。准备在使用ViewPager之前,需要在build.gradle中加入如下语句:compile'com.android.support:support-v
- 重拾Android之路之第三方登录(微信登录)
OzanShareing
引言一般我们的app中除了账号密码登录以外,还会提供第三方快捷登录。而微信授权登录就是最常使用的一种。你可以用友盟的第三方登录,这是对微信平台的登录的一个二次封装,接口更简单。这里给出一个地址友盟的第三方登录。友盟的第三方登录比较简单,但是可能会出现不稳定,我之前的项目中就有过这种情况,可能是当时在维护,但大部分情况还是没有问题的。今天着重聊一下微信官方平台的微信登录的集成方式。微信官方平台的集成
- APP 优化 - app 启动优化
前行的乌龟
大家都遇到过自己app启动时间有些长,屏幕白屏的问题吧。一个正常的商业app在启动时时会加载一大票组件的初始化的,功能越多需要加载的组件越多,那么app启动的时间就越长,app白屏或黑屏的时间也越长,怎么办呀,今天就来优化一下,谈谈思路,不涉及过多代码下面是几个app启动优化可供参考的案例:优化APP的启动速度Android之路-冷启动解决方案:实现秒开App启动优化方案有介绍统计app启动时长a
- iOS程序猿的Android之路--Android的前世今生
蓝色小石头
笔者iOS程序猿一枚,和大多数攻城狮一样,在某一语言或某一领域做了一段时间后会出现技术增长的瓶颈,在这个深度发展受阻的时候,不妨以广度发展作为新的切入口,在不同语言的类比之后融汇贯通,可能会有新的感悟,以下笔者会以自己的学习轨迹为线索,分阶段分享学习Android的收获与感悟。万语千言,就先从Android的前世今生说起吧!Android的来历||Android由Android公司创造,后被Goo
- 一个小白的Android之路
a1269916738
2017年2月22日正式接触到Android移动应用基础教程这个课本,大二狗终于要去学一些高大上的东西,虽然以前也有了解过一些,但现在感觉那都是毛毛雨,只有真正的了解了这个Android才算入门,第二天老师上课给我们详细介绍了Android的起源及各种环境和怎样编写一个Android小程序,感觉很有意思在宿舍没事就去看看课本关于Android的教学视频感觉里面有很多好的东西,现在只是会建个Hell
- Android之路——开发环境变更:WIN10、AndroidStudio
NAME_CJF
Android
我的博客:http://blog.csdn.net/name_cjf前言在开始正式学习之前,需要注意一下,我的工作环境工WIN7/Eclipse变更为了WIN10/AndroidStudio。其中WIN7变为WIN10其实影响并不大,WIN10只是性能及UI方面做了些优化,对目前安卓开发来说影响不大。不过AndroidStudio用法则与Eclipse有着很大的不同。下面主要介绍下两者的区别。An
- Android之路-启程2:Android开发环境简介以及编写第一个应用程序“HelloWorld”
NAME_CJF
Android
我的博客:http://blog.csdn.net/name_cjf1:Android开发环境简介如果你从未接触过Android,那么可以参考我的这篇文章,如果有一定的基础,那么可以直接跳过。首先,我介绍几个关于Android开发环境的基本名词:1、eclipse:这是一个开发平台(软件),写Android代码就在这个软件中写,当然,学习安卓的基础是有Java基础功底,所以没学过Java的小伙伴们
- 菜鸟学习Android之路---java基础笔记-(3)继承以及封装
让编程成为习惯
JavaAndroid
继承是Java面向对象的三大特征之一,Java的继承是单继承的,每一个子类只有一个直接的父类;在Java中使用extends关键字完成类的继承关系,操作格式:class父类{}//定义父类class子类extends父类{}//使用extends关键字实现继承为什么叫子类,父类呢?我是这样理解的,父类就像人的祖先那样,那只猴,而现在的人就是猴的子类;父类与子类用离散数学来讲就是一般和特殊的关系,(
- 菜鸟学习Android之路---java基础笔记-(4)抽象类与抽象方法
让编程成为习惯
Java
(1)抽象类抽象类与抽象方法作用目的:是为了解决父类之中的不确定性,交给继承的子类去具体实现。(2)抽象方法由关键字abstract修饰,只声明没有实现的方法(3)抽象类由关键字abstract修饰,只能由子类继承,若子类不是抽象类,则必须实现父类中的抽象方法。抽象类可以没有抽象方法,但抽象方法只能放在抽象类中。
- 十年Android之路面试2000+人,面试准备+内部泄露核心题有解析(中高级)
Android725
前言先介绍一下自己:曾服务于东芝,东方集团,阿里,三一重工,有15年项目开发经验,熟悉汇编,java,c/c++开发语言,对系统底层,web开发和移动端开发有较深入研究。主要涉及应用层mis,erp项目和各种嵌入式设备软件(手机,平板,交换机,复合机,无人机,电视,智能家居等)在面试的过程中我深深的感受到,对于一个优秀的安卓开发来说,首先摆在第一位的还是他/她作为一个软件工程师的基本素养。无论你是
- 重拾Android之路之Retrofit+RxJava+OkHttp
OzanShareing
引言Android项目必备基本轮子--------异步网络请求框架。先不考虑在手项目的进度,也不管UI组件的深探,先来将Restful客户端的轮子造起来!现在Android市面上很火的当然是Retrofit+RxJava+OkHttp,功能强大,简单易用,因此选用这套方案来改造网络库。简介:Retrofit:Retrofit是Square公司开发的一款针对Android网络请求的框架。底层基于Ok
- 重拾Android之路(六)缓存
牛谱乐
重拾Android之路
LruCacheLruCache位于android.util包下,属于SDK自动的工具类。Lru的英文为Leastrecentlyused,近期最少使用算法。设计的思路大致是这样的,在一个特定的缓存大小限制下,最近被使用的内容,很可能在未来再次被使用,而越长时间没被使用的内容,被使用的概率越底,基于这样的思路,最近被使用的内容被放在缓存的头部,这样减少了下次使用的查找时间,很长时间不被使用的内容被
- (10)Android之路====一夫当关的POWER键
__毛豆
Android
Power键使用的场景和使用的频率都很高,本次从浅层次了解它.首先看一下使用它的场景:power键:单击事件:1,息屏休眠2,亮屏唤醒长按事件:3,长按关机4,长按开机双击事件:5,双击进相机组合事件:关机:6,power+vol-进recovery7,power+vol+进Factorytestmode开机:8,power+vol-截屏特殊事件:9,通话挂断上面是一个参考示例,不一定所有手机厂商
- (9)Android之路====Android系统OTA更新
__毛豆
Android
本次介绍AndroidOTA更新,AOSP官方教程的地址是:https://source.android.google.cn/devices/tech/ota/另外可以参考:https://blog.csdn.net/zengrunxiu/article/details/81746220,包含实现,升级流程,工作原理,核心服务,SD卡升级,修改.原生Android提供的Recovery更新程序只支
- (8)Android之路====Android新增自定义项目配置
__毛豆
Android
本次介绍并不是很深入,仅作为一种参考学习,在lunch的时候,打印出的每一条都是一个完整的项目,这里简单地介绍如何新增一个自定义的完整项目.因为手头上有一个展锐的机子,所以,这里就以展锐平台为例进行介绍,其它平台配置也是类似的.主要分为4个部分:PS:手机SoC,展锐全球出货量占比27%,仅次于qcom,mtk,虽然不是技术第三,但销量目前稳稳的全球第三1).Android层次项目配置2).ker
- Android之路之九(UI组件3——ProgressBar&SeekBar&TabHost&ImageView)
s874154731
Androidandroiduilayoutencoding虚拟机button
今天呢,学习UI组件中的:ProgressBar、SeekBar、TabHost、ImageView那么,就通过实例来了解上述四个组件。首先介绍ProgressBar(即进度条)先创建progressbar_layout.xml布局文件:这里定义了两个进度条,其中在未定义其样式的情况下,它是一个圆圈形式的进度条。然后在ProgressBar.java文件中调用其布局,实现其代码:packagecn
- Android之路之十一(SharedPreferences&SQLite数据库)
s874154731
Androidandroid数据库sqlitelayoutstringbutton
Android学习进入第三周,由UI(用户界面)开始转入操作层。今天,学习的是SharedPreferences与SQLite数据库。下面,就来具体了解一下,这两个Android平台上的两个存储数据的类和库。SharedPreferences是Android平台上一个轻量级的存储类,主要是保存一些常用的配置比如窗口状态,一般在Activity中重载窗口状态onSaveInstanceState保存
- Android之路之十七(重要组件之Service)
s874154731
Androidserviceandroid电话classnullaction
今天我们来学习Service(Android的隐形管理员)Service是在一段不定的时间运行在后台,不和用户交互应用组件。每个Service必须在manifest中通过来声明。可以通过contect.startservice和contect.bindserverice来启动。Service和其他的应用组件一样,运行在进程的主线程中。这就是说如果service需要很多耗时或者阻塞的操作,需要在其子
- Android之路之七(UI组件1——TextView&EditText)
s874154731
Androidandroiduilayoutencodingstringbutton
UI组件详解1——TextView&EditText今天,学习Android的第七天。今天学习的是UI(用户界面)组件中的TextView和EditText。TextView(文本视图)之前的学习中已经用到了。也即显示文本的组件。今天,具体的来了解一下它:首先TextView的属性设置如下:TextView的直接子类包括Button,CheckedTextView、Chroonometer、Dig
- Android之路之十六(重要組件之BroadcastReceiver)
s874154731
android服务器api
今天学习的是BroadcastReceiver(Android接收员)类,BroadcastReceiver是接收从sendBroadcast()发出的intent的基类。可以通过Context.registerReceiver()方法在代码中动态的注册一个BroadcastReceiver的实例,也可以通过再AndroidManifest.xml文件中用标签来静态声明。注:这两种方法不应同时使用
- Android之路之十六(重要組件之BroadcastReceiver)
s874154731
Androidandroidstringexceptionnulldateobject
今天学习的是BroadcastReceiver(Android接收员)类,BroadcastReceiver是接收从sendBroadcast()发出的intent的基类。可以通过Context.registerReceiver()方法在代码中动态的注册一个BroadcastReceiver的实例,也可以通过再AndroidManifest.xml文件中用标签来静态声明。注:这两种方法不应同时使用
- Android之路之七(UI组件1——TextView&EditText)
s874154731
UI组件详解1——TextView&EditText今天,学习Android的第七天。今天学习的是UI(用户界面)组件中的TextView和EditText。TextView(文本视图)之前的学习中已经用到了。也即显示文本的组件。今天,具体的来了解一下它:首先TextView的属性设置如下:TextView的直接子类包括Button,CheckedTextView、Chroonometer、Dig
- Android之路-SharedPreferences
时光未央_
SharedPreferences是Android平台上一个轻量级的存储类,主要是保存一些常用的配置比如窗口状态,一般在Activity中重载窗口状态onSaveInstanceState保存一般使用SharedPreferences完成,它提供了Android平台常规的Long长整形、Int整形、String字符串型的保存,它是什么样的处理方式呢?SharedPreferences类似过去Win
- Android之路-android菜单简介
时光未央_
Android菜单简介Android提供了三种菜单:optionsmenu,contextmenu,submenu。optionsmenu就是通过按home键来显示,contextmenu需要在view上按上2s后显示。这两种menu都有可以加入子菜单,子菜单不能种不能嵌套子菜单。optionsmenuoptionsmenu最多只能在屏幕最下面显示6个菜单选项,称为iconmenu,iconmen
- ios内付费
374016526
ios内付费
近年来写了很多IOS的程序,内付费也用到不少,使用IOS的内付费实现起来比较麻烦,这里我写了一个简单的内付费包,希望对大家有帮助。
具体使用如下:
这里的sender其实就是调用者,这里主要是为了回调使用。
[KuroStoreApi kuroStoreProductId:@"产品ID" storeSender:self storeFinishCallBa
- 20 款优秀的 Linux 终端仿真器
brotherlamp
linuxlinux视频linux资料linux自学linux教程
终端仿真器是一款用其它显示架构重现可视终端的计算机程序。换句话说就是终端仿真器能使哑终端看似像一台连接上了服务器的客户机。终端仿真器允许最终用户用文本用户界面和命令行来访问控制台和应用程序。(LCTT 译注:终端仿真器原意指对大型机-哑终端方式的模拟,不过在当今的 Linux 环境中,常指通过远程或本地方式连接的伪终端,俗称“终端”。)
你能从开源世界中找到大量的终端仿真器,它们
- Solr Deep Paging(solr 深分页)
eksliang
solr深分页solr分页性能问题
转载请出自出处:http://eksliang.iteye.com/blog/2148370
作者:eksliang(ickes) blg:http://eksliang.iteye.com/ 概述
长期以来,我们一直有一个深分页问题。如果直接跳到很靠后的页数,查询速度会比较慢。这是因为Solr的需要为查询从开始遍历所有数据。直到Solr的4.7这个问题一直没有一个很好的解决方案。直到solr
- 数据库面试题
18289753290
面试题 数据库
1.union ,union all
网络搜索出的最佳答案:
union和union all的区别是,union会自动压缩多个结果集合中的重复结果,而union all则将所有的结果全部显示出来,不管是不是重复。
Union:对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序;
Union All:对两个结果集进行并集操作,包括重复行,不进行排序;
2.索引有哪些分类?作用是
- Android TV屏幕适配
酷的飞上天空
android
先说下现在市面上TV分辨率的大概情况
两种分辨率为主
1.720标清,分辨率为1280x720.
屏幕尺寸以32寸为主,部分电视为42寸
2.1080p全高清,分辨率为1920x1080
屏幕尺寸以42寸为主,此分辨率电视屏幕从32寸到50寸都有
适配遇到问题,已1080p尺寸为例:
分辨率固定不变,屏幕尺寸变化较大。
如:效果图尺寸为1920x1080,如果使用d
- Timer定时器与ActionListener联合应用
永夜-极光
java
功能:在控制台每秒输出一次
代码:
package Main;
import javax.swing.Timer;
import java.awt.event.*;
public class T {
private static int count = 0;
public static void main(String[] args){
- Ubuntu14.04系统Tab键不能自动补全问题解决
随便小屋
Ubuntu 14.04
Unbuntu 14.4安装之后就在终端中使用Tab键不能自动补全,解决办法如下:
1、利用vi编辑器打开/etc/bash.bashrc文件(需要root权限)
sudo vi /etc/bash.bashrc
接下来会提示输入密码
2、找到文件中的下列代码
#enable bash completion in interactive shells
#if
- 学会人际关系三招 轻松走职场
aijuans
职场
要想成功,仅有专业能力是不够的,处理好与老板、同事及下属的人际关系也是门大学问。如何才能在职场如鱼得水、游刃有余呢?在此,教您简单实用的三个窍门。
第一,多汇报
最近,管理学又提出了一个新名词“追随力”。它告诉我们,做下属最关键的就是要多请示汇报,让上司随时了解你的工作进度,有了新想法也要及时建议。不知不觉,你就有了“追随力”,上司会越来越了解和信任你。
第二,勤沟通
团队的力
- 《O2O:移动互联网时代的商业革命》读书笔记
aoyouzi
读书笔记
移动互联网的未来:碎片化内容+碎片化渠道=各式精准、互动的新型社会化营销。
O2O:Online to OffLine 线上线下活动
O2O就是在移动互联网时代,生活消费领域通过线上和线下互动的一种新型商业模式。
手机二维码本质:O2O商务行为从线下现实世界到线上虚拟世界的入口。
线上虚拟世界创造的本意是打破信息鸿沟,让不同地域、不同需求的人
- js实现图片随鼠标滚动的效果
百合不是茶
JavaScript滚动属性的获取图片滚动属性获取页面加载
1,获取样式属性值
top 与顶部的距离
left 与左边的距离
right 与右边的距离
bottom 与下边的距离
zIndex 层叠层次
例子:获取左边的宽度,当css写在body标签中时
<div id="adver" style="position:absolute;top:50px;left:1000p
- ajax同步异步参数async
bijian1013
jqueryAjaxasync
开发项目开发过程中,需要将ajax的返回值赋到全局变量中,然后在该页面其他地方引用,因为ajax异步的原因一直无法成功,需将async:false,使其变成同步的。
格式:
$.ajax({ type: 'POST', ur
- Webx3框架(1)
Bill_chen
eclipsespringmaven框架ibatis
Webx是淘宝开发的一套Web开发框架,Webx3是其第三个升级版本;采用Eclipse的开发环境,现在支持java开发;
采用turbine原型的MVC框架,扩展了Spring容器,利用Maven进行项目的构建管理,灵活的ibatis持久层支持,总的来说,还是一套很不错的Web框架。
Webx3遵循turbine风格,velocity的模板被分为layout/screen/control三部
- 【MongoDB学习笔记五】MongoDB概述
bit1129
mongodb
MongoDB是面向文档的NoSQL数据库,尽量业界还对MongoDB存在一些质疑的声音,比如性能尤其是查询性能、数据一致性的支持没有想象的那么好,但是MongoDB用户群确实已经够多。MongoDB的亮点不在于它的性能,而是它处理非结构化数据的能力以及内置对分布式的支持(复制、分片达到的高可用、高可伸缩),同时它提供的近似于SQL的查询能力,也是在做NoSQL技术选型时,考虑的一个重要因素。Mo
- spring/hibernate/struts2常见异常总结
白糖_
Hibernate
Spring
①ClassNotFoundException: org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException
缺少aspectjweaver.jar,该jar包常用于spring aop中
②java.lang.ClassNotFoundException: org.sprin
- jquery easyui表单重置(reset)扩展思路
bozch
formjquery easyuireset
在jquery easyui表单中 尚未提供表单重置的功能,这就需要自己对其进行扩展。
扩展的时候要考虑的控件有:
combo,combobox,combogrid,combotree,datebox,datetimebox
需要对其添加reset方法,reset方法就是把初始化的值赋值给当前的组件,这就需要在组件的初始化时将值保存下来。
在所有的reset方法添加完毕之后,就需要对fo
- 编程之美-烙饼排序
bylijinnan
编程之美
package beautyOfCoding;
import java.util.Arrays;
/*
*《编程之美》的思路是:搜索+剪枝。有点像是写下棋程序:当前情况下,把所有可能的下一步都做一遍;在这每一遍操作里面,计算出如果按这一步走的话,能不能赢(得出最优结果)。
*《编程之美》上代码有很多错误,且每个变量的含义令人费解。因此我按我的理解写了以下代码:
*/
- Struts1.X 源码分析之ActionForm赋值原理
chenbowen00
struts
struts1在处理请求参数之前,首先会根据配置文件action节点的name属性创建对应的ActionForm。如果配置了name属性,却找不到对应的ActionForm类也不会报错,只是不会处理本次请求的请求参数。
如果找到了对应的ActionForm类,则先判断是否已经存在ActionForm的实例,如果不存在则创建实例,并将其存放在对应的作用域中。作用域由配置文件action节点的s
- [空天防御与经济]在获得充足的外部资源之前,太空投资需有限度
comsci
资源
这里有一个常识性的问题:
地球的资源,人类的资金是有限的,而太空是无限的.....
就算全人类联合起来,要在太空中修建大型空间站,也不一定能够成功,因为资源和资金,技术有客观的限制....
&
- ORACLE临时表—ON COMMIT PRESERVE ROWS
daizj
oracle临时表
ORACLE临时表 转
临时表:像普通表一样,有结构,但是对数据的管理上不一样,临时表存储事务或会话的中间结果集,临时表中保存的数据只对当前
会话可见,所有会话都看不到其他会话的数据,即使其他会话提交了,也看不到。临时表不存在并发行为,因为他们对于当前会话都是独立的。
创建临时表时,ORACLE只创建了表的结构(在数据字典中定义),并没有初始化内存空间,当某一会话使用临时表时,ORALCE会
- 基于Nginx XSendfile+SpringMVC进行文件下载
denger
应用服务器Webnginx网络应用lighttpd
在平常我们实现文件下载通常是通过普通 read-write方式,如下代码所示。
@RequestMapping("/courseware/{id}")
public void download(@PathVariable("id") String courseID, HttpServletResp
- scanf接受char类型的字符
dcj3sjt126com
c
/*
2013年3月11日22:35:54
目的:学习char只接受一个字符
*/
# include <stdio.h>
int main(void)
{
int i;
char ch;
scanf("%d", &i);
printf("i = %d\n", i);
scanf("%
- 学编程的价值
dcj3sjt126com
编程
发一个人会编程, 想想以后可以教儿女, 是多么美好的事啊, 不管儿女将来从事什么样的职业, 教一教, 对他思维的开拓大有帮助
像这位朋友学习:
http://blog.sina.com.cn/s/articlelist_2584320772_0_1.html
VirtualGS教程 (By @林泰前): 几十年的老程序员,资深的
- 二维数组(矩阵)对角线输出
飞天奔月
二维数组
今天在BBS里面看到这样的面试题目,
1,二维数组(N*N),沿对角线方向,从右上角打印到左下角如N=4: 4*4二维数组
{ 1 2 3 4 }
{ 5 6 7 8 }
{ 9 10 11 12 }
{13 14 15 16 }
打印顺序
4
3 8
2 7 12
1 6 11 16
5 10 15
9 14
13
要
- Ehcache(08)——可阻塞的Cache——BlockingCache
234390216
并发ehcacheBlockingCache阻塞
可阻塞的Cache—BlockingCache
在上一节我们提到了显示使用Ehcache锁的问题,其实我们还可以隐式的来使用Ehcache的锁,那就是通过BlockingCache。BlockingCache是Ehcache的一个封装类,可以让我们对Ehcache进行并发操作。其内部的锁机制是使用的net.
- mysqldiff对数据库间进行差异比较
jackyrong
mysqld
mysqldiff该工具是官方mysql-utilities工具集的一个脚本,可以用来对比不同数据库之间的表结构,或者同个数据库间的表结构
如果在windows下,直接下载mysql-utilities安装就可以了,然后运行后,会跑到命令行下:
1) 基本用法
mysqldiff --server1=admin:12345
- spring data jpa 方法中可用的关键字
lawrence.li
javaspring
spring data jpa 支持以方法名进行查询/删除/统计。
查询的关键字为find
删除的关键字为delete/remove (>=1.7.x)
统计的关键字为count (>=1.7.x)
修改需要使用@Modifying注解
@Modifying
@Query("update User u set u.firstna
- Spring的ModelAndView类
nicegege
spring
项目中controller的方法跳转的到ModelAndView类,一直很好奇spring怎么实现的?
/*
* Copyright 2002-2010 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* yo
- 搭建 CentOS 6 服务器(13) - rsync、Amanda
rensanning
centos
(一)rsync
Server端
# yum install rsync
# vi /etc/xinetd.d/rsync
service rsync
{
disable = no
flags = IPv6
socket_type = stream
wait
- Learn Nodejs 02
toknowme
nodejs
(1)npm是什么
npm is the package manager for node
官方网站:https://www.npmjs.com/
npm上有很多优秀的nodejs包,来解决常见的一些问题,比如用node-mysql,就可以方便通过nodejs链接到mysql,进行数据库的操作
在开发过程往往会需要用到其他的包,使用npm就可以下载这些包来供程序调用
&nb
- Spring MVC 拦截器
xp9802
spring mvc
Controller层的拦截器继承于HandlerInterceptorAdapter
HandlerInterceptorAdapter.java 1 public abstract class HandlerInterceptorAdapter implements HandlerIntercep