在redhat linux9.0中使用adsl并使ppp连接保持激活状态

前提:已经正确安装网卡(我的dlink网卡被自动识别为:eth0 (VIA VT86c100A Rhine-11 PCI),可以正常使用).

1)主菜单->系统设置->网络

2)在出现的窗口中点击"新建"

3)选择xDSL连接

4)填写ADSL的服务商名称,ADSL帐号(包括用户名和密码)

5)在网络配置中点编辑

6)勾选"当计算机启动时激活该设备"

7)重启动系统

改写登录模块的argouml建模

这不是UML的真正应用,我对UML略知一二,下面我只是借用其中的一些东西表示自己的思路而已。我好像已经习惯于在画图的过程中理清自己的思路了。

1、功能:

1)、登录;2)注销



2、登录:

1)通过登录对话框登录



2)通过cookie自动登录

3)注销

3、类图

1)、登录实现类(包括手动登录和自动登录),里面的excute()方法活动图:

2)、注销实现类,里面的excute()方法活动图:

3)、显示帖子内容的实现类,其中会用到登录,里面的excute()方法活动图:

4、代码改动:

1)jsp页面:

(1)、在登录页面添加一个记住密码的检查框;

(2)、游客用户在添加内容的页面、你的目标、添加新目标、记下学习日记、帐号管理的链接失效,综合RSS订阅中涉及单独用户的链接失效(但是不去掉相应的链接文字,表示注册用户可以有这些功能,游客没有)

2)java文件修改:

(1)、除了LoginAction.java、 LogoutAction.java作相应的修改外,其它的java文件的修改要注意:

<1>、游客登录在UserDB.java的UserDB:

checkUser(in ifGuest : int,in aUserName : String,in aPsd : String) : UserInfo中构造一个UserInfo;

<2>、在UserDB.java中添加一个在cookie上检查用户的方法:

checkUser(in aUserName : String,in aPsd : String) : UserInfo

<3>、游客用户不能进入的action在相应的文件中加上验证;

5、argoUML0.18.1模型:

1)、第一版:附件:loginV0.1.zip,包括含反向工程所需要的classpath内容的argo.user.properties文件,314827 bytes

2)、第二版:附件:loginV0.2.zargo,335268 bytes

在Excel中计算渠道桩号间的距离的方法及Excel函数教程

我们渠道的段是用桩号表示的,如:1+200~2+333,怎么在Excel中能比较方便的计算两个桩号之间的距离呢?

单位一位精通Excel的同事找到以下较好的方法:

1、将桩号列另外复制到另一列;

2、在另一列中把+替换掉;

3、这样前面的桩号变成了:1200~2333;

4、那么两个桩号之间的距离为:=RIGHT(D15,4)-LEFT(D15,4)

上面函数的用法如下:


(二)取出字符串中的部分字符

Excel函数应用回顾

● Excel函数应用之逻辑函数

● Excel函数应用之数学和三角函数

● Excel函数应用之函数简介

 

您可以使用Mid、Left、Right等函数从长字符串内获取一部分字符。具体语法格式为

LEFT函数:LEFT(text,num_chars)其中Text是包含要提取字符的文本串。Num_chars指定要由 LEFT 所提取的字符数。

MID函数:MID(text,start_num,num_chars)其中Text是包含要提取字符的文本串。Start_num是文本中要提取的第一个字符的位置。

RIGHT函数:RIGHT(text,num_chars)其中Text是包含要提取字符的文本串。Num_chars指定希望 RIGHT 提取的字符数。

比如,从字符串"This is an apple."分别取出字符"This"、"apple"、"is"的具体函数写法为。

LEFT("This is an apple",4)=This

RIGHT("This is an apple",5)=apple

MID("This is an apple",6,2)=is

关于Excel函数的使用的教程:见http://www0.ccidnet.com/school/zhuan/excelfunction.htm的Excel函数教程

目录如下:


一、 Excel函数应用之函数简介

二、 Excel函数应用之数学和三角函数 

三、 Excel函数应用之逻辑函数 

四、 Excel函数应用之文本/日期/时间函数

五、 Excel函数应用之查询与引用函数

六、 Excel函数应用之统计函数

七、 Excel函数应用之工程函数

八、 Excel函数应用之财务函数

九、 Excel函数应用之信息函数

十 Excel函数应用之数据库函数

 

对待孩子的错误行为有时应该可以适当使用体罚

  今天,孩子一定躺到饭桌上看电视,轻言细语的劝说她不听。过了一会儿,我严厉的让她下来,她不听。最后,我伸出手,稍微用力的打了一下她的屁股,她一下哇的哭着下来了。等了一会儿,她不哭了。我问她,还躺在饭桌上不,她摇头说不了。看样子,她好像已经认识到了自己的行为不对了。

  所以,我认为,在关键时刻适当的体罚是对孩子的教育和成长有益的。任何事情都不要绝对化。

  就像寺庙里的菩萨,有和言悦色的,也有金刚怒目的。都只有一个目的,让人学好。

孩子睡眠不足,看在眼里,急在心里

  这段时间一直在瞎忙,我发现孩子的状态不佳。

  变小气了,遇到一点小事就撇嘴要哭鼻子;变固执了,不让她做的事她偏要做,例如:不许她玩剪刀,她偏要玩,还对大人说:我偏要。。。。

  睡眠没有规律,中午几乎不睡午觉,下午许多时间4:00过就要睡觉。晚上好多时间11点也不睡,早上又天刚见亮就醒了,6:00左右。她这段时间人很黄瘦、估计跟睡眠问题关系很大,包括她的情绪的变化可能也有关。

  要注意调整孩子的睡眠,让她有充足的睡眠时间和有规律的作息。最主要是要有充足的睡眠时间,我原来读过一篇教育孩子的书,里面一个儿童教育专家特别强调孩子要有充足的睡眠时间。

  搜到一篇讲睡眠时间的帖子如下:(转自:http://health.sohu.com/40/17/harticle15451740.shtml


正常睡眠时间是多长时间

  转自 : 37℃医学网

为了体力与劳力的恢复以及促进儿童身心的生长发育必须保证睡眠时间。正常人的睡眠时间应随年龄需要加以区别,新生儿至少一天要睡眠20小时,婴儿需要14~15小时,学前儿童需要12小时,小学生10小时,中学生9小时,大学生与成人一样需要8小时,老年人因新陈代谢减慢,睡眠需要6~7小时。

 

  可知,3~4岁的孩子要睡12个小时才够。我们孩子白天睡2个小时,晚上11点~次日6点,一共才睡了9个小时,远远不足。一定要解决这个问题。

一天都要看几次adsense报告,心理有点不正常了

  自从有了几个月所产生的第一美元广告收入以来,我这几天每天都要查看1次以上的adsense报告,看看有人点了广告没有。说明我的内心对这个网站能够产生收益还是有一种潜意识的渴望的。但是心理有点不正常。实际上用不着去看也知道大概是怎么一回事。因为据通常的广告点击率不超过1%计算,我也应该知道大概是几次点击。

  还是把精力放在自己的正事上吧,这个网站按现在的趋势来看,根本不会有几个人来光顾的。充其量只是我个人的“学习日记”罢了。也许,我是一个内心不愿孤独的人,真的希望能在学习这个问题上找到朋友。

  如果照上面的趋势,我估计就得了一种可以叫作“adsense报告查看强迫症”的心理疾病了。

  另外,今天我查看adsense报告的时候,发现今天点击率异常的偏高,有点怀疑是不是哪位朋友在帮我点击。如果是这样的话,首先,我对这位朋友的好心表示谢意;然后,我最想对朋友们说的是:如果你不是真的对google adsense所展示的广告感兴趣的话,请不要点击广告,原因如下:1、欺骗了广告发布者;2、google具有惩罚恶意点击的机制,我也不了解他的具体算法,但是,如果被google发现大量明显的恶意点击的话,我的google adsense帐号肯定就被封了,也许,学习日记几个月来辛辛苦苦集攒起来的一美元也没了:(;3、浪费你宝贵的时间:);

  如果,朋友们真的想帮助学习日记,那么,请你分析一下,帮忙出出主意,解决学习日记没有人参与的问题,这就是最大的帮助了。谢谢。

  据cnzz的统计,学习日记的page view大部分都是其虚高的google pr值(5)带来的搜索流量,真的回头客和固定用户极少,平均一个IP查看的页面不超过2页。

  我不知道问题的主要症结所在,说页面的设计太简陋,可是许多其他网站的页面同样简陋;说功能不行,也有许多其他网站功能也差不多。我原来曾经见过一个做自考联络网站的朋友,他的网站简单得不能再简单(好像就是一个自考课目的交流联系留言板一样的东西),页面的设计跟我们相比也差不多,可其人气却很旺;还有,就拿大名鼎鼎的delphibbs.com来说,他的页面也很简单,功能也很单纯,他的页面导航功能我觉得还没有我们的方便。可是人气之旺是有目共睹的。

  为了解决自己的“adsense报告查看强迫症”,我决定7月份不去查看adsense报告了。自己在心里估计一下大概有多少次点击,可以收入多少美分。然后8月1日去查看一下,看看是不是如我所猜,这不也是一种有趣的游戏吗?

  另外,cnzz的统计也不要看得太多,一周看一次,分析一下本站的热门帖子也有一点意义。

  总之一句话,把精力放在自己的本职工作上;把业余时间多放在学习相关技术上,不要浪费在查看“adsense报告”和“cnzz的统计”上。

关于tomcat的部署一个让我郁闷了一天的问题

在编写JSP程序的时候,将jsp+servlet发布的服务器选用tomcat,遇到很多问题,网上关于tomcat的文章找了很久才找到一篇讲tomcat动态发布的,觉得不错,贴出来大家看看.

Tomcat4中的部署方式:

1 部署Web应用程序的方法:

1.1 WAR方式

将应用程序包含的jsp、servlet等文件包装成一个单个的、自包含的WAR文件。WAR文件是一个JAR文件,其中包含了特殊的目录和位于他的/Web-INF目录中的web.xml文件。其结构举例如下:

hello.jsp

META-INF/

           MANIFEST.MF

Web-INF/

           web.xml

           classes/

                    example/helloWorld.class

           lib/

                    xxx.jar

创建WAR文件的最容易的方法就是,首先在开发环境中创建相应于WAR结构的目录结构。然后,创建WAR所要做的工作就是在WAR的根目录中执行下面的命令。注意,其中排除了.java源文件,它是WAR文件中不必要的内容,并且在试图部署WAR时可能会带来问题:

Jar ?cvf hello.war META-INF/MANIFEST.MF Web-INF/classes/example/*.class Web-INF/web.xml *.jsp

将WAR文件拷贝到$CATALINA_HOME/webapps目录中。当Tomcat启动时,它

就会自动对WAR文件进行解包,并且创建这个应用程序,应用程序的名字(和上下文路径Context Path)为WAR文件的名称。在这里不需要对系统或者服务器路径做任何的改动。

注意:如果在Tomcat已经启动好以后,放置WAR文件到webapps目录,则Tomcat无法动态

部署这个Web应用程序,需要重启Tomcat。 如果虚拟主机的liveDeploy属性为true就不用了。

1.2扩展目录方式

此种部署方式的优点是,当对jsp进行了修改时不必重启Tomcat,并且不必在每次修改时都要去重新建立归档文件,而且在准备好进行软件分发时也很容易地创建WAR文件。

    在server.xml文件中加入如下代码,该文件位于$CATALINA_HOME/conf目录中。

    <Context path=”/hello” docBase=”<path to root of war>” debug=”0”

              reloadable="true" crossContext="true" />

    <path to root of war>是一个按照使用的操作系统的目录惯例的绝对路径,并且不必是位于Tomcat的目录树下面。作者把这个WAR部署到Windows中,使用的是docBase=”d: lymacy”,而在Unix中,所使用的docBase=”/export/home/macy”。

注意,Tomcat要求对Windows的路径使用单个反斜杠。

______________________________________________________________________________________________

答6:

Tomcat5中的部署方式:

1 应用程序部署器(Deployer)

程序员朋友不要以为这是什么全新的东西,其实以前的版本就已经有了,只不过在Tomcat4中没有提出这个概念,且它的功能被分散在各个组件中,给人的感觉是比较支离破碎的。于是乎,在Tomcat5中对其进行了包装和增强,提出了Deployer这个逻辑概念,用于集中表示应用程序部署和发布功能。Tomcat5对其的主要改进就是进行了一些优化,增强了动态部署的功能,减少了重启Tomcat的次数,增强了服务器的健壮性和可靠性。

Deployer提供的主要功能就是静态(在tomcat启动之前)或者动态(在Tomcat运行以后)进行Web应用程序的部署和删除,在某些情况下Deployer需要和Manager管理工具联合使用。

1.1 Context descriptors

这个也不是新东西了,Tomcat4中的Manager和Admin管理工具其实就是利用它来部署的。在Tomcat5中提出了Context descriptor这个概念,且为其配置了一个专有目录,而不像Tomcat4那样大杂烩一般地放置在$appBase目录下。既然了有了名分,当然要为其单独配置一个目录才能显其身份:)

Context descriptor是一个只包含Context元素的xml格式的部署文件,其中Context元素与server.xml中的Context元素配置相同。对于一个给定的主机,Context descriptor放置在$CATALINA_HOME/conf/[enginename]/[hostname]/目录下面。Tomcat5默认安装时,在$CATALINA_HOMEconfCatalinalocalhost目录中有admin.xml和manager.xml,是两个管理工具的部署描述符文件。而这两个文件在Tomcat4中是放置在$CATALINA_HOME/webapps目录下面的。呵呵。。。果然是换汤不换药啊:)

注意事项:context descriptor的文件名可以与Web应用程序名无关,但是Tomcat在部署这个应用程序的时候所创建的程序运行上下文(Context)的名称是与Web应用程序名称匹配的。

   

1.2 静态部署

静态部署是指在Tomcat运行之前就把相关的Web应用程序放置到合适的目录,在Tomcat启动的时候自动来部署这些应用程序。

如果"deployOnStartup"属性值为true,那么在Tomcat启动时,在$appBase目录下的web应用程序将被自动部署。部署的过程如下:

? Context元素声明的Web应用程序将被首先部署,这包括server.xml和context descriptor文件中的Context元素所指的应用程序;

? 部署扩展目录形式的Web应用程序;

? 部署WAR形式的Web应用程序;

Tomcat5对于静态方式的部署的增强主要就是:

1、对于context descriptor方式的应用程序的部署。

2、如果扩展目录方式的应用程序对应有一个WAR文件,且WAR是更新过的,扩展目录将被自动删除,Web应用程序将被从WAR文件中重新部署。而在Tomcat4中,即使WAR文件已更新也无法被重新部署,仍然会使用旧的扩展目录方式的Web应用程序,除非你自己手动删除目录,记得还要重启Tomcat哦。这么麻烦?(#@($)#*$),看来还是Tomcat5好啊:)

1.3 动态部署

动态部署是指在Tomcat已经运行以后在不重启服务器的情况下部署应用程序的方式。

如果虚拟主机的"autoDeploy"属性值为true,则主机会在需要的时候试图去部署和更新应用程序。这是由虚拟主机在后台运行的一个负责自动加载的处理线程来完成的,它的工作流程如下:

1、部署新放入$appBase目录的War方式的应用程序。

2、部署新放入$appBase目录的扩展目录方式的应用程序。

3、如果一个扩展目录方式的应用程序对应的War文件更新了,则删除此目录,从War文件中重新解开并部署。如果”unpackWARs”属性值为false,则不解开,从War文件中直接运行。(记住:不用自己删除扩展目录,也不用重启服务器)

4、如果应用程序的/WEB-INF/web.xml文件被改变,则重新部署这个应用。

5、如果应用程序对应的Context元素配置发生了改变,则重新部署这个应用。这包括server.xml或者上下文描述符文件中的Context元素。

6、如果$CATALINA_HOME/conf/[enginename]/[hostname]/目录下增加了上下文描述符文件,则重新部署这个应用。

看来Tomcat5在动态部署上花费了不少功夫,其中的亮点主要就是如果我们修改了web.xml、server.xml配置文件,增加了上下文描述符文件,动态更新了War文件时都可以实现应用程序的自动部署和更新,而不用重新启动Tomcat服务器,在Tomcat4中都是必须重新启动服务器的,这是一个非常喜人的变化。毕竟在对服务器的健壮性和可靠性要求越来越高的今天,重启服务器都是一件令我们非常头疼的一件事情。以后终于可以挺直腰杆对客户说“这回坚决不用重启服务器!”嘿嘿。。。幸福啊!

1.4 用Client Deployer工具包部署

    这个才是Tomcat5中名副其实的创新,它是一个全新的部署器。

client deployer是一个集验证、编译、部署功能与一体的工具包。它使用Ant来实现应用程序的自动化验证和编译,使用Manager管理工具来实现应用程序的自动化部署。

这个工具包包含:Catalina Ant工具、Jasper编译器(用于将jsp编译为servlet)、应用程序验证工具(validator task)。默认的验证工具的实现类是org.apache.catalina.ant.ValidatorTask,它只允许以扩展目录的文件路径作为唯一的参数。

此部署工具包使用一个事先写好的Ant脚本,包含如下一些目标(target):

? compile (默认):用于验证和编译Web应用程序。它可以在不启动Tomcat的情况下被单独使用。由于使用的是新的Jasper编译器的缘故,编译后的应用程序将只能在Tomcat 5.X版本上使用。需要提醒的是,不光是jsp文件被编译为servlet, 应用程序的/WEB-INF/classes目录下的Java源文件也将被同时编译为class文件。

? deploy:将Web应用程序部署到Tomcat服务器中。

? undeploy:从服务器中解除部署已经部署的某个应用程序。

? start:启动Web应用程序

? reload:重新加载Web应用程序

? stop:停止Web应用程序

以下是Ant脚本中的一些重要属性:

? build:编译以后的文件默认放置在${build}/webapp${path}。编译目标执行完以后,生成了应用程序的War —— ${build}/webapp${path}.war.

? webapp:放置需要被验证和编译的Web应用程序(扩展目录方式)的文件路径。默认值为”myapp”。

? path:Web应用程序部署后对应的运行上下文的路径默认是”/myapp“。

? url:放置Manager管理工具的绝对路径,它被部署工具包用来部署和解除部署应用程序。默认情况下,部署器将试图使用http://localhost:8080/manager访问本机的Manager管理工具。

? username:可以使用Manager管理工具的超级用户的用户名。

? Password:超级用户的密码。

至此,Tomcat5中神秘的部署器就讲完了,大家是不是已经对它发生了浓厚的兴趣呢?那就动手去试一下吧!尽管朝$appBase目录下扔你心爱的程序吧,Tomcat5会马上让他们欢快地跑起来。速度真的比Tomcat4快多了,一种冲浪的感觉:)

 

 

 

本文章引用通告地址(TrackBack Ping URL)为:

http://blog.zol.com.cn/portal/personShowArticle.do?articleId= 18829