public class B extends Object{
        
static{System.out.println("Load B");
    }

    
public B(){
        System.out.println(
"Create B");
    }

}

public class A extends B{
    
static {
        System.out.println(
"Load A");
    }

    
public A(){
        System.out.println(
"Create A");
    }

}

public class testClass {
    
public static void main(String[] args){
        
new A();
    }


}
写出程序运行结果:

Load B
Load A
Create B
Create A

欢迎大家留言发散讨论

posted @ 2009-09-26 18:38 Robert Su 阅读(614) | 评论 (1)编辑 收藏

在 myeclipse 的 preferences-属性 中搜索 javascript,搜到以后把它的Editing files 下的 Encoding 改为 Chinese,National Standard 就好了 也就是 GB18030

posted @ 2009-09-07 17:03 Robert Su 阅读(804) | 评论 (1)编辑 收藏

an assertion failure occured (this may indicate a bug in Hibernate, but is more likely due to unsafe use of the session)

session出错下次使用的时候报错


这个bug解决方法还没搞清楚

posted @ 2009-09-07 11:28 Robert Su 阅读(3227) | 评论 (0)编辑 收藏

问题描述:
网上关于extjs的comboTree已经层出不穷了
利用tpl显示tree不是问题
关键是combo的显示值
网上的例子多是

comboxWithTree.setValue(node.id);
但是这样的显示跟post值不一样

tree1.on('click',function(node){
       
        var Record = Ext.data.Record.create(
            {name: 'id', mapping: 'id'},
            {name: 'text', mapping: 'text'}
       ) ;
       var t = new Record({
            id: node.id,
            text: node.text
            }
       )
     
       comboxWithTree.getStore().add(t);
       console.debug(comboxWithTree.getStore().data);
       comboxWithTree.setValue(node.id);
       comboxWithTree.collapse();
    });

posted @ 2009-09-01 18:18 Robert Su 阅读(1474) | 评论 (0)编辑 收藏

把 WordPress 作为 CMS 来使用在2.1版本变得更加容易,只需5个简单的步骤并且不需去修改复杂的代码就能实现。

  1. 创建一个页面并命名为 home 作为开始页面,并给其 page order(页面顺序)为0。
  2. 创建一个空的页面并命名为 weblog 并给其 page order(页面顺序) 为99。
  3. 在管理界面,选择 option(选项) > reading(阅读),将上面创建的 home 作为 front page(开始页) 和 weblog 作为 posts page(文章列表页面)。
  4. 通过这个函数 wp_list_pages(’sort_column=menu_order&title_li=’) 创建网站菜单。
  5. 使用一个插件使得页面也能够被搜索。
    可以选用 Search Everything 这个插件。

当为你的 CMS 创建页面的时候,确定页面顺序必须在0和99之间。这样的话,菜单中的第一个就是 home,最后的是 weblog,当然你可以根据你自己的需求更改。

posted @ 2009-08-26 22:22 Robert Su 阅读(137) | 评论 (0)编辑 收藏

浏览主页都不行

建设中

您想要查看的站点当前没有默认页。可能正在对它进行升级和配置操作。

请稍后再访问此站点。如果您仍然遇到问题,请与网站的管理员联系。


如果您是网站的管理员,并且认为您是由于错误才收到此消息,请参阅 IIS 帮助中的"启用和禁用动态内容"。

要访问 IIS 帮助
  1. 单击开始,然后单击运行
  2. 打开文本框中,键入 inetmgr。将出现 IIS 管理器。
  3. 帮助菜单,单击帮助主题
  4. 单击Internet 信息服务

posted @ 2009-08-25 23:16 Robert Su 阅读(183) | 评论 (0)编辑 收藏

youku为什么不推出类似ipod itouch之类的播放器?

个人认为这样的播放器+ PC客户端管理(流媒体到播放器)工具是很有市场的

苹果的成功经验已经有了,要做的只是  UI设计+工业设计

估计youku现在没上市缺钱,上市之后会有此类开发计划吧。

土豆的UI简直就是对人眼的摧残。

posted @ 2009-08-17 09:05 Robert Su 阅读(296) | 评论 (0)编辑 收藏

    public List findByInstance(IInsInfo instance) {
        log.debug(
"finding IInsInfo instances with given IInsInfo instance");
        
try {
            Criteria crit 
= getSession().createCriteria(instance.getClass());
            Criterion iname 
= null, gdfield = null, kind = null, property = null;
            Conjunction conjunction 
= Restrictions.conjunction();// 合取
            
//
            if (instance.getIname() != null)
                
if (!instance.getIname().equals(null)) {
                    iname 
= Restrictions.like("iname""%"
                            
+ instance.getIname() + "%");
                    conjunction.add(iname);
                }
            
if (instance.getGdfield() != null)
                
if (!instance.getGdfield().equals("")) {
                    gdfield 
= Restrictions.eq("gdfield", instance.getGdfield());
                    conjunction.add(gdfield);
                }
            
if (instance.getKind() != null)
                
if (!instance.getKind().equals("")) {
                    kind 
= Restrictions.eq("kind", instance.getKind());
                    conjunction.add(kind);
                }
            
if (instance.getProperty() != null)
                
if (!instance.getProperty().equals("")) {
                    property 
= Restrictions.eq("property", instance
                            .getProperty());
                    conjunction.add(property);
                }

            crit.add(conjunction);
            
return crit.list();
        } 
catch (RuntimeException re) {
            log.error(
"find by IInsInfo instance failed", re);
            
throw re;
        }
    }

posted @ 2009-08-16 11:14 Robert Su 阅读(653) | 评论 (0)编辑 收藏

Ext.Ajax.request({
            url : '../../topicInfo/topicInfoNode.htm',
            success : getTopicInfoArray,
            method : 'post'
        });

function getTopicInfoArray(response, options) {
    topicInfo_arr = eval(response.responseText);
    Ext.onReady(renderAll);
}

也可以用Ext.util.JSON.decode()方法搞定

posted @ 2009-08-06 10:28 Robert Su 阅读(334) | 评论 (0)编辑 收藏

SELECT b.id, b.name, a. COUNT
FROM (SELECT adminlevel, COUNT(*) AS [count]
        FROM hrdc.i_ins_info
        GROUP BY adminlevel) a, hrdc.b_adminlevel b
WHERE a.adminlevel =* b.id

或者写成

SELECT b.id, b.name, a. COUNT
FROM (SELECT gdfield, COUNT(*) AS [count]
        FROM hrdc.i_ins_info
        GROUP BY gdfield) a RIGHT JOIN
      hrdc.b_field b ON a.gdfield = b.id


这是右连接的一个例子

inner join(等值连接) 只返回两个表中联结字段相等的行
left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录
right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录
on 指定表间联结字段及其关系的等号 "=" 表达式, 返回 true 或 false. 当表达式返回 true 时, 则查询中包含该记录.



7.5.2

 程序代码
Update (ctarticle AS a LEFT JOIN ctclass AS c ON a.classid = c.classid) LEFT JOIN cttag AS b ON a.articleid = b.articleid
SET tag=tag+' ', b.articleid=a.articleid, b.classid=a.classid, b.nclassid=a.nclassid
Where a.classid=23 AND a.nclassid=0 AND tagid is not null


7.5.1

 程序代码
Update (ctarticle AS a LEFT JOIN (ctnclass AS c LEFT JOIN ctclass AS d ON c.classid = d.classid) ON a.nclassid = c.nclassid AND a.classid = c.classid) LEFT JOIN cttag AS b ON a.articleid = b.articleid SET tag=d.class+' '+c.nclass, b.articleid=a.articleid, b.classid=a.classid, b.nclassid=a.nclassid Where a.classid=23 AND a.nclassid=197;


7.5 更新操作

74.5 左连接中数据的筛选

 程序代码
Insert INTO cttag(articleid,classid,nclassid) Select a.articleid,a.classid,a.nclassid from ctarticle a left join cttag b on a.articleid=b.articleid where b.articleid is null

//本语句功能为, 显示主表的全部内容, 插入数据到副表中没有的数据
//主要作用为: 让数据减少冗余

7.4.4.1 上例中的延续

 程序代码
Select a.*, b.*, c.*, d.*
FROM cttag as d left join ((ctarticle AS a LEFT JOIN ctclass AS b ON a.classid=b.classid) LEFT JOIN ctnclass AS c ON a.nclassid=c.nclassid) on d.articleid=a.articleid;


7.4.4 显示文章表中的全部, 调用类别表中的栏目

 程序代码
select a.*, b.*, c.* from (ctarticle a left join ctclass b on a.classid=b.classid) left join ctnclass c on a.nclassid=c.nclassid

//作用, 有时在文章表中包含了在个别类别表中没有的数据, 用这个语法可以读出文章表的全部数据
//a 为 文章表, b 为主类别, c 为子类别

7.4.3 同上例, 选择追加数据时加上空格

 程序代码
Insert INTO cttag(articleid,classid,nclassid,tag)
Select a.articleid,a.classid,a.nclassid,d.class+' '+c.nclass
FROM (ctarticle AS a left join (ctnclass c left join ctclass d on c.classid=d.classid) on a.classid=c.classid and a.nclassid=c.nclassid) LEFT JOIN cttag AS b ON a.articleid = b.articleid where a.classid=4 and a.nclassid=154;


7.4.2 连接N个表, 并追加数据到其中一个表, N=4

 程序代码
Insert INTO cttag(articleid,classid,nclassid,tag)
Select a.articleid,a.classid,a.nclassid,d.class+c.nclass
FROM (ctarticle AS a left join (ctnclass c left join ctclass d on c.classid=d.classid) on a.classid=c.classid and a.nclassid=c.nclassid) LEFT JOIN cttag AS b ON a.articleid = b.articleid where a.classid=1 and a.nclassid=1;

//解读
插入到 表2(栏1,栏2,栏3,栏4)
选择 别名a.栏1, 别名a.栏2, 别名a.栏3, 别名d.栏4 加上 别名c.栏5
从 (表1 别名a 左连接 (表3 别名c 左连接 表4 别名d 在 别名c.栏2 等于 别名d.栏2) 在 别名a.栏2 等于 别名c.栏2 和 别名a.栏3=别名c.栏3) 左连接 表2 别名b 在 别名a.栏1 等于 别名b.栏1 在那里 别名a.栏2=1 和 别名a.栏3=1

7.4.1 连接两个表, 并追加数据到其中一个表

 程序代码
Insert INTO cttag(articleid,classid,nclassid)
Select a.articleid,a.classid,a.nclassid
FROM ctarticle AS a LEFT JOIN cttag AS b ON a.articleid = b.articleid where a.classid=1 and a.nclassid=1;

//解读
插入到 表2(栏1,栏2,栏3)
选择 别名a.栏1, 别名a.栏2, 别名a.栏3
从 表1 别名a 左连接 表2 别名b 在 别名a.栏1 等于 别名b.栏1 在那里 别名a.栏4=1 和 别名a.栏5=1

7.4. 左连接

7.3.1 同步两表的数据

 程序代码
Update ctarticle a INNER JOIN cttag b ON a.articleid = b.articleid SET b.classid=a.classid, b.nclassid=a.nclassid;

//解读
更新 表1 别名a 联接 表2 别名2 在 别名a.栏1 等于 别名b.栏1 设置 别名b.栏2 更新为 别名a.栏2, 别名b.栏3 更新为 别名a.栏3

7.3 右外连接

 程序代码
select a.*, b.* from bunclass a right join ctclass b on a.classid=b.classid where a.nclassid=20

查询别名 a,b 表, 只匹配 b 表中的内容.

7.2.3 添加数据到连接表之一

 程序代码
Insert INTO cttag ( tag, articleid ) Select top 1 b.tag, a.articleid FROM ctarticle AS a left JOIN cttag AS b ON a.articleid = b.articleid Where a.articleid order by a.articleid desc;


7.2.2 变通中的用法二

 程序代码
Insert INTO bureply
Select b.*, a.classid, a.nclassid
FROM article AS a INNER JOIN reply AS b ON a.articleid = b.articleid
Where classid=50;


7.2.1 实际应用中的变通

 程序代码
Insert INTO butag ( tag, articleid, classid, nclassid)
Select b.tag, a.articleid, a.classid, a.nclassid
FROM article AS a INNER JOIN tag AS b ON a.articleid = b.articleid
Where classid=24;


7.2 添加数据到其他表

 程序代码
Insert INTO butag ( tag, articleid )
Select b.tag, a.articleid
FROM article AS a INNER JOIN tag AS b ON a.articleid = b.articleid
Where a.articleid<>False;

//解读
添加到 接收表(列1,列2)
选择 别名b.列1, 别名a.列2
从 表1 表名a 联接 表2 表名b 在 别名a.列c 等于 别名b.列c
在哪里 别名a.列c 不等于 没有

7.1.1 实际应用中的变通

 程序代码
Select b.tag, a.articleid, a.classid, a.nclassid
FROM article AS a INNER JOIN tag AS b ON a.articleid = b.articleid
Where a.classid=24;


7.1 查询

 程序代码
Select b.tag, a.articleid
FROM article AS a INNER JOIN tag AS b ON a.articleid = b.articleid
Where a.articleid<>False;

//解读
选择 别名b.列, 别名a.列
从 表1 别名a 联接 表2 别名b 在 别名a.列c = 别名b.列c
在哪里 别名a.列c 不等于 没有
注: as 不是必要

7. 外连接——交叉查询

posted @ 2009-07-26 16:12 Robert Su 阅读(236) | 评论 (0)编辑 收藏

仅列出标题
共11页: 上一页 1 2 3 4 5 6 7 8 9 下一页 Last 

posts - 103, comments - 104, trackbacks - 0, articles - 5

Copyright © Robert Su