- 浏览: 599594 次
- 性别:
- 来自: 厦门
最新评论
文章列表
NVARCHAR2和VARCHAR2的小区别
- 博客分类:
- oracle
NVARCHAR2在计算长度时和字符集相关的:
例如数据库是中文字符集时以长度20为例,
1、NVARCHAR2(20)是可以存进去20个汉字的,如果用来存英文也只能存20个字符。
2、而VARCHAR2(20)的话,则只能存进10个汉字,英文则可以存20个。
注:二者字节上线都是4000,注意大小设置不要溢出。
java 泛型实现原理与类型擦除
- 博客分类:
- java
Java中的泛型都是在编译器这个层次来实现的。
在生成的Java字节码中是不包含泛型中的类型信息的。使用泛型的时候加上的类型参数,会在编译器在编译的时候去掉。这个过程就称为类型擦除。
如在代码中定义的List<Object>和List<String>等类型,在编译后都会变成List,JVM看到的只是List,而由泛型附加的类型信息对JVM来说是不可见的。Java编译器会在编译时尽可能的发现可能出错的地方,但是仍然无法避免在运行时刻出现类型转换异常的情况。
Java编译器是通过先检查代码中泛型的类型,然后再进行类型擦除,在进行编译的
public c ...
stack(栈):存放基本类型的数据和对象的引用,即存放变量。
如果存放的是基本类型的数据(非静态变量),则直接将变量名和值存入stack中的内存中;
如果是引用类型,则将变量名存入栈,然后指向它new出的对象(存放在堆中)。
heap(堆):存放new产生的数据。
data segment:分为静态域和常量域。
静态域:
存放在对象中用static定义的静态成员(即静态变量,同理,如果该静态变量是基本类型则将变量名和值存入静态域,如果是引用类型则指向new出的对象)。
常量池:
常量池指的是在编译期被确定,并被保存在已编译的.class文件中的一些数据。除了包含代码中所定义的各种基本 ...
Java中参数的传递有两种,一种是按值传递(传递的是具体的值,如基础数据类型),另一种是按引用传递(传递的是对象的引用,即对象的存储地址)。
main()
{
//按值传递
int val = 20 ;
print(val) ; //打印的是20
setVal(val);
print(val) ; //打印的还是20
//按引用传递
StringBuffer val = new StringBuffer("234");
print(val.toString()) ;//打印的是234
setString ...
学习了多年的java的人对hashCode和equals方法都不是很清楚。
总的来说,Java中的集合(Collection)有两类,一类是List,另一类是Set。前者集合内的元素是有序的,元素可以重复;后者元素无序,但元素不可重复。那么这里就有一个比 ...
采用DECODE方法来进行特殊规则排序
- 博客分类:
- oracle
我们需要按照把浙江省排在第一位,福建省排在第二位,广东省排在第三位。可以采用如下语句:
SELECT T.* FROM ALL_MESSAGE T ORDER BY DECODE(T.PROVINCENAME,'浙江省',1,'福建省',2,'广东省',3,4) ;
Quartz是一个强大的企业级任务调度框架。看下代码配置文件Spring-quartz.xml代码:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:xsi="http://www.w3.org/2001/XMLSche ...
JAVA获取图片大小和尺寸【转】
- 博客分类:
- java
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import javax.imageio.ImageIO;
public class CalPit {
public static void main(String[] args) throws FileNotFoundException, IOExcepti ...
1.直接路径读方式
--直接路径读方式
drop table test;
create table test as select * from dba_objects where 1=2;
set timing on
insert /*+ append */ into test select * from t;
commit;
--注意这个直接路径方式插入试验输出的物理读(这是首次读哦)
set autotrace traceonly
select count(*) from test;
2.绑定变量使得速度加快
SQL>--未使用绑定变量
...