- Caffeine 与 Guava Cache
雨季里的向日葵
java
一、概要1.1背景在项目开发中,为提升系统性能,减少IO开销,本地缓存是必不可少的。最常见的本地缓存是Guava和Caffeine,Caffeine是基于GoogleGuavaCache设计经验改进的结果,相较于Guava在性能和命中率上更具有效率。1.2应用场景愿意消耗一些内存空间来提升速度预料到某些键会被多次查询缓存中存放的数据总量不会超出内存容量二、GuavaCache2.1GuavaCac
- Spring Cache
为什么没有实习
springsql数据库
注解说明@EnableCaching开启缓存注解功能,通常加在启动类上@Cacheable在方法执行前先查询缓存中是否有数据,如果有数据则直接返回缓存数据;如果没有缓存数据,调用方法并将方法返回值放到缓存中@CachePut将方法的返回值放到缓存中@CacheEvict将一条或多条数据从缓存中删除org.springframework.bootspring-boot-starter-cacheCa
- Redis计数器:数字的秘密
水蓝烟雨
技术派项目学习redis数据库springboot
文章目录Redis计数器incr指令用户计数统计用户统计信息查询缓存一致性小结技术派项目源码地址:Gitee:技术派-https://gitee.com/itwanger/paicodingGithub:技术派-https://github.com/itwanger/paicoding用户的相关统计信息文章数,文章总阅读数,粉丝数,关注作者数,文章被收藏数、被点赞数量文章的相关统计信息文章点赞数,
- MySQL 逻辑架构与常用的存储引擎
Bryant5051
mysql架构数据库
文章目录概述逻辑架构示意图Server层功能模块连接器查询缓存分析器优化器执行器存储引擎层InnoDBInnoDB主要特性InnoDB引擎下的查询过程MyISAMMyISAM的主要特性MyISAM引擎下的查询过程InnoDB和MyISAM的对比概述MySQL是我们平时开发中最常用的关系型数据库,学习MySQL的逻辑架构相当于从全局去理解MySQL的运行机制,对于MySQL的学习和使用都会有较大的帮
- linux-redis常用命令
陈小唬
linuxredis运维
linux-redis常用命令文章目录linux-redis常用命令字符串(String):列表(List):哈希(Hash):集合(Set):有序集合(SortedSet):用来查询缓存策略和相关信息:查询和管理缓存的TTL相关命令:字符串(String):SETkeyvalue[EXseconds][PXmilliseconds][NX|XX]:设置指定键的值。GETkey:获取指定键的值。D
- MyBatis笔记 | 详解MyBatis缓存机制
一颗白菜_
概述Mybatis包含一个非常强大的查询缓存特性,它可以非常方便地配置和定制。缓存可以极大的提升查询效率。MyBatis系统中默认定义了两级缓存:一级缓存和二级缓存。默认情况下,只有一级缓存(SqlSession级别的缓存,也称为本地缓存)开启。二级缓存需要手动开启和配置,它是基于namespace级别的缓存,即全局范围缓存。为了提高扩展性,MyBatis定义了缓存接口Cache。我们可以通过实现
- MySQL 基础知识(十)之 MySQL 架构
花落随风轻飘舞
MySQLmysql数据库
目录1MySQL架构说明2连接层3核心业务层3.1查询缓存3.2解析器3.3优化器3.4执行器4存储引擎层5参考文档1MySQL架构说明下图是MySQL5.7及其之前版本的逻辑架构示意图MySQL架构大致可分为以下三层:连接层:负责跟客户端建立连接、获取权限、维持和管理连接核心业务层:包括查询缓存、解析器、优化器、执行器等,涵盖MySQL的大多数核心服务功能,以及所有的内置函数(如日期、时间、数学
- mysql数据库
编织幻境的妖
数据库mysql
1.什么是MySQL的逻辑架构?请简述其组成部分。MySQL的逻辑架构主要由Server层和存储引擎层两部分组成。具体如下:Server层:是MySQL的核心部分,负责处理客户端的连接、执行查询语句以及管理事务等。它包括以下几个关键组件:连接器:负责与客户端建立连接并管理这些连接。查询缓存:用于缓存执行过的查询结果,如果同样的查询再次出现,可以直接从缓存中获取结果,提高查询效率。分析器:对输入的S
- 浅谈SQL优化小技巧 | 京东云技术团队
数据库mysqlsql性能优化
回顾MySQL的执行过程,帮助介绍如何进行sql优化。(1)客户端发送一条查询语句到服务器;(2)服务器先查询缓存,如果命中缓存,则立即返回存储在缓存中的数据;(3)未命中缓存后,MySQL通过关键字将SQL语句进行解析,并生成一颗对应的解析树,MySQL解析器将使用MySQL语法进行验证和解析。例如,验证是否使用了错误的关键字,或者关键字的使用是否正确;(4)预处理是根据一些MySQL规则检查解
- 一条 SQL 查询语句是如何执行的
DustinWangq
#MySQL实战45讲MYSQLsql数据库
MySQL的基本架构示意图大体来说,MySQL可以分为Server层和存储引擎层两部分Server层包括连接器、查询缓存、分析器、优化器、执行器等,涵盖MySQL的大多数核心服务功能,以及所有的内置函数(如日期、时间、数学和加密函数等),所有跨存储引擎的功能都在这一层实现,比如存储过程、触发器、视图等。而存储引擎层负责数据的存储和提取。其架构模式是插件式的,支持InnoDB、MyISAM、Memo
- 我在项目中使用Redis的几个场景
苜蓿花乐园
知识分享学习笔记redis缓存开发语言
目录缓存会话存储分布式锁消息队列位统计计数器排行榜缓存缓存的目的是为了提高系统响应速度、减少数据库等资源的压力,redis作为键值对形式的内存数据库,可以提供非常快速的读取速度,使得它成为存储热点数据或频繁访问数据的理想选择。在实际项目使用中我们通常会先查询缓存,如果存在则直接返回数据,如果不存在则查询数据库,然后插入缓存;如果是更新数据则先删除数据库再删除缓存。在高并发中需要考虑延迟双删。会话存
- MySQL之体系结构
^~^前行者~~~
mysqladb数据库
华子目录MySQL简介MySQL的特性MySQL版本MySQL常见版本数据库排名网站MySQL结构体系查看最大连接数查询缓存配置情况一条SQL语句执行流程MySQL简介MySQL是一个小型关系数据库管理系统,开发者为瑞典MySQLAB公司。在2008年1月16号被sun公司10亿美金收购。2009年,SUN又被Oracle以74亿美金收购。目前MySQL被广泛地应用在Internet上的中小型网站
- 【MySQL】-11 MySQL 架构及优化原理
yinying293
SQLmysql架构adb
MySQL架构及优化原理1MySQL逻辑架构2MySQL逻辑架构整体分为三层:3MySQL查询过程MySQL整个查询执行过程,总的来说分为5个步骤:3.1客户端/服务端通信协议3.2查询缓存3.3查询优化3.4查询执行引擎3.5返回结果给客户端4查询系统性能1分析查询语句2索引查询3优化子查询:4优化一行数据的查询,5使用JOIN级联查询时,6避免SELECT*查询数据,7能使用ENUM而就不要使
- 2021最新MySQL性能优化问题
码农K
今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。1.为查询缓存优
- mybatis---高级映射、延迟加载、查询缓存
全满
高级映射(resultMap返回)首先书写查询语句select*fromuser,orderswhereuser.id=orders.user_id其次配置resultMap什么是延迟加载resultMap可以实现高级映射(使用association、collection实现一对一及一对多映射),association、collection具备延迟加载的功能需求:如果查询订单并且关联查询用户信息。
- 【数据库】详细说一下一条 MySQL 语句执行的步骤
还在路上的秃头
数据库数据库面试笔记
个人博客:个人主页个人专栏:JAVA⛳️功不唐捐,玉汝于成目录正文Server层按顺序执行SQL的步骤为:我的其他博客正文Server层按顺序执行SQL的步骤为:客户端请求->连接器(验证用户身份,给予权限)查询缓存(存在缓存则直接返回,不存在则执行后续操作)分析器(对SQL进行词法分析和语法分析操作)优化器(主要对执行的SQL优化选择最优的执行方案方法)执行器(执行时会先看用户是否有执行权限,有
- 一条SQL更新语句是如何执行的?
蓝色星秋
updateSS.c=S.c+1whereid=2更新语句与查询语句差不多,要经过连接器,缓存在更新后会失效,所以一般建议不用查询缓存,然后经过分析器,优化器,执行器,但更新语句重点是会涉及到两个日志模块:redo_log(重做日志)和binlog(归档日志)如果每一次的更新操作都需要写进磁盘,然后磁盘也要找到对应的那条记录,然后再更新,整个过程IO成本、查找成本都很高。所以当有一条记录需要更新的
- Redis缓存穿透、缓存击穿、缓存雪崩的解决方案
风萧萧兮s
Redis缓存redis数据库
一、背景不管是实际工作还是面试,这3个问题都是非常常见的,今天我们就好好探讨一下这个三个问题的解决方案三者的区别:缓存穿透:查询缓存和数据库都不存在的数据,缓存没有,数据库也没有缓存击穿:缓存中数据的key过期了,这时候所有请求都到数据库查询,瞬时大量请求击穿数据库缓存雪崩:缓存雪崩通常发生在大量key同一时间失效,⼤量的请求进来直接打到DB上,影响整个系统,而缓存击穿是针对某一具体的缓存key失
- 一条select在mysql中的执行过程
xiaopzi123123
mysql数据库
查询缓存:一个select语句,会先到查询缓存中看看,若是以前执行过,直接将查询结果返回给客户端,若是查询缓存没有命中,就需要执行后面的计划分析器如果没有命中查询缓存,就要开始分析器了;mysql>selectsql_cache*fromTwhereID=10;词法分析:比如,T识别为表,select识别为查询,ID识别为字段语句分析:语法不对,会报错(5.5.5与8.0语法有些许不同)优化器经过
- MySQL语句执行过程以及三大日志
喜欢敲代码的Apollo
MySQLmysql数据库sql
前言当初看MySQL45讲时做的笔记,发布出来记录下自己的学习心得吧。查询缓存连接建立完成后,你就可以执行select语句了。执行逻辑就会来到第二步:查询缓存。MySQL拿到一个查询请求后,会先到查询缓存看看,之前是不是执行过这条语句。之前执行过的语句及其结果可能会以key-value对的形式,被直接缓存在内存中。key是查询的语句,value是查询的结果。如果你的查询能够直接在这个缓存中找到ke
- MySQL查询缓存
拾光师
程序人生
MySQL查询缓存MySQL在查询的时候首先会查询缓存,如果缓存命中的话就直接返回结果,不需要解析sql语句,也不会生成执行计划,更不会执行;如果没有命中缓存,则再进行SQL解析以及进行查询,并将结果返回(也同时将结果放入到缓存中)MySQL查询过程缓存查找是利用对大小写敏感的哈希查找来实现的,Hash查找只能进行全值查找(sql完全一致),如果缓存命中,检查用户权限,如果权限允许,直接返回,查询
- 【MySQL性能优化】- MySQL结构与SQL执行过程
一个有梦有戏的人
MySQLmysql性能优化sql执行过程
MySQL结构与SQL执行过程生命不息,写作不止继续踏上学习之路,学之分享笔记总有一天我也能像各位大佬一样博客首页@怒放吧德德To记录领地分享学习心得,欢迎指正,大家一起学习成长!文章目录MySQL结构与SQL执行过程前言SQL执行结构连接器查询缓存分析器词法分析语法分析分析器的原理优化器执行器总结前言上阶段初步学习了索引与优化,以及对Explain的使用,接着来就来初识一下SQL执行的时候底层是
- MySQL之SQL的查询语句如何执行
YLDominer
mysqlsql数据库
文章目录前言一、一条查询的SQL是如何执行的二、MySQL的“零件”们1.连接器2.查询缓存3.分析器4.优化器5.执行器总结前言做了多年技术之后,技术更新换代太快,从我入行时候从单体架构到后面分布式SOA,再到微服务,从后端再到全栈。期间涉及的技术一大堆,有的仍然在用,有的却已经沉没在历史的海洋里了。不过这么多年数据库常用的还是那几种,对于未来的AI时代,可能会有变革,但是数据依然是一切的基础,
- MySQL之谈谈MySQL里的日志
YLDominer
mysql数据库
文章目录前言一、SQL是如何做更新操作的二、MySQL中的redolog三、MySQL中的binlog四、聊聊两阶段提交总结前言上一章我们讲了一条SQL是如何做查询的,其中经历了许多步骤。这次来讲讲一条SQL是如何做更新操作的。常有大佬说他可以把MySQL恢复到半个月内任意一秒的状态,今天也来谈谈这是如何做到的呢?一、SQL是如何做更新操作的之前我们讲到了一条SQL的执行要经过连接器、查询缓存、分
- MySQL的SQL执行顺序及性能优化
YLDominer
mysqlsql性能优化
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、MySQL的SQL执行顺序二、MySQL查询缓存三、为搜索字段建索引四、在Join表的时候使用相同类型五、垂直分割六、拆分大的DELETE或INSERT语句前言之前极客时间买课学习了一下Mysql的执行顺序以及一些性能优化的一些基础知识,在这里分享一下笔记。一、MySQL的SQL执行顺序画了一张图,执行顺序如下。二、M
- 实际开发中redisTemplate.execute() 方法与 template.opsForValue() 的选择
@泡泡糖
redis技术派项目-技术笔记java开发语言redis
前言最近在复习自己的技术社区的源码时候发现了一个之前自己忽略的一个有趣的地方:就是在项目的Redis操作封装类RedisClient中(包含封装了redis的几种数据结构的使用姿势)对于redisTemplate.execute()方法与template.opsForValue()的选择。这里贴上代码:/***查询缓存**@paramkey*@return*/publicstaticStringg
- MySQL原理(一)架构组成之逻辑模块(2)缓存机制
w_t_y_y
关系型数据库MySQLmysql架构缓存
前面提到了mysql的逻辑模块中包含QueryCache。一、查询缓存1、作用MySQL查询缓存即缓存查询数据的SQL文本及查询结果,用Key-Value的形式保存在服务器内存中。当查询命中缓存,MySQL会立刻返回结果,跳过了解析,优化和执行阶段。2、查询缓存的命中条件(1)首先确保开启了查询缓存。(2)MySQL将缓存存放在一个引用表(类似HashMap的数据结构)。通过一个哈希值索引,这个索
- MySQL进阶之路--MySQL基本架构
牧码人zhouz
逻辑架构如果能在头脑中构建出一幅MySQL各组件之间如何协同工作的架构图,就会有助于深入理解MySQL服务器。下图展示了MySQL的逻辑架构图。MySQL服务器逻辑架构图大体来说,MySQL可以分为Server层和存储引擎层两部分。Server层包括连接器、查询缓存、分析器、优化器、执行器等,涵盖MySQL的大多数核心服务功能,以及所有的内置函数(例如:日期、时间、数学和加密函数),所有跨存储引擎
- kylin启动memcached缓存
向他一样rap
kylin缓存kylinmemcached
当部署kylin的机器内存不足时,可以使用memcached作为kylin的查询缓存。需要在kylin.properties添加的配置如下:kylin.query.cache-enabled=truekylin.query.lazy-query-enabled=truekylin.query.cache-signature-enabled=truekylin.query.segment-cache
- MySQL基础架构及底层数据结构(详解)
1_5_2_
MySQLmysql数据结构数据库b树sql数据库架构
目录逻辑架构连接层服务层引擎层存储层SQL执行流程查询缓存解析器词法解析语法解析优化器执行器存储引擎InnoDB架构缓冲池MyISAM区别InnoDB数据存储结构页区段碎片区表空间B树B+树B+树和B树的区别逻辑架构连接层系统(客户端)访问MySQL服务器前,做的第一件事就是建立TCP连接。经过三次握手建立连接成功后,MySQL服务器对TCP传输过来的账号密码做身份认证、权限获取。用户名或密码不对
- 开发者关心的那些事
圣子足道
ios游戏编程apple支付
我要在app里添加IAP,必须要注册自己的产品标识符(product identifiers)。产品标识符是什么?
产品标识符(Product Identifiers)是一串字符串,它用来识别你在应用内贩卖的每件商品。App Store用产品标识符来检索产品信息,标识符只能包含大小写字母(A-Z)、数字(0-9)、下划线(-)、以及圆点(.)。你可以任意排列这些元素,但我们建议你创建标识符时使用
- 负载均衡器技术Nginx和F5的优缺点对比
bijian1013
nginxF5
对于数据流量过大的网络中,往往单一设备无法承担,需要多台设备进行数据分流,而负载均衡器就是用来将数据分流到多台设备的一个转发器。
目前有许多不同的负载均衡技术用以满足不同的应用需求,如软/硬件负载均衡、本地/全局负载均衡、更高
- LeetCode[Math] - #9 Palindrome Number
Cwind
javaAlgorithm题解LeetCodeMath
原题链接:#9 Palindrome Number
要求:
判断一个整数是否是回文数,不要使用额外的存储空间
难度:简单
分析:
题目限制不允许使用额外的存储空间应指不允许使用O(n)的内存空间,O(1)的内存用于存储中间结果是可以接受的。于是考虑将该整型数反转,然后与原数字进行比较。
注:没有看到有关负数是否可以是回文数的明确结论,例如
- 画图板的基本实现
15700786134
画图板
要实现画图板的基本功能,除了在qq登陆界面中用到的组件和方法外,还需要添加鼠标监听器,和接口实现。
首先,需要显示一个JFrame界面:
public class DrameFrame extends JFrame { //显示
- linux的ps命令
被触发
linux
Linux中的ps命令是Process Status的缩写。ps命令用来列出系统中当前运行的那些进程。ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信息,就可以使用top命令。
要对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程,而 ps 命令就是最基本同时也是非常强大的进程查看命令。使用该命令可以确定有哪些进程正在运行
- Android 音乐播放器 下一曲 连续跳几首歌
肆无忌惮_
android
最近在写安卓音乐播放器的时候遇到个问题。在MediaPlayer播放结束时会回调
player.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
mp.reset();
Log.i("H
- java导出txt文件的例子
知了ing
javaservlet
代码很简单就一个servlet,如下:
package com.eastcom.servlet;
import java.io.BufferedOutputStream;
import java.io.IOException;
import java.net.URLEncoder;
import java.sql.Connection;
import java.sql.Resu
- Scala stack试玩, 提高第三方依赖下载速度
矮蛋蛋
scalasbt
原文地址:
http://segmentfault.com/a/1190000002894524
sbt下载速度实在是惨不忍睹, 需要做些配置优化
下载typesafe离线包, 保存为ivy本地库
wget http://downloads.typesafe.com/typesafe-activator/1.3.4/typesafe-activator-1.3.4.zip
解压r
- phantomjs安装(linux,附带环境变量设置) ,以及casperjs安装。
alleni123
linuxspider
1. 首先从官网
http://phantomjs.org/下载phantomjs压缩包,解压缩到/root/phantomjs文件夹。
2. 安装依赖
sudo yum install fontconfig freetype libfreetype.so.6 libfontconfig.so.1 libstdc++.so.6
3. 配置环境变量
vi /etc/profil
- JAVA IO FileInputStream和FileOutputStream,字节流的打包输出
百合不是茶
java核心思想JAVA IO操作字节流
在程序设计语言中,数据的保存是基本,如果某程序语言不能保存数据那么该语言是不可能存在的,JAVA是当今最流行的面向对象设计语言之一,在保存数据中也有自己独特的一面,字节流和字符流
1,字节流是由字节构成的,字符流是由字符构成的 字节流和字符流都是继承的InputStream和OutPutStream ,java中两种最基本的就是字节流和字符流
类 FileInputStream
- Spring基础实例(依赖注入和控制反转)
bijian1013
spring
前提条件:在http://www.springsource.org/download网站上下载Spring框架,并将spring.jar、log4j-1.2.15.jar、commons-logging.jar加载至工程1.武器接口
package com.bijian.spring.base3;
public interface Weapon {
void kil
- HR看重的十大技能
bijian1013
提升能力HR成长
一个人掌握何种技能取决于他的兴趣、能力和聪明程度,也取决于他所能支配的资源以及制定的事业目标,拥有过硬技能的人有更多的工作机会。但是,由于经济发展前景不确定,掌握对你的事业有所帮助的技能显得尤为重要。以下是最受雇主欢迎的十种技能。 一、解决问题的能力 每天,我们都要在生活和工作中解决一些综合性的问题。那些能够发现问题、解决问题并迅速作出有效决
- 【Thrift一】Thrift编译安装
bit1129
thrift
什么是Thrift
The Apache Thrift software framework, for scalable cross-language services development, combines a software stack with a code generation engine to build services that work efficiently and s
- 【Avro三】Hadoop MapReduce读写Avro文件
bit1129
mapreduce
Avro是Doug Cutting(此人绝对是神一般的存在)牵头开发的。 开发之初就是围绕着完善Hadoop生态系统的数据处理而开展的(使用Avro作为Hadoop MapReduce需要处理数据序列化和反序列化的场景),因此Hadoop MapReduce集成Avro也就是自然而然的事情。
这个例子是一个简单的Hadoop MapReduce读取Avro格式的源文件进行计数统计,然后将计算结果
- nginx定制500,502,503,504页面
ronin47
nginx 错误显示
server {
listen 80;
error_page 500/500.html;
error_page 502/502.html;
error_page 503/503.html;
error_page 504/504.html;
location /test {return502;}}
配置很简单,和配
- java-1.二叉查找树转为双向链表
bylijinnan
二叉查找树
import java.util.ArrayList;
import java.util.List;
public class BSTreeToLinkedList {
/*
把二元查找树转变成排序的双向链表
题目:
输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。
要求不能创建任何新的结点,只调整指针的指向。
10
/ \
6 14
/ \
- Netty源码学习-HTTP-tunnel
bylijinnan
javanetty
Netty关于HTTP tunnel的说明:
http://docs.jboss.org/netty/3.2/api/org/jboss/netty/channel/socket/http/package-summary.html#package_description
这个说明有点太简略了
一个完整的例子在这里:
https://github.com/bylijinnan
- JSONUtil.serialize(map)和JSON.toJSONString(map)的区别
coder_xpf
jqueryjsonmapval()
JSONUtil.serialize(map)和JSON.toJSONString(map)的区别
数据库查询出来的map有一个字段为空
通过System.out.println()输出 JSONUtil.serialize(map): {"one":"1","two":"nul
- Hibernate缓存总结
cuishikuan
开源sshjavawebhibernate缓存三大框架
一、为什么要用Hibernate缓存?
Hibernate是一个持久层框架,经常访问物理数据库。
为了降低应用程序对物理数据源访问的频次,从而提高应用程序的运行性能。
缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事件会同步缓存和物理数据源的数据。
二、Hibernate缓存原理是怎样的?
Hibernate缓存包括两大类:Hib
- CentOs6
dalan_123
centos
首先su - 切换到root下面1、首先要先安装GCC GCC-C++ Openssl等以来模块:yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel2、再安装ncurses模块yum -y install ncurses-develyum install ncurses-devel3、下载Erang
- 10款用 jquery 实现滚动条至页面底端自动加载数据效果
dcj3sjt126com
JavaScript
无限滚动自动翻页可以说是web2.0时代的一项堪称伟大的技术,它让我们在浏览页面的时候只需要把滚动条拉到网页底部就能自动显示下一页的结果,改变了一直以来只能通过点击下一页来翻页这种常规做法。
无限滚动自动翻页技术的鼻祖是微博的先驱:推特(twitter),后来必应图片搜索、谷歌图片搜索、google reader、箱包批发网等纷纷抄袭了这一项技术,于是靠滚动浏览器滚动条
- ImageButton去边框&Button或者ImageButton的背景透明
dcj3sjt126com
imagebutton
在ImageButton中载入图片后,很多人会觉得有图片周围的白边会影响到美观,其实解决这个问题有两种方法
一种方法是将ImageButton的背景改为所需要的图片。如:android:background="@drawable/XXX"
第二种方法就是将ImageButton背景改为透明,这个方法更常用
在XML里;
<ImageBut
- JSP之c:foreach
eksliang
jspforearch
原文出自:http://www.cnblogs.com/draem0507/archive/2012/09/24/2699745.html
<c:forEach>标签用于通用数据循环,它有以下属性 属 性 描 述 是否必须 缺省值 items 进行循环的项目 否 无 begin 开始条件 否 0 end 结束条件 否 集合中的最后一个项目 step 步长 否 1
- Android实现主动连接蓝牙耳机
gqdy365
android
在Android程序中可以实现自动扫描蓝牙、配对蓝牙、建立数据通道。蓝牙分不同类型,这篇文字只讨论如何与蓝牙耳机连接。
大致可以分三步:
一、扫描蓝牙设备:
1、注册并监听广播:
BluetoothAdapter.ACTION_DISCOVERY_STARTED
BluetoothDevice.ACTION_FOUND
BluetoothAdapter.ACTION_DIS
- android学习轨迹之四:org.json.JSONException: No value for
hyz301
json
org.json.JSONException: No value for items
在JSON解析中会遇到一种错误,很常见的错误
06-21 12:19:08.714 2098-2127/com.jikexueyuan.secret I/System.out﹕ Result:{"status":1,"page":1,&
- 干货分享:从零开始学编程 系列汇总
justjavac
编程
程序员总爱重新发明轮子,于是做了要给轮子汇总。
从零开始写个编译器吧系列 (知乎专栏)
从零开始写一个简单的操作系统 (伯乐在线)
从零开始写JavaScript框架 (图灵社区)
从零开始写jQuery框架 (蓝色理想 )
从零开始nodejs系列文章 (粉丝日志)
从零开始编写网络游戏 
- jquery-autocomplete 使用手册
macroli
jqueryAjax脚本
jquery-autocomplete学习
一、用前必备
官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-autocomplete/
当前版本:1.1
需要JQuery版本:1.2.6
二、使用
<script src="./jquery-1.3.2.js" type="text/ja
- PLSQL-Developer或者Navicat等工具连接远程oracle数据库的详细配置以及数据库编码的修改
超声波
oracleplsql
在服务器上将Oracle安装好之后接下来要做的就是通过本地机器来远程连接服务器端的oracle数据库,常用的客户端连接工具就是PLSQL-Developer或者Navicat这些工具了。刚开始也是各种报错,什么TNS:no listener;TNS:lost connection;TNS:target hosts...花了一天的时间终于让PLSQL-Developer和Navicat等这些客户
- 数据仓库数据模型之:极限存储--历史拉链表
superlxw1234
极限存储数据仓库数据模型拉链历史表
在数据仓库的数据模型设计过程中,经常会遇到这样的需求:
1. 数据量比较大; 2. 表中的部分字段会被update,如用户的地址,产品的描述信息,订单的状态等等; 3. 需要查看某一个时间点或者时间段的历史快照信息,比如,查看某一个订单在历史某一个时间点的状态, 比如,查看某一个用户在过去某一段时间内,更新过几次等等; 4. 变化的比例和频率不是很大,比如,总共有10
- 10点睛Spring MVC4.1-全局异常处理
wiselyman
spring mvc
10.1 全局异常处理
使用@ControllerAdvice注解来实现全局异常处理;
使用@ControllerAdvice的属性缩小处理范围
10.2 演示
演示控制器
package com.wisely.web;
import org.springframework.stereotype.Controller;
import org.spring