`
bengan
  • 浏览: 199567 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论
文章列表
原文出自:http://blog.csdn.net/zhouhuozhi/archive/2009/06/07/4250258.aspx 抽象语法树(AST) 最近在做一个类JAVA语言的编译器,整个开发过程,用抽象语法树(Abstract SyntaxTree,AST)作为程序的一种中间表示,所以首先就要学会建立相对应源代码的AST和访问AST。Eclipse AST是Eclipse JDT的一个重要组成部分,定义在包org.eclipse.jdt.core.dom中,用来表示JAVA语言中的所有语法结构。 Eclipse AST的总体结构 1、org.eclipse.jdt.core.dom ...
下面的讨论以Windows平台的Sun MicroSystem实现的java5虚拟机为蓝本,其他操作系统或其他公司实现的虚拟机参数会有部分不同,但大部分含义都和Windows上的类似。Java5与以前版本相比,虚拟机参数大部分保持了向前兼容,同时也增加了一些新的参数,本文将对这些参数的作用作详细描述,使虚拟机能更符合运行环境的需要,获得更好的性能和稳定性。 Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOME\bin\java –option 来启动,-option为虚拟机参数,JAVA_HOME为JDK安装路径,通过这些参数可对 ...
JVM 堆内存(heap)设置选项 参数格式 说    明 设置新对象生产堆内存(Setting the Newgeneration heap size) -XX:NewSize 通过这个选项可以设置Java新对象生产堆内存。在通常情况下这个选项的数值为1 024的整数倍并且大于1MB。这个值的取值规则为,一般情况下这个值-XX:NewSize是最大堆内存(maximum heap size)的四分之一。增加这个选项值的大小是为了增大较大数量的短生命周期对象 增加Java新对象生产堆内存相当于增加了处理器的数目。并且可以并行地分配内存,但是请注意内存的垃圾回收却是不可以 ...
java中堆栈(stack)和堆(heap) 一、堆栈(stack)和堆(heap)? (1)内存分配的策略   按照编译原理的观点,程序运行时的内存分配有三种策略,分别是静态的,栈式的,和堆式的.     静态存储分配是指在编译时就能确定每个数据目标在运行时刻的存储空间需求,因而在编译时就可以给他们分配固定的内存空间.这种分配策略要求程序代码中不允许有可变数据结构(比如可变数组)的存在,也不允许有嵌套或者递归的结构出现,因为它们都会导致编译程序无法计算准确的存储空间需求.     栈式存储分配也可称为动态存储分配,是由一个类似于堆栈的运行栈来实现的.和静态存储分配相反,在栈式存储 ...
select * from user_tab_privs where privilege = 'EXECUTE'; select * from user_objects where object_type = 'TABLE';
declare        v_out   Varchar2(300);        v_str   varchar2(30);  begin      v_str:='123123';      v_out:=rawtohex(utl_raw.cast_to_raw(dbms_obfuscation_toolkit.md5(input_string   =>v_str)));      dbms_output.put_line(v_out);  end;
×××客户号1 ×××××产品1 ×××××××交易明细1 ×××××产品2 ×××××××交易明细1 ×××××××交易明细2 ×××××××…… ×××××××交易明细n ×××客户号2 ×××××产品1 ×××××××交易明细1 ×××××××交易明细2 ×××××××…… ×××××××交易明细n ×××××产品2 ××××× …… ×××××产品n ××× …… ×××客户号n ============================================== SQL> declare   2      cursor cur1 is select deptno from ...
function strToDate(){ var nowDate = new Date(); var oldDate = '2009-06-08'; var oldTime = '16:00'; var year = oldDate.substr(0,4); var month = oldDate.substr(5,2); var day = oldDate.substr(8,2); var temDate = month+'/'+day+'/'+year+' '+oldTime+&qu ...
DECLARE   DAT_NOW_TIME DATE;   NUM_STATUS NUMBER;   NUM_MSG_NO NUMBER;   VR2_MSG_BODY VARCHAR2(200);   VR2_DBG_POS VARCHAR2(200);   VR2_MSG_SEVERITY VARCHAR2(200);   NUM_ELAPSE NUMBER;   REF_CURSOR GCMS_ADM.GCMS_TIMEZONE.ref_output;   --row_ref REF_CURSOR%rowtype     TZH_ID number;   TZH_START_DATE ...
grant select,insert,update,delete on USER_ADM.SYS_USER to USER_GUESS
今天在独立的Tomcat中部署LifeRay Portal ,结果发现总是不能启动Tomcat,也没有抛出异常,所以就看了一些关于Tomcat启动过程的资料。分享一下。 Tomcat启动分析 1 - Tomcat Server的组成部分 1.1 - Server A Server element represents the entire Ca ...
3.3.8  获取CookiegetRequestCookies方法是HttpServletRequest.getCookies方法的包装器,它返回一个javax.servlet.http.Cookie对象的数组,数组中是当前Request对象里的全部Cookie。此方法的签名如下: public abstract Cookie[] getRequestCookies() 例如,下面的代码取得当前请求中的全部Cookie对象,然后在结果数组上循环,输出全部Cookie的名和值。 FacesContext facesContext = FacesContext.getCurrentInstance ...
使用ExternalContext类提供的方法可以获取ServletContext、ServletRequest和ServletResponse对象,构造FacesContext实例时需要这些对象。除此之外,ExternalContext实例提供了包装器方法,可以使用这些方法获得原来需要从ServletContext、ServletRequest及Se ...
在Faces API中有两个类是要经常使用的. 一个是FacesContext 一个是ExternalContext, 本篇文章讲解如何使用前者, 在下面的一篇文章中在继续讲解任何使用后者: 对每个JSF请求,FacesServlet对象都会为其获取一个javax.faces. context. FacesContext类的实例。FacesServlet对象将下列3个取自Web容器的对象传给javax.faces.context.FacesContextFactory对象的getFacesContext方法,以此来做到这一点: ●javax.servlet.ServletContext ● ...
悲观锁:认为在修改数据库数据的这段时间里存在着也想修改此数据的事务! 乐观锁:认为在短暂的时间里不会有事务来修改此数据库的数据! 悲观锁: 基于jdbc实现的数据库加锁如下:      select * from account where name="Erica" for update.在更新的过程中,数据库处于加锁状态,任何其他的针对本条数据的操作都将被延迟。本次事务提交后解锁。 hibernate悲观锁的具体实现如下:      String sql="查询语句";      Query query=session.createQuery(sql) ...
Global site tag (gtag.js) - Google Analytics