`
shinepaopao
  • 浏览: 143065 次
社区版块
存档分类
最新评论
文章列表
Java内存区域   java虚拟机在执行java程序的过程中会把它所管理的内存划分成很多个不同的数据区域。这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则是依赖用户线程的启动和结束而建立和销毁。Java虚拟机规范中把java虚拟机所管理的内存划分为以下几个区域。   一、程序计数器(Program Counter Register)   程序计数器是一块较小的内存空间,它的作用是当前所执行的字节码的行号指示器。它是线程私有的,即各个线程都有独立的程序计数器。   如果线程正在 执行一个java方法,这个计数器记录的是正在执行的虚拟机字节码 ...
Hibernate中Session.load/get方法均可以根据指定的实体类和id从数据库读取记录,并返回与之对应的实体对象。其区别在于:   1.get()方法直接返回实体类,load()方法可以返回实体的代理类实例。   2.hibernate load是采用延迟机制(当lazy属性为true时) 而get不采用延迟机制(get语句马上读库)   3.找不到符合条件的数据 get方法将返回null   load将会报出ObjectNotFoundExcepion   4.get支持多态查询,load只有在lazy=false的情况下才支持多态查询   所谓多态查询,就是可以明 ...
1、选取最适用的字段属性   MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快。因此,在创建表的时候,为了获得更好的MySQL数据库性能,我们可以将表中字段的宽度设得尽可能小。   例如,在定义邮政编码这个字段时,如果将其设置为CHAR(255),显然给数据库增加了不必要的空间,甚至使用VARCHAR这种类型也是多余的,因为CHAR(6)就可以很好的完成任务了。同样的,如果可以的话,我们应该使用MEDIUMINT而不是BIGIN来定义整型字段。   另外一个提高效率的方法是在可能的情况下,应该尽量把字段设置为NOT NULL,这样在将来 ...
      如果JVM里运行的程序, 它的内存堆和持久存储区域的都满了,这个时候程序还想创建对象实例的话,垃圾收集器就会启动,试图释放足够的内存来创建这个对象。这个时候如果垃圾收集器 没有能力释放出足够的内存,它就会抛出OutOfMemoryError内存溢出错误。   JVM的内存管理方式:   SUN的JVM是类似人类家族,也就是在一个地方创建对象,在它长期占据空间之前给它多次死亡的机会,SUN JVM会划分为:   1. 年轻的一代(Young generation),包括EDEN和2个幸存者空间(出发地和目的地the From space and the To space)   ...
下载Python-MySQLdb,https://sourceforge.net/projects/mysql-python/   首先安装mysql   sudo apt-get install mysql-server   安装mysql-python   下载MySQL-python-1.2.3.tar.gz,然后解压该文件包,   cd MySQL-python-1.2.3,进入解压的文件夹,   通常linux文件包内部都带有一个README或者INSTALL,里面包含有该文件包的安装说明、环境变量的配置方法等等,初学者要养成阅读该文件的习惯。根据INSTALL文件的说明 ...
当我们使用Linux一段时间以后,自然不会满足总是在没有任何变化的系统中工作,而是渴望能象在Windows系统中一样,不断对自己的Linux进行升级。另一方面,Linux本身就是一个开放的系统,每天都会有新的软件出现,Linux发行套件和内核也在不断更新。在这样的情况下,学会对Linux(包括系统本身和各种软件)进行升级就显得非常迫切了。 在Linux环境下,升级的对象可以是一般的软件,可以是编译器,也可以是系统的内核,甚至是系统本身。下面,我就分别讲讲对不同对象的升级方法。 1.升级一般软件 一般来说,升级应用软件是比较简单的,因为你不用太在意升级后对其他软件的影响(如果是升级系统,情 ...
当应用程序性能受到损害时,大多数开发人员都惊慌失措,这在情理之中。跟踪Java应用程序瓶颈来源一直以来都是很麻烦的,因为Java虚拟机有黑盒效应,而且Java平台分析工具一贯就有缺陷。 然而,随着Java5中JConsole的引入,一切都发生了改变。JConsole是一个内置Java性能分析器,可以从命令行或在GUIshell中运行。它不是完美的,但是当尖头老板来问你关于性能的问题时,用它来应对还是绰绰有余的——这比查询PapaGoogle要好得多。 我们将向您展示5个方法,使您可以轻松地使用JConsole(或者,它更高端的“近亲”VisualVM)来监控Java应用程序性能和跟踪Jav ...
序列化 Java 序列化技术可以使你将一个对象的状态写入一个Byte 流里,并且可以从其它地方把该Byte 流里的数据读出来,重新构造一个相同的对象。 当两个进程在进行远程通信时,彼此可以发送各种类型的数据。无论是何种类型的数据,都会以二进制序列的形式在网络上传送。发送方需要把这个Java对象转换为字节序列,才能在网络上传送;接收方则需要把字节序列再恢复为Java对象。 把Java对象转换为字节序列的过程称为对象的序列化。 把字节序列恢复为Java对象的过程称为对象的反序列化。 1、序列化的用途 利用对象的序列化可以保存应用程序的当前工作状态,下次再启动的时候将自动地恢复到上次执行 ...
1.TCP keepalive TCP连接保鲜设置 echo 1800 > /proc/sys/net/ipv4/tcp_keepalive_time echo 15 > /proc/sys/net/ipv4/tcp_keepalive_intvl echo 5 > /proc/sys/net/ipv4/tcp_keepalive_probes keepalive是TCP保鲜定时器。当网络两端建立了TCP连接之后,闲置idle(双方没有任何数据流发送往来)了tcp_keepalive_time后,服务器内核就会尝试向客户端发送侦测包,来判断TCP连接状况(有可能客户端 ...
管理员想要提高Linux管理效率是要遵循一些管理技巧的,这里简单介绍有关Linux管理效率的三个技巧:卸载无响应的 DVD 驱动器、恢复出现问题的屏幕、屏幕协作。相信他们会对管理员效率有提高。   技巧 1:卸载无响应的 DVD 驱动器   网络新手的经历:按下服务器(运行基于 Redmond 的操作系统)DVD 驱动器上的 Eject 按钮时,它会立即弹出。他然后抱怨说,在大多数企业 Linux 服务器中,如果在那个目录中运行某个进程,弹出就不会发生。作为一名长期的 Linux 管理员,我会重启机器。如果我不清楚正在运行什么,以及为何不释放 DVD 驱动器,我则会弹出
1、cd命令 这是一个非常基本,也是大家经常需要使用的命令,它用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径。如:  cd /root/Docements # 切换到目录/root/Docements  cd ./path # 切换到当前目录下的path目录中,“.”表示当前目录  cd ../path # 切换到上层目录中的path目录中,“..”表示上一层目录 2、ls命令 这是一个非常有用的查看文件与目录的命令,list之意,它的参数非常多,下面就列出一些我常用的参数吧,如下:   -l :列出长数据串,包含文件的属性与权限数据等  ...
1. NOW、CURRENT_TIMESTAMP和SYSDATE   这些函数都能返回当前的系统时间,它们之间有区别吗?先来看个例子。 mysql> SELECT NOW(),CURRENT_TIMESTAMP(),SYSDATE()\G;*************************** 1. row ***************************            NOW(): 2011-02-04 20:35:04CURRENT_TIMESTAMP(): 2011-02-04
一、类的初始化 对于类的初始化:类的初始化一般只初始化一次,类的初始化主要是初始化静态成员变量。 类的编译决定了类的初始化过程。 编译器生成的class文件主要对定义在源文件中的类进行了如下的更改: 1) 先按照静态成员变量的定义顺序在类内部声明成员变量。 2) 再按照原java类中对成员变量的初始化顺序进行初始化。 一个java类和编译后的class对应的转换如下: 源文件:
首先,我们看看关于重载,和覆盖(重写)的简明定义: 方法重载:如果有两个方法的方法名相同,但参数不一致,哪么可以说一个方法是另一个方法的重载。 方法覆盖:如果在子类中定义一个方法,其名称、返回类型及参数签名正好与父类中某个方法的名称、返回类型及参数签名相匹配,那么可以说,子类的方法覆盖了父类的方法 我们重点说说覆盖问题,以如下代码为例: public class People {  
除了在一个目录结构下查找文件这种基本的操作,你还可以用find命令实现一些实用的操作,使你的命令行 之旅更加简易。本文将介绍15种无论是于新手还是老鸟都非常有用的Linux find命令。   首先,在你的home目录下面创建下面的空文件,来测试下面的find命令示例。  
Global site tag (gtag.js) - Google Analytics