- 浏览: 234554 次
- 性别:
- 来自: 上海
最新评论
-
Dom_4j:
...
理解注解中的@Inherited -
s469799470:
demo少个ID
iframe父子页面交互问题 -
errorerror0:
...
iframe父子页面交互问题 -
errorerror0:
iframe父子页面交互问题 -
johnawm:
2012-12-18 wangshibei 写道CountD ...
CountDownLatch的使用
文章列表
rank函数介绍:
准备工作:对已有的基础数据做一些修改,将5763的数据改成与5761的数据相同.
update latty.test_t t1 set local_fare = (
select local_fare from latty.test_t t2
where t1.bill_month = t2.bill_month
and t1.net_type = t2.net_type
and t2.area_code = '5761'
) where area_code = '5763'
我们先使用r ...
分析函数是oracle816引入的一个全新的概念,为我们分析数据提供了一种简单高效的处理方式.在分析函数出现以前,我们必须使用自联查询,子查询或者内联视图,甚至复杂的存储过程实现的语句,现在只要一条简单的sql语句就可以实现了,而且在执行效率方面也有相当大的提高.下面我将针对分析函数做一些具体的说明.
今天我主要给大家介绍一下以下几个函数的使用方法
1. 自动汇总函数rollup,cube,
2. rank 函数, rank,dense_rank,row_number
3. lag,lead函数
4. sum,avg,的移动增 ...
[/b][b]运行时数据区:方法区、虚拟机栈、本地方法栈、堆、程序计数器。
程序计数器:作用是当前线程所执行的字节码的行号指示器。字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令。
分支、循环、跳转、异常处理、线程恢复等都是依赖这个计数器来完成。
在任何一个确定的时刻,一个处理器只会执行一条线程中的指令。
Java虚拟机栈:也是线程私有的,每个方法被执行的时候都会同时创建一个栈帧,用于存储局部变量表、操作栈、动态链接、方法出口等信息,
Java 虚拟机规范中规定了两种异常状况:如果线程请求的栈深度大于虚拟机所允许的深度,将抛出StackOverFlowError异 ...
查看jdk的源码得知,String.getBytes()的源码如下:
public static Charset defaultCharset() {
if (defaultCharset == null) {
synchronized (Charset.class) {
java.security.PrivilegedAction pa =
new GetPropertyAction("file.encoding");
String csn = (String)AccessController.doPrivileged(pa); ...
1.虚拟机并不关心Class的来源是什么语言,只要符合Class文件应有的结构就可以在java虚拟机中运行。(例如java源程序和JRuby源程序都可以通过各自的编译器编译成.class文件运行在java虚拟机上。)
Class文件是一组以8位字节为基础单位的二进制流。Class文件结构采用类C语言的伪结构,这种伪结构只有两种数据类型:无符号数和表。
无符号数属于基本数据类型,u1,u2,u4,u8分别代表1个字节,2个字节,4个字节,8个字节。表是由多个无符号数或其他表作为数据项构成的复合数据类型。
当需要描述同一类型但数量不定的多个数据时,经常会使用 ...
(一)JSP的中文乱码问题
其根源在于:Web容器(Tomcat)默认的字符处理编码是iso-8859-1,对于需要在浏览器页面上显示中文的JSP程序,
但在程序中并没有指定中文的字符集,那么中文将在浏览器页面上显示为乱码。 ...
帧用来存放子页面,既可以是iframe,又可以是frameset。window对象是全局对象,页面上的一切函数和对象都在它的作用域里。 1、parent代表父窗口、如果父窗口又存在若干层嵌套,则top代表顶级父窗口。 self代表窗口自身。
if(self==top){//}判断窗口是否处于顶级
if(self==parent){}//也可以
2.1、父页面访问子页面元素。思路是子页面的元素都在其window.document对象里面,先获取它然后就好说了。 帧最好设置name属性,这样操作最方便。如
<iframe name="test ...
JVM引进了分区管理的机制。 采用分区管理机制的JVM将JVM所管理的所有内存资源分为2个大的部分。永久存储区(Permanent Space)和堆空间(The Heap Space)。其中堆空间又分为新生区(Young (New) generation space)和养老区(Tenure (Old) generation space),新生区又分为伊甸园(Eden space),幸存者0区(Survivor 0 space)和幸存者1区(Survivor 1 space)。
永久存储区(Permanent Space):永久存储区是JVM的驻留内存,用于存放JDK自身所携带的Class,In ...
Java堆中的各代分布。 1. Young(年轻代)JVM specification中的 Heap的一部份 年轻代分三个区。一个Eden(伊甸园)区,两个Survivor区。大部分对象在Eden区中生成。当Eden区满时,还存活的对象将被复制到Survivor区(两个中的一个),当这个S ...
管道流PipedReader和PipedWriter,它不同于普通的IO流,管道基本上是一个阻塞队列,且当线程对象调用shutdownNow之后,PipedReader是可中断的,而不通的IO是不可中断的。
==============向管道写任务==============
public class Sender implements Runnable{
private Random random=new Random(47); private PipedWriter out=new PipedWriter(); public PipedWriter getPipedWrit ...
Java API里面提供了许多同步队列,你可以使用它来解决任务协作问题。同步队列在任何时刻都只允许一个任务插入或移除元素。例子如下:
===============基本线程类
public class LiftOff implements Runnable {
protected int countDown = 10;
private static int taskCount = 0;
private final int id = taskCount++;
public LiftOff() {
...
考虑一个场景:一个饭店有一个厨师和一个服务员。菜做好之后,厨师通知服务员端菜,服务员端完菜之后厨师才能做菜。
代码如下:
public class Meal {
private final int orderNum;
public Meal(int orderNum) {
// TODO Auto-generated constructor stub
this.orderNum=orderNum;
}
@Override
public String toString() {
// TODO Auto-generated method ...
Java虚拟机在首次主动使用类型时初始化它们。下面几种情况下会主动使用:
1.创建类的新实例
2.调用类中声明的静态方法
3.操作类或接口中声明的非常量静态字段
4.调用Java API中特定反射方法
5.初始化一个类的子类
6.指定一个类作为Java虚拟机启动时的初始化类
而被动使用(对于子类、子接口和实现了接口的类引用父亲的非常量静态字段)不会触发初始化。
来看下面的一段代码
=====父类
public class NewParent {
static int hoursOfSleep=(int)(Math.random()*3.0);
static{
...
在windows命令行窗口下执行:运行--cmd
C:\>netstat -aon|findstr "8080"
TCP 127.0.0.1:80 0.0.0.0:0 LISTENING 2448
端口被进程号为2448的进程占用,继续执行下面命令:
C:\>tasklist|findstr "2448"
thread.exe 2016 Console 0 16,064 K
很清楚,t ...
JVM对String常量表达式的处理和优化
- 博客分类:
- JVM
1.看看下面这段代码执行结果是什么?
String a = "ab";
String b = "a" + "b";
System.out.println((a == b)); //它的执行结果为true;
2.下面这段代码的执行结果是什么?
String a = "ab";
String bb = "b";
String b = "a" + bb;
System.out.println((a == b)); //执行结果为false
以上两个执行结果的原因分 ...