- 【java】怎么理解不同对象实例的对象锁是互不干扰的
晨春计
Androidjava
在Java中,synchronized关键字用于实现线程同步,它可以作用于实例方法、静态方法以及代码块。当synchronized应用于实例方法或实例变量时,它创建的是一个对象锁,这个锁是与特定的对象实例关联的。因此,每个对象实例都有其自己的锁。这里的关键点在于,对象锁是绑定到特定对象实例上的。这意味着对于不同的对象实例,即使它们属于同一个类,它们各自拥有独立的对象锁。当一个线程获取了一个对象实例
- Rides实现分布式锁,保障数据一致性,Redisson分布式事务处理
朱杰jjj
缓存分布式
分布式环境下分布式锁有三种方式:基于数据库分布式锁基于Redis分布式锁基于zk分布式锁本帖只介绍Redis分布式锁为什么需要用到分布式锁?在单机环境下一个服务中多个线程对同一个事物或数据资源进行操作时,可以通过添加加锁方式(synchronized和lock)来解决数据一致性的问题。但是如果出现多个服务的情况下,这时候我们在通过synchronized和lock的方式来加锁会出现问题,因为多个服
- synchronized锁升级过程
liang8999
javajvm开发语言
一、synchronized锁加到什么地方synchronized上锁,其实锁信息是加在对象头中的markdown,对象中的前四个字节表示markdown;markdown还记录了对象的gc、hashcode信息注意:markdown结构与jvm虚拟机的实现有关,I)32位Hotspot虚拟机markdown结构如下:II)64位Hotspot虚拟机的markdown结构如下:二、synchron
- Java 入门基础篇05 - Java的关键字
仔仔 v1.0
Java基础java开发语言intellij-idea
什么是关键字?就是被java语言赋予特殊含义的单词。关键字的特点组成关键的字母都是小写。常见关键字class,public,static,void.....。关键字注意事项goto和const是java语言的保留字,关键字在IDEA编译器中有明确的颜色变化。关键字列表ABSTRACTCONTINUEFORNEWSWITCHassertdefaultgotopackagesynchronizedbo
- Java基础 -- 05反射reflect
mmlz00
Java基础Java基础反射reflectProxy动态代理
目录引序说不通1:注解说不通2:匿名内部类说不通3:动态代理反射:反射定义强调:类对象又强调:static类静态成员再三强调:synchronized修饰符类对象:知晓类结构类结构之:内部成员内部成员--构造函数内部成员--数据成员内部成员--方法成员静态代理:动态代理:反射+注解反射+泛型+注解getGenericSuperclass()用法引序引序:开始反射概念学习之前,先来段引序。请牢记:计
- 锁之synchronized 与volatile lock的异同
追梦的鱼儿
java锁synchronizedvolatileLock
目录synchronized特性用法使用场景synchronized的优缺点优点缺点volatile特性用法使用场景Lock特性用法使用场景总结相同点不同点synchronized关键字是Java提供的用于解决并发编程中数据一致性问题的重要工具。它通过锁机制确保在同一时刻只有一个线程能够执行被同步的方法或代码块,从而实现互斥访问。尽管synchronized使用简单且可靠,但在高并发场景下可能会带
- synchronized锁状态和底层实现
码了三年又三年
java开发语言
锁的状态无锁状态,偏向锁状态,轻量级锁状态,重量级锁状态。锁的状态是通过对象监视器在对象头中的字段来表明的,四种状态会随着竞争的情况逐渐升级。偏向锁、轻量级锁、重量级锁是针对synchronized的状态。这四种状态都不是Java语言中的锁,而是JVM为了提高锁的获取与释放效率而做的优化(使用synchronized时)无锁:没有任何线程使用锁对象。偏向锁:当前只有一个线程访问,在对象头MarkW
- JavaEE初阶-多线程2
炙热的大叔
JavaEE初阶java-eejavajvm
文章目录一、多线程安全问题1.1线程安全问题的原因1.2如何解决线程安全问题二、加锁2.1synchronized2.2synchronized的几种使用方式2.3synchronized的可重入性三、死锁3.1死锁的必要条件一、多线程安全问题代码示例如下:publicclassDemo20{staticintcount=0;publicstaticvoidmain(String[]args)th
- Java多线程的可重入和不可重入
@See you later
Javajava开发语言
在Java中,可重入(Reentrant)和不可重入(Non-reentrant)这两个概念通常用于描述多线程环境下的同步方法或代码块的行为。可重入(Reentrant)可重入是指一个线程持有某个锁(Lock)时,可以再次请求同一个锁而不会被锁阻塞。换句话说,如果一个线程获取了某个对象的锁,它可以再次请求这个锁而不会导致死锁。Java中的synchronized关键字就是可重入的。当一个线程获取了
- Java虚拟机是如何执行线程同步的
莫生人
在网上看到一篇老外的文章(原文地址:HowtheJavavirtualmachineperformsthreadsynchronization),介绍了线程同步相关的几个基础知识点。所以想把它翻译一下给大家看看。相信大家看过这些基础知识之后再看synchronized的原理就会好理解一点。了解Java语言的人都知道,Java代码要想被JVM执行,需要被转换成由字节码组成的class文件。本文主要来
- java高并发程序设计-锁的优化
fantasyYan2
java高并发程序设计javajvmjava多线程锁优化CAS
如何提高锁的性能减少锁持有时间即对类似如下的方法publicsynchronizedvoidsync(){a();//其实只有b需要同步处理b();c();}改进为publicvoidsync(){a();synchronized(this){b();}c();}从而减少锁的持有时间减少锁粒度如ConcurrentHashMap内部分成若干个小的HashMap,每个HashMap加不同的锁读写分离
- synchronized和Lock有什么区别?用新的Lock有什么好处?
Shaw_Young
原始构成synchronized是关键字属于JVM层面monitorenter(底层是通过monitor对象来完成的)monitorexitLock是具体类(java.util.current.locks.Lock)是api层面的锁使用方法synchronized不需要用户去手动释放锁,当synchronized代码执行完后系统会自动让线程释放对锁的占用ReentrantLock则需要用户去手动释
- synchronized常见锁策略
渡月真白
java开发语言
这里提到的锁策略仅仅是一种“策略模式”,并不是真正的锁,同理这里的锁策略不仅仅局限于java,所有编程语言都适用于这里的锁策略。锁策略1.乐观锁,悲观锁乐观锁,悲观锁并不是一把真正的锁,他描述的是一个抽象的概念,是一类锁的集合锁冲突:几个线程同时竞争一把锁,一个线程拿到锁,其余线程处于阻塞等待的状态.乐观锁:预测该场景中不太会出现锁冲突的情况.(后续做的工作会更少)悲观锁:预测该场景中会频繁出现锁
- linux事件驱动,事件驱动
糖卿
linux事件驱动
在前面的文章《双刃剑-理解多线程带来的安全问题》中,我们提到了多线程情况下存在的线程安全问题。本文将以这个问题为背景,介绍如何通过使用synchronized关键字解这一问题。...»synchronized底层原理通过反编译class文件,可以看到synchronized最关键的部分是monitor对象。又因为synchronized关键字使用的方法不同,可以将monitor对象使用分为以下两种
- 2024金九银十208道Java中高级高频面试题(含答案)
2401_85125308
java开发语言
12.什么是集合?集合和数组的区别。13.常用的集合类有哪些?它们的区别是什么?14.集合如何安全地批量删除元素?15.java怎么实现动态代理?有什么意义?16.什么是死锁?死锁产生的原因是什么?如何避免死锁?17.synchronized的作用。18.volatile关键字的作用19.线程怎么保持同步?20.什么是CAS?21.乐观锁与悲观锁?乐观锁的实现方式?22.Lock与synchron
- Java面试题
路飞Fly了
java面试开发语言
Java面试题文章目录1、抽象类和接口的区别2、重载和重写的区别3、==和equals的区别4、讲一讲什么是map、set、list5、HashMap原理6、什么是JSP?它与Servlet有什么区别7、synchronized关键字8、HashTable与HashMap的区别9、ArrayList和LinkedList的区别10、Session和Cookie的区别11、String、String
- Java 中的并发工具类详解:Semaphore、CountDownLatch 和 CyclicBarrier
swadian2008
并发编程SemaphoreCountDownLatchCyclicBarrierJava并发工具类
目录1、信号量:Semaphore2、线程同步:CountDownLatch和CyclicBarrierJava并发包提供了哪些并发工具类?我们通常所说的并发包也就是java.util.concurrent及其子包,集中了Java并发的各种基础工具类,具体主要包括几个方面:提供了比synchronized更加高级的各种同步结构,包括CountDownLatch、CyclicBarrier、Sema
- Java并发编程(五)—ReetrantLock详解及应用
echola_mendes
Java并发编程java开发语言
目录一、ReetrantLock的特性1、非阻塞获取锁2、带超时的锁获取:3、锁的公平性4、锁的可中断性5、Condition条件变量6、锁的可重入性可重入锁不可重入锁7、性能优化二、ReentrantLock和Synchronized的区别1、语法和使用方式2、锁的获取和释放3、高级特性4、条件变量5、性能总结三、ReentrantLock使用场景之前的文章Java并发编程(四)—synchro
- 线程的锁机制
我超爱学习&
javajvm开发语言
锁机制的介绍针对于临界资源安全隐患问题的解决方式。引入锁机制。1.锁机制的作用:将异步的代码块变成同步的代码块。2.语法:synchronized(锁对象的地址){//需要同步的代码块(如果不同步,就会出现安全隐患问题)}3.任何的java对象都可以作为锁。一个要求:所有的线程看到的都是同一个对象。4.同步的代码块在可能的情况下,尽量缩小范围,提高其他代码的并发效率。5.运行逻辑:当一个线程A执行
- synchronized原理
Petrichor-瑾
JavaEEjava开发语言
目录1.基本特点2.锁升级/锁膨胀2.1偏向锁2.2轻量级锁2.3重量级锁3.锁消除4.锁粗化1.基本特点结合我们前面所说的锁策略,我们可以总结出synchronized具有以下特性(在JDK1.8中):1.初始阶段采用乐观锁策略,如果锁冲突频繁发生,则切换为悲观锁。2.初始阶段使用轻量级锁实现,但如果锁持有时间较长,将转换为重量级锁。3.在实现轻量级锁时,通常会采用自旋锁策略。4.它是一种不公平
- Java源码解读-数据容器都是如何实现同步的
问道飞鱼
Java开发Java源码解读数据容器同步机制
用Java的同学可能在自己使用或者面试的时候经常遇到这么一个问题,哪些数据结构或者容器是同步的,是怎么实现的同步?其实很多的数据同步原理都比较简单,我把目前知道的数据容器的同步方式稍微梳理了一下1.线程安全容器StringBuffer(太明显,synchronized关键字)@OverridepublicsynchronizedStringBufferappend(Stringstr){toStr
- Java 内存模型-锁的内存语义
markfork
章节目录锁的释放-获取建立的happens-before关系锁的释放-获取的内存语义锁的释放-获取建立的happens-before关系锁是Java并发编程中最重要的同步机制。锁除了让临界区互斥执行之外,还可以让释放锁的线程向获取同一个锁的线程发送消息。如下所示,下面是锁释放-锁获取的示例代码classMonitorExample{inta=0;publicsynchronizedvoidwrit
- Java--多线程中wait和sleep的区别
往事一块六毛八
wait()wait()是object中的方法,可让线程进行等待,假设线程A调用了某个对象的wait()方法,线程A就会释放该对象的锁,同时线程A就进入到了该对象的等待池中,进入到等待池中的线程不会去竞争该对象的锁。当wait()中不传参数时,jvm会默认会传一个参数0,表示永久阻塞,若传入参数,则表示在指定的时间内阻塞。wait()方法由于要释放锁,所以得写在synchronized方法或块中,
- JDK成长记16:从0分析你不知道的synchronized底层原理(下)
_程序员成长记
file上一节你了解了什么是CAS、synchronized形成的锁的类型、重量级锁是用户态进程向内核态申请资源加锁过程,HotSpotJava对象结构,以及初步从3个层面分析了下synchronized的核心流程。还记得核心流程图么?如下所示:file这一节我们仔细来分析下这个过程中,每一步的底层原理。我们需要用到一个工具包,JOL,它可以将java对象的信息打印出来。你可以通过这个工具分析升级
- Recommended order of a method's mutiple modifiers
MJN
classjava
Themethodmodifiersconsistofthefollowing:annotationsaccessmodifiersabstractstaticfinal:Afinalmethodcannotbeoverriddeninasubclass.synchronized:Asynchronizedmethodhasadditionalsemanticsrelatedtothecontro
- java 线程安全的linkedlist_使ArrayList,LinkedList变成线程安全的
肖宏辉
java线程安全的linkedlist
1.使用SynchronizedListSynchronizedList是一个线程安全的包装类。继承于SynchronizedCollection,SynchronizedCollection实现了Collection接口,SynchronizedList包含一个List对象,对List的访问修改方法进行了一些封装,在封装的方法中会对list使用同步锁加锁,然后再进行存取和修改操作。使用方法如下L
- Collection.synchronized*方法注意事项
shadon178
Java
引API的一句话:返回指定列表支持的同步(线程安全的)列表。为了保证按顺序访问,必须通过返回的列表完成所有对底层实现列表的访问。在返回的列表上进行迭代时,用户必须手工在返回的列表上进行同步:Listlist=Collections.synchronizedList(newArrayList());...synchronized(list){Iteratori=list.iterator();//M
- 23. 如何使用Collections.synchronizedList()方法来创建线程安全的集合?有哪些注意事项?
这孩子叫逆
面试题java集合java
Collections.synchronizedList()方法用于将一个普通的List包装成线程安全的List。通过这个方法生成的List,所有的访问和修改操作都会被自动加锁,从而确保在多线程环境下对集合的并发访问是安全的。如何使用Collections.synchronizedList()创建线程安全的集合以下是使用Collections.synchronizedList()创建线程安全Lis
- 16 - ReentrantLock 可重入锁
坯子蔡
并发编程并发编程多线程ReentrantLockLock可重入锁
ReentrantLock可重入锁1.ReentrantLock概念1.1背景1.2保证可见性1.3可重入锁1.4公平锁与非公平锁2.源码分析2.1类结构2.2获取锁2.3释放锁2.4如何实现重入3.总结1.ReentrantLock概念1.1背景 Java语言本身提供的synchronized也是管程的一种实现,既然Java从语言层面已经实现了管程了,那为什么还要在SDK里提供另外一种实现呢?
- 多线程中的同步
Aluha_f289
当需要资源共享的时候使用同步同步有两种方法1.synchronized的代码块语法:synchronized(对象){}2.synchronized的方法synchronizedvoid方法名(){}以下是实例classThreadDemo020implementsRunnable{privateintticket=5;publicvoidrun(){for(inti=5;i>0;i--){/*s
- 开发者关心的那些事
圣子足道
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