- 2024美团Android面试(附全套面试真题解析)
2501_90225587
android面试职场和发展
(3)高级开发技术面试题一、Android面试题Android面试题包括Android基础,还有一些源码级别的、原理这些等。所以想去美团面试,一定要多看看源码和实现方式,常用框架可以试试自己能不能手写实现一下,锻炼一下自己。(一)Android基础知识点四大组件是什么四大组件的生命周期和简单用法Activity之间的通信方式Activity各种情况下的生命周期横竖屏切换的时候,Activity各种
- Android 开发学习路线:从基础到进阶
猿来无bug
Kotlinandroid学习kotlin开发语言
阶段1:基础知识(1-2个月)Android基础知识(1周):理解Android操作系统架构(Linux内核、核心库、框架层、应用层)探索不同的Android版本(API级别)及其功能熟悉Android开发生命周期(onCreate、onStart、onResume等)Kotlin入门(2-3周):学习Kotlin语法(变量、数据类型、运算符、控制流)掌握函数、Lambda表达式及高阶函数理解Ko
- Android高级面试题汇总——Android篇(1)
oO樱花祭LI
Android面试
(一)Android基础知识点1、四大组件是什么Activity,Service,ContentProvider,BroadcastReceiver2、四大组件的生命周期和简单用法Activity的生命周期:onCreate()->onStart()->onResume()->onPause()->onStop()->onRestart()->onDestroy()用法:创建一个Intent对象,
- Android基础知识
Thethrill
一、activity1.一个activity就是一个类,继承activity;2.需要复写onCreate()方法;3.每一个activity都需要在AndroidMainfest.xml清单上进行配置;4.为activity添加必要的控件。二、布局线性布局:LinearLayout1.填满父空间:fill_parent、match_parent2.文本多大空间就有多大:warp_content3
- android刷机教程基础篇
musiclvme
Androidandroidrom
前言参考连接:https://source.android.com/这篇文章将教你如何从google的网站获取官方image,刷到google出品的手机pixel。(如果你有google原生的其他手机,也是相通的)适合喜欢折腾的朋友!本文为刷机基础篇,后期高级篇会讲通过获取aosp源码来编译生成image来刷pixel手机。android基础知识android版本android一般是每年推出一个大
- Android基础知识 - ListView
L-FHy
Android开发android第一行Androidlistview
ListView简单介绍ListView的简单用法定制ListView的界面新建Fruit类ListView子项对应的布局自定义适配器FruitAdapter提升ListView的运行效率ListView的点击事件简单介绍ListView绝对可以称得上是Android最常用的控件之一,几乎所有的应用程序都会用到它。由于手机屏幕空间都比较有限,能够一次性在屏幕上显示的内容并不多,当我们有大量的数据需
- android基础知识梳理
练习本
常用知识点分类汇总androidjava
接下来开始androidjava基础梳理我是先整理android基础知识呢还是java相关的泛化,反射,依赖注入等基础点的功能梳理呢。先来看下一些基础相关的巩固泛型,反射,依赖注入。这些都是当前代码里经常用到的,但目前我用的总感觉不够全面借此机会坐下总结和熟悉泛型主要向上边界和向下边界,这个要再看下,其他到还好反射主要是没法进行类型检查,是否有办法呢,查一下依赖注入这个看别人用的这么留,我是否可以
- Android基础知识
可乐manman
android
1.Activity的生命周期onCreate:Activity在启动时会被创建,后面一般不会在调用该方法(除非例外情况,将Activity回收,例如内存不足);onStart:Activity启动时,会调用该方法;onResume:Activity可视化时,会调用该方法;onPause:Activity不可见时,会调用该方法;onStop:Activity完全不可见时,会调用该方法;onDest
- Android 样式小结
Android西红柿
Android基础android
关于作者:CSDN内容合伙人、技术专家,从零开始做日活千万级APP。专注于分享各领域原创系列文章,擅长java后端、移动开发、商业变现、人工智能等,希望大家多多支持。目录一、导读二、概览三、使用3.1创建并应用样式3.2创建并应用主题3.3?&@符号引用五、推荐阅读一、导读我们继续总结学习Android基础知识,温故知新。本文讲述样式相关知识。二、概览样式可以定义界面的格式和外观。样式可应用于单个
- Android基础知识整理(一)
覇気小青年
0.前言android的基础知识很多,这里只简略的整理一些重点,参考资料结合自己的见解给大家讲讲,前面写了好多篇框架源码解析,这里就不唠叨源码了。一、Handler1.Handler、Looper、Message三者关系(1)Handler:消息辅助类,主要向消息池发送消息和处理相应的消息(sendMessage和handleMessaage)(2)Looper:不断循环执行从MessageQue
- Android 登录成功后再跳转到目标页(三)
烧伤的火柴
介绍前边两篇介绍两种方案都是基于Android基础知识实现的,其中方案二中的缺点是:工具类要维护所有的跳转和数据传递,这里边包含Fragment启动Activity的方式,而且还要管理所有的逻辑,当跳转完成后要记得从内存中移出去。但是当没有登录的时候跳转到登录页面,用户没有进行登录而是按下返回键,那么刚才添加的跳转和数据就没有去向和消费了,就会一直滞留在缓存中了。一般情况用户也不会累计太多这种操作
- Android基础知识:Activity(2)生命周期
JYangkai
废话今天我们来学习Activity的生命周期生命周期onCreate从字面意思可以看出这个是Activity被创建时调用,在这里我们可以做一些初始化的工作,比如获取控件和绑定事件之类的。onStart在onCreate调用结束后,就会调用onStart方法,表明Activity的初始化工作已经结束,准备将界面显示出来onResume执行到onResume方法就表明Activity之前的准备工作已经
- Android 应用资源概览
Android西红柿
Android基础android
关于作者:CSDN内容合伙人、技术专家,从零开始做日活千万级APP。专注于分享各领域原创系列文章,擅长java后端、移动开发、商业变现、人工智能等,希望大家多多支持。目录一、导读二、概览三、资源类型分组四、配置限定符名称表五、限定符命名规则六、推荐阅读一、导读我们继续总结学习Android基础知识,温故知新。资源是指代码使用的附加文件和静态内容,例如位图、布局定义、界面字符串、动画说明等。本文档介
- 太赞了!实战讲述Flutter跨平台框架应用,挥泪整理面经
web苍南县
程序员android移动开发面试
前言这篇文章主要是分享今年上半年的面试心得,现已就职于某大厂有三个月了,近期有很多公司均已启动秋招,也祝大家在2020的下半年面试顺利,获得理想的offer!之前找工作的那段时间感想颇多,总结一点面试经验和人生思考分享给大家。第一阶段:Android基础知识回顾:回顾Android开发编程,深入理解Android系统原理和层次结构,深入分析Handler源码和原理;回顾Java,C/C++,Kot
- A001-课程介绍
小巫技术博客
【Android开发记录】android开发
课程目标针对人群:Android初学者&稍有基础的Android学员课程要求:Java编程语言基础&面向对象思维课程计划:大约70个课时课程目标:熟练掌握Android基础知识和掌握主流开发框架的使用,熟悉app开发流程如果大家只是入门,可以学习本套课程,如果大家有相应的基础,可以通过本套课程进行巩固,学习一些新的东西。授课方式真实API教学最新AndroidStudio开发工具接地气实战PPT&
- Android基础知识:Provider(1)初识Provider
JYangkai
废话今天我们来认识下Provider,很多人在学习Android的时候经常会忽略内容提供器(当然,我也是其中一个),其实Provider在Android中的作用很大,下面我们就来一一学习下作用内容提供器,听这个名字,就知道是一个提供数据的容器,我们来回顾下四大组件他们的特点Activity:典型的小捞板,风流得一,什么好事都让他做,什么好处都得Service:劳动人民,偶尔到台面来撑撑场子Broa
- android linux 基础知识总结
followingturing
LinuxAndroidandroidlinuxframeworkssystembuildservice
===================================================linux,Android基础知识总结1.Android编译系统分析2.文件系统分析3.制作交叉工具链4.软件编译常识5.设置模块流程分析6.linux系统启动流程分析7.linux下svn使用指南8.LFS相关9.linux内核的初步理解=============================
- QT6 for android 开发--Java及其android基础知识篇
原子蛋先僧
QT6forandroid开发qtandroid
一.前言本文基于QT6作为框架架构进行开发和学习。目前大部分学习资料都是以QT5为基础进行讲解和开发,而基于QT6关于安卓的开发相对较少。目前QT6关于android的开发相较于QT5来说,有了很大的变化,在QT5中,完全依赖于androidextras模块的内容对android进行应用,所依赖的对象结结构是QAndroidJniObject,而在QT6中,已经将androidextras模块的移
- Android 字体资源
Android西红柿
Android基础android字体面试
关于作者:CSDN内容合伙人、技术专家,从零开始做日活千万级APP。专注于分享各领域原创系列文章,擅长java后端、移动开发、商业变现、人工智能等,希望大家多多支持。未经允许不得转载目录一、导读二、概览三、XML中的字体四、可下载字体五、推荐阅读一、导读我们继续总结学习Android基础知识,温故知新。本文讲述字体相关知识。二、概览字体资源定义了可在应用中使用的自定义字体。字体可以是单独的字体文件
- android面试宝典!Android工程师面试该怎么准备?知乎上转疯了!
安卓开发程序员
程序员Android
**新技术层出不穷,去年kotlin到如今Flutter,技术迭代,你是否会变得固步自封?**那么看本篇文章帮你解决问题,让你知道怎么样学习,学习那些技术点才能不被时代的迭代快速淘汰!首先,先说一下百度丶腾讯丶阿里技术岗位的一般面试流程面试刷题刷题我从常见Android基础知识面试题,刷到了Java面试题,继而攻坚Android高级面试题,以及突破学习Flutter相关热点技术面试题(不是很难),
- 【教程】Android系统手机 菜鸟扫盲汇总
iteye_17056
ui操作系统shell
【教程】Android系统手机菜鸟扫盲汇总2011年10月25日写这篇文章的目的是为了给那些刚刚入手安卓手机的新手们一些参考,希望他们能快速的上手【第一期】ANDROID基础知识1~20【第二期】继续泡!ANDROID基础知识21~40【第三期】这个真得懂!ANDROID刷机名词解释【第四期】爱免费~爱更新~MARKET使用说明!【第五期】如何安装软件&切换U盘模式【第六期】武装你的手机!十款必装
- Android 面试---Android基础知识点一
Fitz_e74a
1.横竖屏切换的时候,Activity各种情况下的生命周期1、不设置Activity的android:configChanges时,切屏会重新调用各个生命周期,切横屏时会执行一次,切竖屏时会执行两次2、设置Activity的android:configChanges="orientation"时,切屏还是会重新调用各个生命周期,切横、竖屏时只会执行一次3、设置Activity的android:co
- Android常问的面试题(一)
陈二狗想吃肉
Android面试题Android面试题包括Android基础,还有一些源码级别的、原理这些等。所以想去大公司面试,一定要多看看源码和实现方式,常用框架可以试试自己能不能手写实现一下,锻炼一下自己。(一)Android基础知识点1、四大组件是什么1)Activity:用户可操作的可视化界面,为用户提供一个完成操作指令的窗口。一个Activity通常是一个单独的屏幕,Activity通过Intent
- 深入了解IdleHandler,用来做优化或者轻量级任务都是极好的
Android西红柿
Android学习之路javaandroidIdleHandler面试性能
关于作者:CSDN内容合伙人、技术专家,从零开始做日活千万级APP。专注于分享各领域原创系列文章,擅长java后端、移动开发、人工智能等,希望大家多多支持。目录一、导读二、概览三、使用3.1使用场景四、原理五、推荐阅读一、导读我们继续总结学习Android基础知识,温故知新。二、概览IdleHandler是Handler提供的一种充分利用CPU的机制,主要是在MessageQueue出现空闲的时候
- android驱动开发工程师,android驱动开发工程师
孟婵
android驱动开发工程师
android驱动开发工程师任职资格:1、精通android基础知识,熟悉android底层,了解frameworks层;2、熟悉MTK、高通等手机或平板电脑平台,有调试MTK6735、MTK6737、MTK6739平台驱动经验者优先;3、熟练使用linux常用命令、代码管理工具(git/repo)和shell脚本编写;4、熟悉android驱动调试流程;系统性问题分析处理有3年以上调试经验;5、
- Android社招最全面试题,android基础知识
m0_64382868
程序员面试android移动开发
用过哪些系统Service?了解ActivityManagerService吗?发挥什么作用(重点)BroadcastReceiver基础相关广播有几种形式?都有什么特点?广播的两种注册方式?广播发送和接收的原理了解吗?(Binder机制、AMS)ContentProvider基础相关ContentProvider了解多少?ContentProvider的权限管理?说说ContentProvide
- Android基础知识 — 1.3-ARM和Thumb指令详解2
Crypto168
移动安全系统安全android
4.数据处理指令数据处理指令包括数据传送指令、算术运算指令、逻辑运算指令以及比较指令4类。MOV:是将8位的立即数或寄存器的内容传送到目标寄存器中,格式如下:MOV{cond}{S}Rd,operand2MOVR2,R1,LSL#2@R2=R1*4MVN:数据非传送指令,将8位的立即数或寄存器按位取反传送到目标寄存器,格式如下MVN{cond}{S}Rd,operand2MVNR0,#0xFF@R
- Android基础知识
魏开心
五种布局:FrameLayout、LinearLayout、AbsoluteLayout、RelativeLayout、TableLayout全都继承自ViewGroup,各自特点及绘制效率对比。FrameLayout(框架布局)此布局是五种布局中最简单的布局,Android中并没有对childview的摆布进行控制,这个布局中所有的控件都会默认出现在视图的左上角,我们可以使用android:la
- Android 10(Go) 版本变更总览(API 级别 29)
清风徐来辽
#Android版本更新记录androidandroidstudiowebview
Android10版本Android10总览Android10中的隐私权变更重大变更标识符和数据摄像头和连接性权限行为变更:所有应用行为变更:以API29及更高级别为目标平台的应用面向开发者的Android10创新技术和新体验用户隐私设置安全性摄像头和媒体连接性Android基础知识Android10总览https://developer.android.google.cn/about/versi
- android基础知识复习
victorwjw
androidjava开发语言
架构:应用框架层(JavaAPIFramework)所提供的主要组件:名称功能描述ActivityManager(活动管理器)管理各个应用程序生命周期,以及常用的导航回退功能LocationManager(位置管理器)提供地理位置及定位功能服务PackageManager(包管理器)管理所有安装在Android系统中的应用程序NotificationManager(通知管理器)使得应用程序可以在状
- SQL的各种连接查询
xieke90
UNION ALLUNION外连接内连接JOIN
一、内连接
概念:内连接就是使用比较运算符根据每个表共有的列的值匹配两个表中的行。
内连接(join 或者inner join )
SQL语法:
select * fron
- java编程思想--复用类
百合不是茶
java继承代理组合final类
复用类看着标题都不知道是什么,再加上java编程思想翻译的比价难懂,所以知道现在才看这本软件界的奇书
一:组合语法:就是将对象的引用放到新类中即可
代码:
package com.wj.reuse;
/**
*
* @author Administrator 组
- [开源与生态系统]国产CPU的生态系统
comsci
cpu
计算机要从娃娃抓起...而孩子最喜欢玩游戏....
要让国产CPU在国内市场形成自己的生态系统和产业链,国家和企业就不能够忘记游戏这个非常关键的环节....
投入一些资金和资源,人力和政策,让游
- JVM内存区域划分Eden Space、Survivor Space、Tenured Gen,Perm Gen解释
商人shang
jvm内存
jvm区域总体分两类,heap区和非heap区。heap区又分:Eden Space(伊甸园)、Survivor Space(幸存者区)、Tenured Gen(老年代-养老区)。 非heap区又分:Code Cache(代码缓存区)、Perm Gen(永久代)、Jvm Stack(java虚拟机栈)、Local Method Statck(本地方法栈)。
HotSpot虚拟机GC算法采用分代收
- 页面上调用 QQ
oloz
qq
<A href="tencent://message/?uin=707321921&Site=有事Q我&Menu=yes">
<img style="border:0px;" src=http://wpa.qq.com/pa?p=1:707321921:1></a>
- 一些问题
文强chu
问题
1.eclipse 导出 doc 出现“The Javadoc command does not exist.” javadoc command 选择 jdk/bin/javadoc.exe 2.tomcate 配置 web 项目 .....
SQL:3.mysql * 必须得放前面 否则 select&nbs
- 生活没有安全感
小桔子
生活孤独安全感
圈子好小,身边朋友没几个,交心的更是少之又少。在深圳,除了男朋友,没几个亲密的人。不知不觉男朋友成了唯一的依靠,毫不夸张的说,业余生活的全部。现在感情好,也很幸福的。但是说不准难免人心会变嘛,不发生什么大家都乐融融,发生什么很难处理。我想说如果不幸被分手(无论原因如何),生活难免变化很大,在深圳,我没交心的朋友。明
- php 基础语法
aichenglong
php 基本语法
1 .1 php变量必须以$开头
<?php
$a=” b”;
echo
?>
1 .2 php基本数据库类型 Integer float/double Boolean string
1 .3 复合数据类型 数组array和对象 object
1 .4 特殊数据类型 null 资源类型(resource) $co
- mybatis tools 配置详解
AILIKES
mybatis
MyBatis Generator中文文档
MyBatis Generator中文文档地址:
http://generator.sturgeon.mopaas.com/
该中文文档由于尽可能和原文内容一致,所以有些地方如果不熟悉,看中文版的文档的也会有一定的障碍,所以本章根据该中文文档以及实际应用,使用通俗的语言来讲解详细的配置。
本文使用Markdown进行编辑,但是博客显示效
- 继承与多态的探讨
百合不是茶
JAVA面向对象 继承 对象
继承 extends 多态
继承是面向对象最经常使用的特征之一:继承语法是通过继承发、基类的域和方法 //继承就是从现有的类中生成一个新的类,这个新类拥有现有类的所有extends是使用继承的关键字:
在A类中定义属性和方法;
class A{
//定义属性
int age;
//定义方法
public void go
- JS的undefined与null的实例
bijian1013
JavaScriptJavaScript
<form name="theform" id="theform">
</form>
<script language="javascript">
var a
alert(typeof(b)); //这里提示undefined
if(theform.datas
- TDD实践(一)
bijian1013
java敏捷TDD
一.TDD概述
TDD:测试驱动开发,它的基本思想就是在开发功能代码之前,先编写测试代码。也就是说在明确要开发某个功能后,首先思考如何对这个功能进行测试,并完成测试代码的编写,然后编写相关的代码满足这些测试用例。然后循环进行添加其他功能,直到完全部功能的开发。
- [Maven学习笔记十]Maven Profile与资源文件过滤器
bit1129
maven
什么是Maven Profile
Maven Profile的含义是针对编译打包环境和编译打包目的配置定制,可以在不同的环境上选择相应的配置,例如DB信息,可以根据是为开发环境编译打包,还是为生产环境编译打包,动态的选择正确的DB配置信息
Profile的激活机制
1.Profile可以手工激活,比如在Intellij Idea的Maven Project视图中可以选择一个P
- 【Hive八】Hive用户自定义生成表函数(UDTF)
bit1129
hive
1. 什么是UDTF
UDTF,是User Defined Table-Generating Functions,一眼看上去,貌似是用户自定义生成表函数,这个生成表不应该理解为生成了一个HQL Table, 貌似更应该理解为生成了类似关系表的二维行数据集
2. 如何实现UDTF
继承org.apache.hadoop.hive.ql.udf.generic
- tfs restful api 加auth 2.0认计
ronin47
目前思考如何给tfs的ngx-tfs api增加安全性。有如下两点:
一是基于客户端的ip设置。这个比较容易实现。
二是基于OAuth2.0认证,这个需要lua,实现起来相对于一来说,有些难度。
现在重点介绍第二种方法实现思路。
前言:我们使用Nginx的Lua中间件建立了OAuth2认证和授权层。如果你也有此打算,阅读下面的文档,实现自动化并获得收益。SeatGe
- jdk环境变量配置
byalias
javajdk
进行java开发,首先要安装jdk,安装了jdk后还要进行环境变量配置:
1、下载jdk(http://java.sun.com/javase/downloads/index.jsp),我下载的版本是:jdk-7u79-windows-x64.exe
2、安装jdk-7u79-windows-x64.exe
3、配置环境变量:右击"计算机"-->&quo
- 《代码大全》表驱动法-Table Driven Approach-2
bylijinnan
java
package com.ljn.base;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.uti
- SQL 数值四舍五入 小数点后保留2位
chicony
四舍五入
1.round() 函数是四舍五入用,第一个参数是我们要被操作的数据,第二个参数是设置我们四舍五入之后小数点后显示几位。
2.numeric 函数的2个参数,第一个表示数据长度,第二个参数表示小数点后位数。
例如:
select cast(round(12.5,2) as numeric(5,2))  
- c++运算符重载
CrazyMizzz
C++
一、加+,减-,乘*,除/ 的运算符重载
Rational operator*(const Rational &x) const{
return Rational(x.a * this->a);
}
在这里只写乘法的,加减除的写法类似
二、<<输出,>>输入的运算符重载
&nb
- hive DDL语法汇总
daizj
hive修改列DDL修改表
hive DDL语法汇总
1、对表重命名
hive> ALTER TABLE table_name RENAME TO new_table_name;
2、修改表备注
hive> ALTER TABLE table_name SET TBLPROPERTIES ('comment' = new_comm
- jbox使用说明
dcj3sjt126com
Web
参考网址:http://www.kudystudio.com/jbox/jbox-demo.html jBox v2.3 beta [
点击下载]
技术交流QQGroup:172543951 100521167
[2011-11-11] jBox v2.3 正式版
- [调整&修复] IE6下有iframe或页面有active、applet控件
- UISegmentedControl 开发笔记
dcj3sjt126com
// typedef NS_ENUM(NSInteger, UISegmentedControlStyle) {
// UISegmentedControlStylePlain, // large plain
&
- Slick生成表映射文件
ekian
scala
Scala添加SLICK进行数据库操作,需在sbt文件上添加slick-codegen包
"com.typesafe.slick" %% "slick-codegen" % slickVersion
因为我是连接SQL Server数据库,还需添加slick-extensions,jtds包
"com.typesa
- ES-TEST
gengzg
test
package com.MarkNum;
import java.io.IOException;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.annotation
- 为何外键不再推荐使用
hugh.wang
mysqlDB
表的关联,是一种逻辑关系,并不需要进行物理上的“硬关联”,而且你所期望的关联,其实只是其数据上存在一定的联系而已,而这种联系实际上是在设计之初就定义好的固有逻辑。
在业务代码中实现的时候,只要按照设计之初的这种固有关联逻辑来处理数据即可,并不需要在数据库层面进行“硬关联”,因为在数据库层面通过使用外键的方式进行“硬关联”,会带来很多额外的资源消耗来进行一致性和完整性校验,即使很多时候我们并不
- 领域驱动设计
julyflame
VODAO设计模式DTOpo
概念:
VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。
DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,我泛指用于展示层与服务层之间的数据传输对
- 单例设计模式
hm4123660
javaSingleton单例设计模式懒汉式饿汉式
单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统源。如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案。
&nb
- logback
zhb8015
loglogback
一、logback的介绍
Logback是由log4j创始人设计的又一个开源日志组件。logback当前分成三个模块:logback-core,logback- classic和logback-access。logback-core是其它两个模块的基础模块。logback-classic是log4j的一个 改良版本。此外logback-class
- 整合Kafka到Spark Streaming——代码示例和挑战
Stark_Summer
sparkstormzookeeperPARALLELISMprocessing
作者Michael G. Noll是瑞士的一位工程师和研究员,效力于Verisign,是Verisign实验室的大规模数据分析基础设施(基础Hadoop)的技术主管。本文,Michael详细的演示了如何将Kafka整合到Spark Streaming中。 期间, Michael还提到了将Kafka整合到 Spark Streaming中的一些现状,非常值得阅读,虽然有一些信息在Spark 1.2版
- spring-master-slave-commondao
王新春
DAOspringdataSourceslavemaster
互联网的web项目,都有个特点:请求的并发量高,其中请求最耗时的db操作,又是系统优化的重中之重。
为此,往往搭建 db的 一主多从库的 数据库架构。作为web的DAO层,要保证针对主库进行写操作,对多个从库进行读操作。当然在一些请求中,为了避免主从复制的延迟导致的数据不一致性,部分的读操作也要到主库上。(这种需求一般通过业务垂直分开,比如下单业务的代码所部署的机器,读去应该也要从主库读取数