- 浏览: 11107 次
最新评论
-
lincontrollin:
...
内部类
文章列表
1、arrays.copy
public static char[] copyOf(char[] original, int newLength) {
char[] copy = new char[newLength];
System.arraycopy(original, 0, copy, 0,
Math.min(original.length, newLength));
return copy;
}
然后接着看,System.arraycopy函数 ...
centos安装nginx
- 博客分类:
- centos
1、先下载nginx源码
2、解压到某个目录
3、./configure --prefix=/usr/local/nginx
出现错误:
./configure: error: the HTTP rewrite module requires the PCRE library.
You can either disable the module by using --without-http_rewrite_module
option, or install the PCRE library into the system, or build t ...
MySql的高级使用
- 博客分类:
- mysql
一、存储过程
1、语法
create procedure name([IN |OUT |INOUT ] 参数名 数据类形)
begin
......
end;
IN:输入参数:表示该参数的值必须在调用存储过程时指定,在存储过程中修改该参数的值不 ...
valotile关键字
- 博客分类:
- java语言
一、java的内存模型
1、内存模型简介
(1)不同的平台,内存模型是不一样的,但是jvm的内存模型规范是统一的
(2)线程安全无非是要控制多个线程对某个资源的有序访问或修改。总结java的内存模型,要解决两个主要的问题:可见性和有序性。
(3)我们都知道计算机有高速缓存的存在,处理器并不是每次处理数据都是取内存的。JVM定义了自己的内存模型,屏蔽了底层平台内存管理细节
2、可见性
前提:Java内存模型(JMM)规定了jvm有主内存,主内存是多个线程共享的。当new一个 ...
今天在网上收集了classLoader的学习,综合了各个的博客,在此记录,
一、类加载结构
1、bootstrap classloader 启动类加载器
(1) 运行虚拟机时候,这个类加载器被加载
(2)加载java 基本api,负责jdk_home/lib目录下的核心 api 或者-X bootclasspath 选项指定的jar包装入工作
(3)不是java语言实现的
2、extension classloader 扩展类加载器
(1)主要负 ...
内部类:局部内部类、匿名内部类、静态内部类
一、局部内部类 存在于方法代码块中
二、匿名内部类 没有名字,可以使用“实例初始化”、final方法进行初始化
三、静态内部类 静态的static
(1)只能访问外部类的static字段或方法
(2)不需要外部类对象,和其他内部类的区别是:其他内部类不可以在其自身声明static字段或者方法
(3)interface里面也可以声明静态内部类,其实接口内部的类,就是静态内部类,默认是public static
四、内部类继承 可以,但是子类必须对外部类进行初始化,也就是说,需要一个外部类对象 为什么需要内部类?
1、内部类可以继承某个类 ...
javax.crypto.BadPaddingException: Data must start with zero
进行RSA加密和解密的时候,会出现在这样的错误,找了许多答案,有的说是什么byte[]转换为string的时候需要分隔,有的说是“只能公钥加密,私钥解密”
但是在这里,是因为我在分块解密的时候,把byte数组划的块大小限定为64,所以导致错误的,实际上是128
另外一点值得提出的是,对于公钥加密之后的byte数组,如果转为string,然后再取得string的byte数据时候,会导致私钥解密失败,下面是两个byte数组对比
用公钥加密后:
[91 ...
java序列化(理解)
- 博客分类:
- java语言
仅此记录,如果雷同,纯属巧合
java序列化顺序:
(1)类元数据(类的相关描述)
1、STREAM_MAGIC. 声明使用了序列化协议.
2、STREAM_VERSION. 序列化协议版本
3、TC_OBJECT. 声明这是一个新的对象.
4、Class名字的长度.
5、Class类名
6、序列化ID
7、标记号. 该值声明该对象支持序列化
8、该类所包含的域个数
(2)递归地输出父类描述
(3)从顶 ...
一、E-R模型(entity-relationship)
三个属性:实体集、联系集合属性
(1)实体:现实世界区别于其他对象的“对象”或“事物”
(2)联系:多个实体之间的联系
(3)属性:类似于数据表的列
码:(1)超码:在实体集可以唯一标示一个实体的属性集合(比如说一个id标示不同的人,人就相当于实 体)
(2)候选码:最小的超码
(3) 被选作来区分不同实体的候选码
二、关系数据库的设计
(1)函数依赖
如果属性集A能够推出属性集B,那么可以说属性集B函数依赖于属性集 ...
mysql 建表时,我们应该考虑的数据类型
- 博客分类:
- mysql
本文是由《高性能mysql》摘录而来
如何选择最优的数据类型,请看下面几个原则
(1)更小通常更好
好处:占用更少磁盘、内存和cpu缓存,处理时需要的cpu周期更少
(2)简单就好
简单数据类型通常需要更少的cpu周期,例子:用mysql内建日期类型(date,dateTime,timestample)而不是字符串来存储日期,用整型存储ip
(3)尽量避免null
null的列不容易进行查询优化;null列需要更多的存储空间(mysql做特殊处理);null列被索引时,每个索引需要一个额外的字节,在myisam里还可能会导 ...
浅析myisam存储引擎
- 博客分类:
- mysql
一、总结
MyIsam存储引擎是mysql默认的存储引擎,它提供了全文搜索、压缩、空间函数等等特性,但是它不支持事务和行级锁,还有一个毫无疑问的缺陷是崩溃后无法安全回复。
二、myisam的存储
以myisam为存储引擎的表都会保存两个文件,一个数据文件(.MYD)和一个索引文件(.MYI)。
myisam表可以存储的行记录数,如果指针的长度是6字节,也就是48位,那么可以存储256TB的数据。
三、mysiam的特性
(1)加锁与并发:表锁,并且是共享锁和排他锁(读锁和写锁),也就是说,在表有读取的同时(共享锁),可以进行插入数据或者更新数据。
(2)修复可 ...
mysql 事务的四种隔离级别
- 博客分类:
- mysql
我们知道事务有四种特性
(1)原子性:一个事务被视为不可分割的一个单位
(2)隔离性:事务之间隔离开来,一个事务所做的修改,未提交之前另一个事务是不可见的
(3)永久性:事务的更改是永久的
(4)一致性:数据库总是从一个一致性的状态转换到另外一个一致性的状态中
在此之前,我们来学习一下mysql 如何设置隔离级别
SELECT@@global.tx_isolation;
SELECT@@session.tx_isolation;
一、java文件的执行过程
大部分程序执行过程分为三步:编码---编译---执行
(1)编码:得到.java文件
(2)编译:得到字节码(class文件)
(3)执行:jvm进行类装载,由执行引擎转换成机器码运行
二、运行数据区域
类装载和执行引擎这里不说明,只是说明jvm的运行数据区域:寄存器、本地方法栈、java栈、堆、方法区、运行常量池。下面我们来说说各个区域的功能
(1)寄存器:每一个线程独有,主要是pc寄存器等
(2)java栈:每一个线 ...
为ubuntu添加英汉词典
- 博客分类:
- ubuntu
1 到ubuntu软件中心下载stardict
2 到http://abloz.com/huzheng/stardict-dic/zh_CN/ 下载你需要的词典(比如langdao-ec-gb dictionary(en - zh_CN) 朗道英汉字典)
3 解压 tar -jxvf stardict-langdao-ec-gb-2.4.2.tar.bz2
4 将得到的文件夹移动到/usr/share/stardict/dic目录下
5 重新打开stardict,就会发现有新的词典了
家里接了光纤,中国移动,一下子不知道如何连接
下面是演示过程
1 添加一个del链接,然后编辑
2 输入你的用户名和密码,然后输入手动输入ip,添加你的ip和子网掩码,点击保存
3 连接你刚才编辑的del,就成功了