2007年10月14日星期日

无标题

这是戒烟以来的第三个早上,也是周一。今天感觉没有前两天那么的强烈了。
回顾一下昨天,肺里面还是感觉有一股烟在往上冒,很想吸,不经意间就想
是不是应该叼只烟了,不过很不错,还是忍住了。挺不容易的~~戒烟这两天
身上没有表现出什么异样,说实话感觉身体反而舒服了一些,但是就是我饥渴的肺
有点受不了,心理有点烦躁。不过还好,这已经到了第三天,我想过了这周应该
就不会再想吸烟了。这次我的戒烟一定可以成功!

2007年10月13日星期六

第一天的戒烟


这次下定了决心戒烟!

者的很不舒服,从昨天晚上11:30的最后一只烟到现在已经快24个小时了,决定周五戒烟也是为了能够在周末度过最难熬的两天~需要毅力!真的!好想拿起一支烟美美的吸上一口,但是那样我真的怕自己以后在遇到别的困难的时候太容易屈服。我不怕死的比较早,60就ok。但是我怕在我60岁之前得不到我想要的结果!所以需要忍耐,需要克制自己。我想这样我才能比别人强,才能做一个成功的人。这也就是我的老爸为什么不能成功的原因!干了一天的活,睡了一小时的觉。肺里面有强烈的饥渴感,那些从来没有吸过烟的人,从来没有勇气借过烟的人是不能够明白的~!我要把我戒烟的全国程纪录下来...
不能停,即使不停仍然很想吸烟~也许做是一种摆脱戒烟痛苦的好方法...想到这,突然疯狂的想做!!!

2007年8月11日星期六

再来一篇艰苦奋斗的文章

精通struts-基于mvc的java.web设计与开发
2007-2-3 晚
看书总是要作笔记的,但是现在常年在外短短的几个月我做的笔记又垒了厚厚的一摞子,每次搬家实在是一种折磨,有种食之无肉,弃之可惜的感觉,今天彻底下定决心,开始电子笔记,可能要失去笔尖在纸上飞驰的那种快意感。但相比而言还是比较值得改革的,想起一句话,中国人民总是认为改革就是好的:)

本书名《精通struts-基于mvc的java.web设计与开发》
作者:孙卫琴
1.共享数据的范围:
Page:用户请求访问的当前jsp网页
Request:用户请求访问的当前web组件以及和当前web组件共享同一个用户请求的其它web组件
Session:共享数据存在于整个http会话的生存周期
Application:整个web应用的生命周期

2.JavaBean在jsp中的语法:
例:假设有一个JavaBean的类名为CounterBean,它有一个Count的属性

注:myBean为自命名 scope里面的属性可以为page/request/session/application

如果将JavaBean的内容输出网页:


如果要给莫个JavaBean的属性赋值:

3.视图:
Struts框架中的ActionForm Bean划分到视图模块中,Struts利用ActionForm Bean来进行视图和控制器之间表单数据的传递。
流程:Struts框架把用户输入的表单数据保存在ActionForm Bean,然后传给控制器,控制器可对表单数据进行修改,jsp文件使用Struts标签读取修改后的Action Bean的信息,并重新设置HTML表单。

4.控制器
控制器由ActionServlet和Action类来实现
ActionServlet 继承了java.servlet.http.httpservlet类,它在Struts中扮演中央控制器的角色;它的主要任务:接收Http的请求信息,根据配置文件struts-config.xml的配置信息把请求转发给适当的Action对象。
ActionServlet的工作流程:ActionServlet接收到用户的一个请求后,把请求发送到一个Action的实例,如果这个实例不存在则控制器会自动创建一个Action,然后调用Action中的execute()这个方法,execute()方法返回一个ActionForward对象,它封装了把用户请求在转发给其它web组件的信息。注:用户定义自己的Action类,即Action基类的子类时,必须覆盖execute()方法,应为在基类中execute()返回null。

ActionServlet通过struts-config.xml来决定把用户请求发送到那个Action中

Struts的工作流程:
Struts接收一个用户请求时的工作流程如下
1. 检索和用户匹配的ActionMapping实例,如果不存在则返回用户请求路径无效的信息
2. 如果ActionForm实例不存在,就创建一个ActionForm对象,把客户提交的表单保存到这个对象里
3. 根据配置信息确定是否需要表单验证,如果需要,就调用ActionForm中的validate()
4. 如果ActionForm表单的返回值为null,或者返回一个不包含ActionMessage的ActionError对象,表示表单验证成功
5. ActionServlet根据ActionMapping的实例包含的映射信息将请求转发到Action,如果相应的Action实例不存在就创建这个实例,然后调用execute()
6. Action的execute()返回一个ActionForward对象,ActionServlet在把客户请求转发给ActionForward对象指向的jsp组件
7. ActionForward对象指向的jsp组件生成动态网页返回给用户
以上流程4如果ActionForm验证失败,则ActionServlet直接把请求转发给用户提交的jsp组件,此情况下不再创建Action对象,也不再有execute()

贴一篇在北京山区艰苦奋斗时的文章

做了两天的购物车功能模块了,可是还找不到感觉,其中用到的jsp,hibernate,struts还是有种混晕的感觉,基础不扎实啊!!!现在已经是晚上了,天晓得怎么回事又感冒起来,这个叫难受啊,不过妞妞说明天还不好就来山区这边看我,感动ing
借同学《课堂笔记》总是没能抽出时间来看,趁着这两天作项目,拿出来巩固一下:
一直没有搞懂的第一个问题:
在文件目录下面查找以.java结尾的文件并打印出来,实现代码如下:


import java.io.File;
import java.io.FileFilter;

public class printJavaFiles{
public static void main(String [] args){
File f = new File(args[0]);
print(f);
}

public static void print(File f){
File[] files = f.listFiles(new FileFilter(){
public boolean accept(File pathname)
{
if(pathname.isDirectory()) return true;
String filename = pathname.getName();
int index=filename.indexOf(".java");
if(index==-1) return false;
else return true;
}
});

for(int i=0;i if(files[i].isFile())
{
System.out.println(files[i].getAbsolutePath());
}
else
{
print(files[i]);
}
}
}
}

2007年8月4日星期六

对于freemaker合理的理解-------但愿是正确的

对于freemaker 在一个html元素标签中name的属性可以是一个entity.columename 传到struts中的时候 就要创建这个实体 然后跳到freemaker的另一个页面的时候就会得到这个实体的值域


也就是在项目中,我在一个页面的时候这里面的所有值到下个页面的时候都是跟上一个struts没有关系了,所以不用考虑这个页面名字的命名问题。

即一个struts创建一个对象,这个到这个页面,这个页面通过这个对象的值域来显示出相应的值,当这个页面在转入其它页面的时候这个对象是不存在的,如果直接跳转到其他页面那么其他页面将没有任何值,但是跳转到的这个页面每一个元素的属性名(name)还是需要用entity.columename命名,然后跳转到另一个struts的时候,struts就需要创建相应的entity来得到这个名字的所对应的值

2007年8月2日星期四

对于struts2.0的渐渐理解

总是感觉在freemaker里面封装了一套整个的页面代码,用起来怪怪的。
随着项目的进程,对struts有了一定的了解。最郁闷的要数怎么样在一个action里面拿到一个request的值。
现在明白,一个页面的value是由name="object.colume"来的到的,而在action里面只要给这个value="(set)object.colume.value" 拿到,即创建这个colume的一个字符串类型,且用get方法即可以取到~~~~~~~~~郁闷了好几天,终于明白了。
etc:
<#@s hidden name="entityobj.objID">(感觉相当于一个set)
那么它传给action的就会有一个value的值,在action中:
entityobj.getobjID();就会得到这个页面传过来的值。

2007年7月31日星期二

杂!!!!!

我的晕菜~~刚刚写的竟然没有成功发布!!!!!!!
并且没有存档!!!!!!
想想要忙到8月底,主机管理系统的代码~
遇到问题描述:
实现一个下拉列表且关系到下一个文本输入框的取值内容且要在鼠标放入后激发一个事件——生成一棵树且此树是checkbox的多选并显示在这个只读的文本框内。
实现二级联动菜单:
由webwork+javascript实现 设计思路大致是 由webwork将所有一级菜单和二级菜单的列表提交到jsp页面,将一级菜单列表直接显示到下拉列表框中,而二级列表则封装到一javascript数组中,根据一级列表筐change事件取出数组中相应的数据显示到二级列表筐中,代码如下:

25岁的生体已经过去,放几张去年的生日照片,怀念一下