- Android AOSP 6,android驱动开发与移植实战详解
m0_66144992
程序员架构移动开发android
这还不够,因为很有可能出错跳出来了,我们需要一个脚本,在出问题的情况下再次执行reposync,在当前需要下载源码的目录下新建down.sh文件,直接使用vi命令即可。vidown.sh接下来,在vi编辑器内输入下面这段脚本代码,保存退出。#!/bin/shreposyncwhile[$?-ne0]doreposyncdone用这段脚本执行,替换reposync这条命令。./down.shN个小时
- Android驱动开发———两种模型简记
放羊娃
Android
1、NDK模型:由内核级别的驱动程序和APP组成,内核级别的驱动程序对外的接口是ioctl,而APP是由JAVA语言写的,JAVA语言并没有(或者并不支持)ioctl接口,所以内核级别的驱动程序和APP是不能直接连接(数据交换),那么就在中间增加了一层C/C++,这层C/C++支持ioctl接口,可以和内核级别的驱动程序连接,而APP的JAVA程序又可以调用C/C++,这样就连接起来了,JAVA通
- Android模拟器检测体系梳理,android驱动开发入门
m0_65511857
程序员面试移动开发android
安卓系统兼容性:目前模拟器上的Android系统仍然停留在4.x,部分达到5.1,使得部分对安卓版本有要求的应用或游戏在模拟器上运行体验不好。底层关键技术>>>>虚拟化技术模拟器是用软件来模拟硬件操作,这就需要用到虚拟化技术。广义的虚拟化,是指将网络、CPU、内存及存储等各种实体资源,予以抽象、转换后呈现出来,进而打破实体结构间不可切割的障碍,使用户可以比原本的组态更好的方式来应用这些资源。我们所
- 初入android驱动开发之usb(一)
MorTree
android框架之初研究驱动开发usbandroid开发
这里主要收集了一些USB关于OTG、device、host相关的知识。当设备检测到USB_ID信号为低时,表该设备应作为Host(主机,也称A设备)用。当设备检测到USB_ID信号为高时,表示该设备作为Slave(外设,也称B设备)用。因此,在主机侧的层次结构中,要实现的USB驱动包括两类:USB主机控制器驱动和USB设备驱动,前者控制插入其中的USB设备,后者控制USB设备如何与主机通信。在这棵
- android驱动开发工程师,android驱动开发工程师
孟婵
android驱动开发工程师
android驱动开发工程师任职资格:1、精通android基础知识,熟悉android底层,了解frameworks层;2、熟悉MTK、高通等手机或平板电脑平台,有调试MTK6735、MTK6737、MTK6739平台驱动经验者优先;3、熟练使用linux常用命令、代码管理工具(git/repo)和shell脚本编写;4、熟悉android驱动调试流程;系统性问题分析处理有3年以上调试经验;5、
- WebView遇到的坑及优化,android驱动开发书籍
yiqicsgo
程序员面试
}});(5)WebView调用手机系统相册来上传图片,开发过程中发现在很多机器上无法正常唤起系统相册来选择图片。怎么解决?原因分析:因为Google攻城狮们对setWebChromeClient的回调方法openFileChooser做了多次修改,5.0以下openFileChooser有几种重载方法,在5.0以上将回调方法该为了onShowFileChooser。解决方案:为了兼容各个版本,我
- 「万物生长」一个APK从诞生到活跃在Android手机上,android驱动开发权威指南pdf
m0_65146105
程序员面试android移动开发
可能到这里你还没有感觉,但如果看了这张图呢?是否能切实的感受到Gradle所提供的强大能力了,因为对我们我们开发者而言其实只干了一件运行按钮的触发操作,但是背后Gradle给我们所带来的收益是无穷无尽的。在这里我们知道他很有用了,但是为什么还要提一下他的兄弟Maven呢?主要是为了让你转化手头的构建工具,根据官网的构建速度对比。具体请参考文档GradlevsMaven:性能比较因为公司里一般的项目
- Android音视频开发(1),android驱动开发权威指南pdf
m0_66264324
程序员架构移动开发android
除了I/P/B帧外,还有图像序列GOP。GOP:两个I帧之间是一个图像序列,在一个图像序列中只有一个I帧。如下图所示:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7oDJR6mL-1608540503824)(https://upload-images.jianshu.io/upload_images/24944255-2695e751eab6dfd4.png?i
- Android驱动开发
android framework
linux驱动开发android
https://blog.csdn.net/qq_30624591/category_8561053.html
- android驱动开发从零到一
icedrunkard
驱动开发androidc语言
目录安卓驱动开发过程机器介绍步骤step1:下载android11源码一、谷歌的源码下载:二、rk3568提供的源码下载:step2:编译android源码(make命令)1.编译的几个选项2.开始编译step3:编写驱动文件step4:开始构建镜像(build.sh)两种驱动编译方式1.驱动编译到内核介绍:2.驱动编译成内核模块介绍:m1.驱动编译到内核实战s1.drivers文件夹内创建自己的
- android驱动开发基础
soengtung zhu
嵌入式armlinuxAndroidAndroid驱动开发JNIHAL
目录基本环境一、build二、编写Android.mk三、LOG系统四、init.rc五、JNI1.java调用jni接口2.aosp中开发native代码3.AndroidStudio中开发native代码六、传统HAL1.接口声明2.接口实现3.添加编译规则4.使用HAL的接口参考文献基本环境开发板:hikey960代码:aosp,AndroidR开发环境:64bitubuntu16.04,一
- 聊聊i2c框架
zoro_lii
linux
1,聊聊i2c2,那就开始吧3,其实我不想贴代码3.1板级支持包3.2内核注册i2c设备3.3去找driver吧1,聊聊i2c以前一直觉得linuxi2c好复杂,做android驱动开发的时候,用的最多的就是i2c了,各种sensor都是i2c接口。在mtk平台上调试一个sensor,发现i2c最多发送7个字节,超过7个字节就出错。项目紧加上没看过i2c平台的源码,解不出来。于是找mtk帮助,然后
- 第一篇 Android驱动开发环境搭建之一 -- 虚拟机搭建
htob_workstation
AndroidDriver
1.搭建虚拟机2.掌握ADB常用命令#adbdevices#adbrebootbootloader#fastbootflashaboot#fastbootflashboot#fastbootflashsystem
- Android驱动开发全过程
bobuddy
移动开发
Android驱动开发全过程(有图有真相)前言意外在网上发现了这扁文章,看后感觉很有必要分享,所以整理并上传,希望大家喜欢。Android硬件抽象层(HAL)概要介绍和学习计划Android的硬件抽象层,简单来说,就是对Linux内核驱动程序的封装,向上提供接口,屏蔽低层的实现细节。也就是说,把对硬件的支持分成了两层,一层放在用户空间(UserSpace),一层放在内核空间(KernelSpace
- Android驱动开发:应用层读写GPIO
forlan_csdn
驱动开发androidrom开发
本文用于简单总结近期调试应用层读写gpio。应用层操作gpio的主要思路:编写驱动->驱动编译进内核->创建设备节点,赋予读写权限->应用层以文件读写的方式对设备节点进行读写操作。需要修改的地方:1.内核设备树里面增加gpio节点/{gpio_usb_otg_host{compatible="qcom,usb_otg_host";qcom,gpio_otg_host=;enable-active-
- Android驱动开发【NDK模型】———为什么使用JNI
放羊娃
Android
JNI(JavaNativeInterface):即Java本地接口。它提供了Java程序调用C/C++程序的机制。不少人也许会问:Java已经足够强大,为什么需要JNI来调用C/C++程序呢?A.代码的保护。由于Java代码很容易被反编译,而C/C++库反汇编难度较大。B.可以方便地使用现存的开源库。大部分现存的开源库都是用C/C++代码编写的。C.提高程序的执行效率。将要求高性能的应用逻辑使用
- Android驱动开发-- 1.内核driver层
南瓜大王
android系统
Android系统要控制硬件设备,首先需要在驱动层写一个驱动,android的底层是Linux,写设备驱动和Linux下写设备驱动一样。在Linux系统中,设备驱动是以文件的形式表现,可以使用和操作普通文件相同的操作命令对设备文件进行操作,例如打开、关闭、读、写等。写字符设备驱动步骤:1.定义一个file_operations结构体,并在结构体里面定义设备的打开、关闭、读、写、控制等操作函数。2.
- 将自己的驱动编译进内核
raygodlee
android内核
最近在学习android驱动开发,主要是参考李宁老师的《Android深度探索——HAL与驱动开发》。李宁老师讲的很好,按照书中的叙述,基本都能够跟着做下来,学到了很多。但是在第一个驱动程序—统计单词个数—中,在将word_count驱动编译进入内核实现自动加载的时候遇到了问题,经过思考找到了自己的解决方案,在此记录一下。声明:可能是我的某些步骤有错,所以没能够按照书的步骤走下去,希望大牛指点。首
- Linux与WinCE驱动开发对比之一 —— 两种系统的发展趋势
于海平
Andoridlinux系统及驱动WinCE系统及驱动linuxLinuxLINUXwinceWINCEWinCE发展趋势对比驱动开发
Linux与WinCE驱动开发对比之一——两种系统的发展趋势序言首先声明,本人不是什么大牛。写这篇文章主要是因为我从大三开始自己学习Linux驱动,工作后搞过一年的Linux的驱动,最近又从零开始学习WinCE,回想几年前,自己在学习Linux的时候并没有想过为什么不学WinCE而却选择了Linux。不过现在嵌入式培训机构把嵌入式开发,尤其是Android驱动开发炒作的很火。很多刚毕业的学生,以为
- 视频教程-Linux驱动开发培训系列教程-驱动/内核开发
学院导师-高言礼
Linux驱动开发培训系列教程多年来一直专注于嵌入式软件开发,15年以上开发经验,目前仍从事一线的嵌入式软件开发工作。从最初的单片机软件开发,到ARM软件开发(裸机、UCOS-II),最后集中精力于Linux驱动开发(包括Android驱动开发)。涉及的产品包括远程抄表、手机驱动、智能家居网关。就职的公司有大有小,目前为一家智能家居公司的技术总监。高言礼¥28.00立即订阅订阅后:请点击此处观看视
- 视频教程-蔡工RK3288_Android7.1驱动开发入门-驱动/内核开发
weixin_34319526
蔡工RK3288_Android7.1驱动开发入门多年Android/Linux驱动开发经验,熟悉c/c++语言,汇编语言等编程语言。先后做过全志,RK,展讯,MTK,AMLOGIC等智能硬件平台,从事过手机,平板电脑,广告机,早教机,机器人,智能盒子等Android驱动开发,熟悉安卓驱动调试开发流程,涉及多种外设模块。现在希望通过视频讲解的方式分享一些驱动开发调试经验,让更多人入门Android
- Android驱动开发之陀螺仪(一)
翰海逐流
Android驱动篇
Android驱动开发之陀螺仪开发平台:君正M200S安卓系统:Android5.1一、前言很不容易,经过几天加班加点的调试,终于成功将MPU9250移植到这块板子上,在此记录下这个兴奋的时刻,每次调完一个驱动,都感觉我能统治世界,但同样每次因为种种原因中止调试,就感觉自己跟咸鱼没啥两样,因此不断克服困难才能提升自己,不然与其半途而废,不如一开始知难而退,毕竟每次的失败都会在心中留下一个不断告诉你
- Android驱动开发之earlysuspend睡眠模式编程总结
bigapple88
(1)添加头文件:#include(2)在特定驱动结构体中添加early_suspend结构:#ifdefCONFIG_HAS_EARLYSUSPENDstructearly_suspendearly_suspend;#endif(3)在驱动probe函数中注册相关early_suspend结构体:#ifdefCONFIG_HAS_EARLYSUSPENDftk_ts->early_suspend
- Android驱动开发之earlysuspend睡眠模式--实现代码【转】
anfeng3664
本文转载自:http://blog.csdn.net/MyArrow/article/details/8136018(1)添加头文件:#include(2)在特定驱动结构体中添加early_suspend结构:#ifdefCONFIG_HAS_EARLYSUSPENDstructearly_suspendearly_suspend;#endif(3)在驱动probe函数中注册相关early_sus
- Android驱动开发之earlysuspend睡眠模式--实现代码
Arrow
Android待机唤醒
(1)添加头文件:#include(2)在特定驱动结构体中添加early_suspend结构:#ifdefCONFIG_HAS_EARLYSUSPENDstructearly_suspendearly_suspend;#endif(3)在驱动probe函数中注册相关early_suspend结构体:#ifdefCONFIG_HAS_EARLYSUSPENDftk_ts->early_suspend
- 初入android驱动开发之字符设备(一)
MorTree
回忆android移动开发
大学毕业,初入公司,招进去的是android驱动开发工程师的岗位,那时候刚进去,首先学到的就是如何搭建kernel、android的编译环境,然后就是了解如何刷设备以及一些最基本的工具。如adb、fastboot、grep、minicom、kermit、svn、git、eclispe、ndk等相关的知识,记得那时候很挫,过去很多东西都不懂。到了那,一周,都是熟悉使用ubuntu,然后了解刷机的流程
- 高通开发-LCD(一)
MorTree
高通开发
板子能够正常打印出log,并且log能看到android启动的代码后,就可以连接上外设,开始进行驱动调试。android驱动开发,真正自己写一个驱动代码的机会很少,作为高通方案,基本的开发思路:1.需要调试的外设已在该芯片支持的外设列表,直接去高通网站下载驱动,添加到代码编译即可2.如果该芯片列表没有该外设,可以查该外设,是否会在其他类型的芯片中支持,下载修改即可。3.如果该外设没有在支持列表,可
- 浅析Android下的Android.mk文件(三)
沉默的过客
AndroidAndroid驱动
因为从事着android驱动开发所以天天要接触Android.mk。1、在运行.build/envsetup.sh会生成一些操作例如:chooseproductmmm2、运行chooseproductproject选择所要编译的工程3、运行make,回去编译整个androidsource怎么说到了编译AndroidSource的方法呢切入主题先写一个简单的Android.mkLOCAL_PATH:
- Android驱动开发知识储备(纯手打,更新:2018.4.11)
键盘舞者113
Android驱动开发
Android软件层次结构(1)操作系统层显示驱动(FrameBuffer),Flash内存驱动,照相机驱动,音频驱动,WiFi驱动,键盘驱动,蓝牙驱动,BinderIPC驱动,PowerManagement,这些都包括在Linux内核里。(2)各种库和Android运行环境C库、多媒体框架、SGL(2D图像引擎),SSL(安全),OpenGLES(3D),界面管理工具,SQLite,WebKit
- 关于《Android驱动开发权威指南》这本书怎么样,我的感受是大坑!
bilifo
工作之外
《Android驱动开发权威指南》杨柳编著2014年3月出版。看着出版日期比较新,预览的pdf上,代码还挺多的,就脑袋发热,买了。现在后悔,不是因为多花了那么50多块的冤枉钱,而是白白浪费了我三个月的时间,不值。作为一个入门新手,前面5章那些全文字、全概念性的东西本来就已经很难理解了,但貌似作者好像并不认为你完全是个小白,一大堆linux术语,还好,我学过点linux,但也要常常百度。如果上面这点
- 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