- React Native通讯原理
zbl_zbl
androidReactNativ
之前写过一篇文章ReactNativeAndroid源码分析,在此文章的基础上分析和总结下RN与Native的通讯流程。本文基于Android代码分析,iOS实现原理类似。1.通讯框架图先来解析下各个模块的角色与作用:Java层,这块的实现在ReactAndroid中-ReactContext:Android上下文子类,包含一个CatalystInstance实例,用于获取NativeModule
- Android源码分析--启动时序图
linuxMinx
Android源码分析Android源码分析
为什么Android系统启动比较慢Build的产物中最重要的是三个镜像文件,位于/out/target/product//目录下ramdisk.img:在启动时将被Linux内核挂载为只读分区,它包含了/init文件和一些配置文件。它用来挂载其他系统镜像并启动init进程。解析步骤:Init.c(system\core\init)Init.c{main(......init_parse_confi
- Adb显示第3方应用的包名原理
亚瑟-小郎
adblistframeworkandroid
Android早期版本实现原理请看Android源码分析-pm命令的实现,列出包名pmlistpackage,列出系统库pmlistlibraries_pmlistpackages-CSDN博客Android12对adbshellpm实现原理做了重构:改成了template模式PackageManagerShellCommandextendsShellCommandadbshellpmlistpa
- Android源码分析之消息机制
AN_9c94
说明:本文是基于Android6.0源码来分析的这片文章主要是从源码的角度来分析Android中的消息机制是如何运行的,并不会介绍如何使用Handler。Android的消息机制可以说是Android的血液,流淌在不同的app之间,催动这各种事件有序的执行。Android进程在启动的时候会调用ThreadActivity的main方法,从main方法中我们可以看出,Android的app进程启动以
- Android源码分析:Activity启动流程
LeaYw
分析流程基于Android8.0源码一般情况下我们通过Activity中的startActivity方法启动一个Activity。这个流程中涉及一下几个类:android.app.Activityandroid.app.Instrumentationcom.android.server.am.ActivityManagerServicecom.android.server.am.ActivityS
- Android 源码分析-消息队列和 Looper
度憨憨
1.Android源码分析-消息队列和Looper概念什么是消息队列消息队列在android中对应MessageQueue这个类,顾名思义,消息队列中存放了大量的消息(Message)什么是消息消息(Message)代表一个行为(what)或者一串动作(Runnable),有两处会用到Message:Handler和Messenger什么是Handler和MessengerHandler大家都知道
- Android源码分析--Android系统启动
xuexiangjys
Android系统启动其实Android系统的启动最主要的内容无非是init、Zygote、SystemServer这三个进程的启动,他们一起构成的铁三角是Android系统的基础。启动大纲启动电源以及引导程序加载引导程序BootLoader启动Linux内核启动init进程启动Zygote进程启动SystemServer进程启动Launcher启动启动流程图在这里插入图片描述启动详解init进程
- Android源码分析 - Framework层的ContentProvider全解析
dreamgyf
android
开篇本篇以android-11.0.0_r25作为基础解析在四大组件中,可能我们平时用到最少的便是ContentProvider了,ContentProvider是用来帮助应用管理其自身和其他应用所存储数据的访问,并提供与其他应用共享数据的方法,使用ContentProvider可以安全的在应用之间共享和修改数据,比如说访问图库,通讯录等在之前的文章中,我们提到了ContentProvider的启
- 安卓学习资料推荐《深入理解Android:卷2》下载
weixin_30550081
java数据库操作系统
下载地址:百度云下载地址编辑推荐《深入理解Android:卷2》编辑推荐:经典畅销书《深入理解Android:卷I》姊妹篇,51CTO移动开发频道和开源中国社区一致鼎力推荐!从系统设计者的角度对JavaFramework包含的重要模块和服务的源代码进行细致剖析,深刻揭示其实现原理和工作机制。媒体推荐市面上关于Android源码分析的书非常多,但是没有一本书的分析粒度像本书这样细致。Android系
- Android源码分析 - Service启动流程
码中之牛
移动开发AndroidFrameworkandroid移动开发framework安卓
作者:dreamgyf这次我们就来讲讲四大组件之一的Service是如何启动和绑定的流程图在查阅资料的过程中,我发现有些博主会将梳理好的流程图贴在开头,我觉得这样有助于从宏观上去理解源码的整个流程和设计理念,所以以后的文章我都会尽量将源码梳理成流程图,以便大家理解入口启动Service有两种方式,一是startService,一是bindService,它们最终的实现都在ContextImpl中C
- android源码分析
千里送人头
androidandroid数据库手机listview电话工具
01_Android系统概述02_Android系统的开发综述03_Android的Linux内核与驱动程序04_Android的底层库和程序05_Android的JAVA虚拟机和JAVA环境06_Android的GUI系统07_Android的Audio系统08_Android的Video输入输出系统09_Android的多媒体系统10_Android的电话部分11_Android的连接部分12
- 美团点评APP在移动网络性能优化的实践,吊打面试官系列!
阿里MySQL面经
程序员android移动开发面试
一.开发背景想要成为一名优秀的Android开发,你需要一份完备的知识体系,在这里,让我们一起成长为自己所想的那样。Android相关1.Android之SharedPreferences内部原理浅析2.Android源码分析-消息队列和Looper3.Android源码分析—带你认识不一样的AsyncTask4.Android性能优化之使用线程池处理异步任务5.AndroidContext完全解
- 【转】Android源码分析-Dex优化 类加载
曾经灬
本课只以Dalvik类加载为解说,至于ART类加载,课后自行解决,实际上,从本质和函数来看,基本还是一样的,只是把dexopt过程换成dex2oat过程,在类加载中关键函数名进行变更。http://androidxref.com/1.DEX文件优化与验证:run_dexopt:staticconstchar*Dex_OPT_BIN="/system/bin/dexopt"\dexopt\Optma
- Android源码分析挖掘-开天辟地init进程
程序课代表
androidframwork
序言PC启动一般会通过BIOS或者EFI引导程序启动,Android一般作为移动设备,没有PC的BIOS或者EFI,取而代之的是BootLoader。BootLoader按下电源键CPU上电完成后,会从固定地址加载一段程序,就是BootLoader,不通的CPU可能地址段会有差异,BootLoader是一段引导程序,常见的就是U-boot。U-boot程序启动后,一般会先检测是否同时按下了触发U-
- Android源码分析 - Binder驱动(中)
dreamgyf
Android源码分析android
开篇本篇以aosp分支android-11.0.0_r25,kernel分支android-msm-wahoo-4.4-android11作为基础解析上一篇文章Android源码分析-Binder驱动(上),我们已经了解了binder驱动设备是如何注册的,并且分析了binder_open和binder_mmap操作函数,接下来我们继续分析binder驱动中最重要的部分binder_ioctlioc
- 单列模式总结(结合Android源码分析)
fuxiang_lxf
android源码设计模式
谈起设计模式估计大家都不会陌生,一个项目中至少会用到其中的一种模式,今天要说的主角就是单列,我了大致总结了它的几种用法同时也结合了Android的源码进行单列的分析;好了正题开始了,其实个人总结了下自我学习的方法,在学习任何一个新的事物的时候,不能盲目的去干,而应适当的采取一定的技巧性东西,OK;我大致分了三大步:1:要知道这个东西是个什么玩意,这个东西有啥用,一般用在啥地方;2:这个东西该怎么用
- Android源码分析(六)-----蓝牙Bluetooth源码目录分析
丨一念丨
Android源码分析androidbluetoothsourceframeworksettings
一:Bluetooth的设置应用packages\apps\Settings\src\com\android\settings\bluetooth*蓝牙设置应用及设置参数,蓝牙状态,蓝牙设备等。BluetoothDevicePreference.java顾名思义,蓝牙设备首选项,也就是蓝牙设备的配置信息,比如是否连接,是否配对,是否可见等等。该类继承了preference类,主要是提供获取蓝牙设备
- Android源码分析-setContentView加载布局流程
RaoMeng
上篇文章追溯了Android源码中Activity的启动流程,那么Activity启动之后,是如何加载布局的呢?这篇文章我们继续来追溯这一块的Android源码。Activity->setContentViewpublicvoidsetContentView(@LayoutResintlayoutResID){getWindow().setContentView(layoutResID);init
- Android源码分析 - Zygote进程
dreamgyf
Android源码分析android
开篇本篇以android-11.0.0_r25作为基础解析上一篇文章Android源码分析-init进程,我们分析了Android第一个用户进程init进程的启动过程和之后的守护服务init进程启动了很多服务,例如Zygote,ServiceManager,MediaServer,SurfaceFlinger等,我们平常写Android应用都是使用Java语言,这次我们就先从Java世界的半边天:
- Android源码分析——从AIDL了解Binder机制
_惊蛰
以AIDL为入口,探究Binder机制的原理从AIDL了解Binder前面简单学习了一下AIDL的用法,接下来就从AIDL入手,探究一下Binder机制。在学习的过程中,看了以下几篇文章,觉得很有价值:彻底理解AndroidBinder通信架构Binder学习指南AndroidBander设计与实现-设计篇背景知识首先要知道的是,在Linux系统中,存在很多进程,不同进程之间,数据是不会共享的,他
- Android中的Handler总结系列博客(深度好文)
黄德志
[译]探索Android大杀器——HandlerAndroid源码分析--Handler机制的实现与工作原理AndroidHandler的使用方式和注意事项AndroidHandler:这是一份全面、详细的Handler机制学习攻略Android中的Handler总结https://hit-alibaba.github.io/interview/Android/basic/Android-hand
- Android源码分析之RecyclerView源码分析(二)——缓存机制
Hengtao24
系列文章:Android源码分析之ListView源码Android源码分析之RecyclerView源码分析(一)——绘制流程Android源码分析之RecyclerView源码分析(二)——缓存机制前言此前已经介绍完RecyclerView的绘制流程,在绘制流程中我们还残留RecyclerView的缓存机制的问题没有解释。在分析ListView过程中,我们先分析了ListView中缓存的核心实
- [Android源码分析] 一.系统启动-init启动流程梳理
z9722
Android启动android
基于AOSP7.1,源码路径:system/core/init/init.cpp一.守护进程守护进程(Daemon):一类在后台运行的特殊进程,通常独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。创建守护进程模型:1.创建子进程,父进程退出2.在子进程中创建新会话。调用setsid函数3.改变当前工作目录至根目录。调用chdir函数4.重设文件权限掩码。调用umask函数5.关闭文
- Android源码分析之 - 事件分发机制
amoshcxy
Android源码分析Android源码分析事件分发机制
Android源码分析之-事件分发机制1.1目录1.2基础认知1.2.1事件分发的对象是谁?1.2.2事件分发的本质1.2.3事件在哪些对象之间进行传递?1.2.4事件分发的顺序1.2.5事件分发过程由哪些方法协作完成?1.2.6总结1.3事件分发机制源码分析1.3.1Activity的事件分发机制1.3.1.1源码分析1.3.1.2总结1.4ViewGroup事件的分发机制1.4.1源码分析1.
- Android源码分析——事件分发机制
_惊蛰
通过问题来学习一个东西是很好的方法。学习Android中View的事件体系,我也通过给自己提问题,在解决问题的同时也就知道了其中原理。0首先来几个问题起步:什么是事件?什么是事件分发机制?在我们通过屏幕与手机交互的时候,每一次点击、长按、移动等都是一个个事件。按照面向对象的思想,这些一个个事件都被封装成了MotionEvent。分发机制就是某一个事件从屏幕传递给app视图中的各个View,然后由其
- Android源码分析 - Framework层的Binder(客户端篇)
Android每日一讲
androidandroidstudioandroid-studio
开篇本篇以aosp分支android-11.0.0_r25作为基础解析我们在之前的文章中,从驱动层面分析了Binder是怎样工作的,但Binder驱动只涉及传输部分,待传输对象是怎么产生的呢,这就是framework层的工作了。我们要彻底了解Binder的工作原理,不仅要去看驱动层,还得去看framework层以及应用层(AIDL)ServiceManagergetIServiceManager我
- 高通平台Android源码分析之Linux内核设备树(DT - Device Tree)
Kevin-K先森
Android技术···dtsAndroiddts
刚开始接触Android源码的时候,发现在kernel里面多了一种dts文件,因为当初自学Linux时和在第一家公司做物联网模型时都是用的比较老的内核,内核代码还比较混乱,没有采用dts这种方便简洁的格式。后面才知道这是因为Linus的一句”thiswholearmthingisafuckingpaininass“促进改革的,记得Linux早期代码里面板级细节都是在C文件中描述的,代码就显得十分臃
- 高通平台Android源码分析之Linux内核设备树
weixin-W1623210897
Androidandroid
https://blog.csdn.net/pengwangguo/article/details/55804431转载自http://huaqianlee.me/2015/08/19/Android/高通平台Android源码分析之Linux内核设备树-DT-Device-Tree-dts文件/刚开始接触Android源码的时候,发现在kernel里面多了一种dts文件,因为当初自学Linux时
- Android源码分析 - Framework层的Binder(客户端篇)
小米椒……
Android移动开发Frameworkandroid经验分享职场和发展androidstudioFramework
作者:dreamgyf转载地址:https://juejin.cn/post/7113760814409973790开篇本篇以aosp分支android-11.0.0_r25作为基础解析我们在之前的文章中,从驱动层面分析了Binder是怎样工作的,但Binder驱动只涉及传输部分,待传输对象是怎么产生的呢,这就是framework层的工作了。我们要彻底了解Binder的工作原理,不仅要去看驱动层,
- WSL For Android | 在Windows上获取可编译的AOSP源代码
岱zy
(好久没上了,这是一篇两年前写的简单教程,忘记发了哈哈哈哈,补上!)我们经常看到一些技术文章分析,例如Android源码分析Activity启动流程、AndroidLuncher实现分析,还有涉及到硬件层的同学会面对的Wifi,Bluetooth实现分析等等。然后,问题来了,这些源码在哪里看?如何阅读源代码,大概是每个Android学习者都绕不过的问题。当年的我也是这样小白过来的,翻了翻Sdk里下
- 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