发表于: java/j2ee | 作者: | 日期: 2009/8/10 03:08
标签: ,

null是java的保留字,用来表示一个空引用,比如一个不指向任何对象的引用。null的底层实现其实是二进制的0,但对java语言而言,null的意义远比数字0意义深远。

执行如下的代码:

x.doSomething();

如果x是null的话,我们就会得到如下异常:java.lang.NullPointerException。

解决的方式如下:

if ( x != null )
{
x.doSomething();
}


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

来源:http://mindprod.com/jgloss/null.html
一篇不错的讲解null的文章:http://lavasoft.blog.51cto.com/62575/79243

http://stackoverflow.com/questions/271526/how-to-avoid-null-statements-in-java

评论关闭
发表于: DB/ES | 作者: | 日期: 2009/8/09 03:08
标签: ,

lpad函数从左边对字符串使用指定的字符进行填充。从其字面意思也可以理解,l是left的简写,pad是填充的意思,所以lpad就是从左边填充的意思。

语法格式如下:
lpad( string, padded_length, [ pad_string ] )
string
准备被填充的字符串;
padded_length
填充之后的字符串长度,也就是该函数返回的字符串长度,如果这个数量比原字符串的长度要短,lpad函数将会把字符串截取成从左到右的n个字符;
pad_string
填充字符串,是个可选参数,这个字符串是要粘贴到string的左边,如果这个参数未写,lpad函数将会在string的左边粘贴空格。

示例1:
SQL> select lpad(‘abcde’,10,’x’) from dual;

LPAD(‘ABCDE’,10,’X’)
——————–
xxxxxabcde

示例2:
SQL> select lpad(‘abcde’,10,’oq’) from dual;

LPAD(‘ABCDE’,10,’OQ’)
———————
oqoqoabcde

示例3:
SQL> select lpad(‘abcde’,2) from dual;

LPAD(‘ABCDE’,2)
—————
ab


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

与lpad函数对应的是rpad函数:
rpad函数从右边对字符串使用指定的字符进行填充,语法格式与lpad格式相同:
rpad(string,padded_length,[pad_string])
string
被填充的字符串
padded_length
字符的长度,是返回的字符串的数量,如果这个数量比原字符串的长度要短,rpad函数将会把字符串截取成从左到右的n个字符;
pad_string
是个可选参数,这个字符串是要粘贴到string的右边,如果这个参数未写,lpad函数将会在string的右边粘贴空格。

例如:
rpad(‘tech’, 7); 将返回’ tech’
rpad(‘tech’, 2); 将返回’te’
rpad(‘tech’, 8, ‘0’); 将返回’tech0000′
rpad(‘tech on the net’, 15, ‘z’); 将返回 ‘tech on the net’
rpad(‘tech on the net’, 16, ‘z’); 将返回 ‘tech on the netz’

评论关闭
发表于: lnmp | 作者: | 日期: 2009/8/02 05:08

1、
首先上传表情图片到相应的表情目录中(images/smilies/表情目录/)。表情图片文件名只允许数字、26 个英文字母、下划线、半角空格及 <>-.&[]() 等符号,文件名长度不能超过 30 字节,否则将会无法识别。

2、
进入后台管理界面,选择帖子»表情管理,在新增一行填入显示顺序(2)、表情分类(兔斯基),点击提交按钮。

import_smiles_1.png
3、
在新添加的表情分类一行有“详细”,点击该链接,进入新添加表情分类的详细设置页面。点击“添加”按钮,进入表情添加页面:

import_smiles_2.png

4、
在表情添加页面,点击“搜索”按钮,系统会将之前上传的所有自定义表情显示出来。在自定义表情列表的底部,需要批量设置表情代码

import_smiles_3.png

批量设置完表情代码之后,点击“提交”按钮,于是,表情列表更新完毕。

5、
返回表情管理主页面,表情数量如果显示正确就说明表情包安装成功。

import_smiles_4.png

6、
然后通过工具»更新缓存后就可以从前台看到我们刚刚添加的自定义表情了。

评论关闭
发表于: sitebuild | 作者: | 日期: 2009/7/24 01:07

自己做过三个社区的管理员。

第一个接手的时候已经是一个万人网游社区了,虽然我知道那同时在线的人数有些水分,确切说应该是半个小时内同时在线的人数(一般社区默认的都是10分钟吧),但半个小时同时在线18000多人,应该还是比较强悍的吧?

第二个做的是房产社区,或者说是业主社区的管理员。接手的时候最高5人同时在线,5个月后走的时候最高在线人数50多不到60人。我不能说我是从零做起的,因为在此之前,已经有人负责做这个社区做了两三个月了。

第三个社区是就业网站附属的社区,真真正正的从零做起,真真正正的孤军奋战。4个月,实际注册会员近500人,最高在线人数300人左右。 More …

评论关闭
发表于: sitebuild | 作者: | 日期: 2009/7/23 12:07

博客最早是以个人日记的形式出现在互联网上,它使得个人可以简单地在线发布日志和个人的经验。但是随着不断地发展,一些bloggers开始专门为读者提供某一方面的服务和信息,逐渐的,博客和传统的网站之间的界限开始变得模糊。 More …

评论关闭
发表于: sitebuild | 作者: | 日期: 2009/7/23 08:07

无论是网络公司,还是一般公司,想在网络上做好生意,都必须照顾好三个部份。 More …

评论关闭
发表于: sitebuild | 作者: | 日期: 2009/7/23 08:07
标签:

本文讲述了四个网络推广的方法,可以增加用户博客的访问量,以下是全文。 More …

评论关闭
发表于: sitebuild | 作者: | 日期: 2009/7/23 08:07

nginx(发音同 engine x)是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个 BSD-like 协议下发行。由俄罗斯的程序设计师Igor Sysoev所开发,最初供俄国大型的入口网站及搜寻引擎Rambler(俄文:Рамблер)使用。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页伺服器中表现较好。目前中国大陆使用nginx网站用户有:新浪、网易、腾讯,另外知名的微网志Plurk也使用nginx。 More …

评论关闭
发表于: sitebuild | 作者: | 日期: 2009/7/23 08:07

在电子商务中,用户的评论已被证实是提升销售的有效手段。但它绝不仅仅是将评论直接放上网页这么简单。当你开始收到大量评论时,你需要进行整理,以对顾客有用的方式将大量评论呈现出来。

美国最大的电子商务网站亚马逊就因为成功地为它的客户处理了评论的问题,增加了27亿美元收入。 More …

评论关闭
发表于: DB/ES | 作者: | 日期: 2009/7/22 11:07
标签:

什么是session
通俗来讲,session 是通信双方从开始通信到通信结束期间的一个上下文(context)。这个上下文是一段位于服务器端的内存:记录了本次连接的客户端机器、通过哪个应用程序、哪个用户在登录等信息[在pl/sql developer中,通过Tools–>Sessions可以查看当前数据库的session]。session 是和connection同时建立的,两者是对同一件事情不同层次的描述。简单讲,connection是物理上的客户机同服务器段的通信链路,session是逻辑上的用户同服务器的通信交互。

oracle中一个用户登录oracle服务器的前提,就是该用户具有oracle的 “create session”权限。oracle允许同一个用户在同一个客户机上建立多个同服务器的连接,这一点从oracle的视图V$session中可以看到[select * from v$session;]。每个session都代表了用户与服务器的一个交互。就像两个国家之间可以同时开展很多谈判,经济的,环境的等等。关闭了有关经济的谈判,不会影响到环境谈判的进行。后台进程PMON会每隔一段时间,就会测试用户连接状况,如果连接已断开,PMON会清理现场,释放相关的资源。

在具体的应用场景中connction 和 session 有很多情况:
1. sqlplus 登录 oracle
这种场景比较容易理解,一个连接对应一个session。

2. 其他客户端工具登录oracle
比如:pl/sql developer 登录oracle。pl/sql developer 可以设置是否每个窗口共用同一个session. 如果想在调试窗口调试存储过程或函数,则必须设置为共享session。如果设置为非共享, 则每次打开一个操作窗口,pl/sql developer 会利用最初输入的帐户和口令建立新的connection 和 session.

3. IIS 用程序登录oracle
这种情况下,其实是IIS在登录oracle。connection 和 session 的建立情况和iis机制相关。(以下是参考了网友的观点,文章来源:http://www.cnblogs.com/)
“对于Oracle来说,安全的Sessions数应该为Sessions = (IIS process number) * (min pool size)。”
IIS进程:在IIS6.0中,采用了新的进程隔离模式来响应用户的请求,在IIS管理器中,可以设置应用程序池的最大进程数。对于新的WEB应用请求,IIS进程管理器会启动多个W3wp.exe进行响应。

4、 其他情况 有待各路英雄补充

orcale的session内存
oracle 的连接分为两种:独占式,共享式。
在独占式连接情况下,session(如游标,排序去,sql区)是在PGA中分配的。
在共享式连接情况下,session的一部分(如UGA)是在中SGA的larg pool中分配的。

oracle session 和process
oracle中每个process 都有对应的session。
process 分为
用户进程在V$session 中可用条件:$session.type = ‘USER’.查询。
后台进程在V$session 中可用条件:$session.type = ‘BACKGROUND’查询。

常见的后台进程:
SMON,PMON,DBWR,LGWR,MMAN,MRP, RFS,RECO,CKPT,ARCH,Dnnn,Snnn,LMON,LMD0,QMNn,TRWR,WMON,LCKnnn,SNPnnn, MMON,DMON,SNP

session 相关的初始化参数:
process:oracle的连接数(sessions)与其参数文件中的进程数(process)相关,它们的关系如下:sessions=(1.1*process+5),我们可以通过修改inia.ora的这个process参数在更改可连接的最大session数。
workarea_size_policy:PGA用手动管理还是自动管, 在AUTO的时候每个session最多能用到5%或100M.

以上内容 来自itpub论坛

其他参考:http://www.cnblogs.com/yanrongpi/archive/2007/12/19/1006447.html

评论关闭