Home

Advertisement

srain网上生活 [entries|archive|friends|userinfo]
wo00421309

[ website | srain's happy life ]
[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

Asp.net中成员变量变空问题 [Jul. 13th, 2007|10:37 am]
1.问题:
我在class中声明了一个 private string oldip; 跟踪中发现该变量被赋值以后。响应click之后重新赋值为空。
解决办法:
用viewstate来解决。具体:ViewState["oldip"] =this.ip.Text;(赋值)
ViewState["oldip"].ToString()(使用)
2.
viewstate只能在本web窗体内使用跨页面用session

3.本质都是用session或者application来共享信息,只不过用基类可以有些封装,方便些比如
class PageBase:Page
{ UserInfo CurrentUser
{ set{ Session[UserSessionName]=value;}
get{ return Session[UserSessonName];}
}
}在这个页面基类之中,可以做一些公用的方法,比如这个CurrentUser信息,可以添加上ssession空的检查,
并导向登陆页面,而不用再每个页面中检查还可添加一些权限控制不过这样就复杂了一些,当然结构就规范一些
linkpost comment

ASP.NET技巧 [Jul. 11th, 2007|01:59 pm]
1.打开新窗口并传递参数
//传送参数:
Response.Write(""); 
//接收参数:
string a = Request.QueryString("id");
string b = Request.QueryString("id1")
2.为按钮添加对话框
Button1.Attributes.Add("onclick","return confirm(’确认?’)");
button.attributes.add("onclick","if(confirm(’are you sure?’))
{return true;}else{return false;}")
3.删除表格选定记录
int intEmpID = (int)MyDataGrid.DataKeys[e.Item.ItemIndex];
string deleteCmd = "DELETE from Employee where emp_id = " + intEmpID.ToString()
4.删除表格记录警告
private void DataGrid_ItemCreated(Object sender,DataGridItemEventArgs e)
{ switch(e.Item.ItemType) 
{  case ListItemType.Item :  
case ListItemType.AlternatingItem :  
case ListItemType.EditItem:   
TableCell myTableCell;   
myTableCell = e.Item.Cells[14];   
LinkButton myDeleteButton ;   
myDeleteButton = (LinkButton)myTableCell.Controls[0];   
myDeleteButton.Attributes.Add("onclick","return confirm(’您是否确定要删除这条信息’);");   
break;  
default:   
break; 
}
}
5.点击表格行链接另一页
private void grdCustomer_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{ //点击表格打开 
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)  
e.Item.Attributes.Add("onclick","window.open(’Default.aspx?id=" + e.Item.Cells[0].Text + "’);");}  
//双击表格连接到另一页  
//在itemDataBind事件中if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{ string OrderItemID =e.item.cells[1].Text;  
e.item.Attributes.Add("ondblclick", "location.href=’../ShippedGrid.aspx?id=" + OrderItemID + "’");}
//双击表格打开新一页
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{ string OrderItemID =e.item.cells[1].Text;  
e.item.Attributes.Add("ondblclick", "open(’../ShippedGrid.aspx?id=" + OrderItemID + "’)");
}  
★特别注意:【?id=】 处不能为 【?id =】
6.表格超连接列传递参数<asp:HyperLinkColumn Target="_blank" headertext="ID号" DataTextField="id" NavigateUrl="aaa.aspx?id=’ <%# DataBinder.Eval(Container.DataItem, "数据字段1")%>’ & name=’<%# DataBinder.Eval(Container.DataItem, "数据字段2")%>’ />
7.表格点击改变颜色if (e.Item.ItemType == ListItemType.Item ||e.Item.ItemType == ListItemType.AlternatingItem)
{ e.Item.Attributes.Add("onclick","this.style.backgroundColor=’#99cc00’;   
this.style.color=’buttontext’;this.style.cursor=’default’;");}   
写在DataGrid的_ItemDataBound里
if (e.Item.ItemType == ListItemType.Item ||e.Item.ItemType == ListItemType.AlternatingItem)
{e.Item.Attributes.Add("onmouseover","this.style.backgroundColor=’#99cc00’;   
this.style.color=’buttontext’;this.style.cursor=’default’;");
e.Item.Attributes.Add("onmouseout","this.style.backgroundColor=’’;this.style.color=’’;");}
8.关于日期格式日期格式设定DataFormatString="{0:yyyy-MM-dd}"  
//我觉得应该在itembound事件中e.items.cell["你的列"].text=DateTime.Parse(e.items.cell["你的列"].text.ToString("yyyy-MM-dd"))
9.获取错误信息并到指定页面//不要使用Response.Redirect,而应该使用Server.Transfer 
 e.g// in global.asaxprotected void Application_Error(Object sender, EventArgs e) {if (Server.GetLastError() is HttpUnhandledException)Server.Transfer("MyErrorPage.aspx");//其余的非HttpUnhandledException异常交给ASP.NET自己处理就okay了 :)}  
//Redirect会导致post-back的产生从而丢失了错误信息,所以页面导向应该直接在服务器端执行,这样就可以在错误处理页面得到出错信息并进行相应的处理
10.清空Cookie Cookie.Expires=[DateTime];Response.Cookies("UserName").Expires = 0
linkpost comment

C#参数的传递 [Jul. 11th, 2007|11:02 am]

This difference is absolutely crucial to understanding parameter passing in C#, and is why I believe it is highly confusing to say that objects are passed by reference by default instead of the correct statement that object references are passed by value by default.

Output parameters
linkpost comment

办公室里不适合谈论的事情 [Jul. 9th, 2007|08:52 am]
[mood |crushed]

1.薪水问题
2.不谈公司中的人和事情
3.家庭财产之类的私人秘密不必张扬
4.在办公室不谈私人生活
5.别拿现单位和原单位比(犯过错误了)
6.野心可以有但不可露
以上几点做的还不错,第五点犯过错误了,以后保证不提!
linkpost comment

一个设置gmail的firefox插件 [Jul. 9th, 2007|08:34 am]
Better Gmail
linkpost comment

字典 [Feb. 4th, 2007|06:59 pm]
http://free5.ys168.com/?mywb
http://blog.sina.com.cn/u/1270377884
http://free5.ys168.com/?ttdstudy
linkpost comment

语音下载 [Feb. 4th, 2007|06:18 pm]
驴子上有,搜索NeoSpeech,找一个你喜欢的语音(下载页面有试听的网址)
linkpost comment

其实做每件事都是相通的! [Feb. 3rd, 2007|09:39 am]
记者:网球到底教会了你什么?
阿加西:你一个人在球场上,你必须独自面对和解决所有的问题,你必须控制好情绪但又必
须投入情感,所有这一切多么像是生活本身。你必须坚信自己,同时又逼迫自己不断前进。
linkpost comment

apache基础(非原创) [Jan. 31st, 2007|09:03 am]
1、Apache的核心配置文件名是"httpd.conf",其所存放的路径为"C:\Apache\conf"目录下。用记事本打开它后,对它进行修改后再保存便可达到配置Apache服务器的目的!

2、由于配置文件"httpd.conf"决定着整个Apahce服务器的使用,因此对于它的修改千万要小心!强烈建议先做好多个备份,以防出错!如果实在忘了备份了,当错得无法还原时,系统还为你准备了个名为"httpd.default.conf"的备份文件,它是你初安装好Apache后系统自动做好的"httpd.conf"的备份。好在好在!我就差一点重装。^-^

3、更改主页路径
(1)默认的,Apache主页文件存放在"C:\Apache\htdocs"目录下。
(2)比如要想输入"http://server"(服务器名)即可调出"D:\Onlyme\wy"目录下的自己的主页文件,则先用记事本打开"C:\Apache\conf"目录下的"httpd.conf"文件,用"编辑"菜单中的"查找"功能,找到"DocumentRoot "C:/Apache/htdocs""一句,然后将半角引号中的"C:/Apache/htdocs"改成"D:/Onlyme/wy"(注册这里是"/"而不是"\"了)

4、好了,现在打开浏览器,输入"http://server",看看出现什么!啊,"HTTP 404 没有找到"?天啦!哦,对了,还有默认主页文件名,Apache的只有一个"index.html",你的是这名吗?反正我的不是,后面跟上文件名不就得了!所以现在还只得输入"http://server/index.htm"。该出来了吧!仍是不行?嗯,试试这样,在开始菜单中的"程序"里找到"Apache httpd Server"组件,再选其下"Control Apache Server"中的"Restart"重新运行一下Apache的HTTP服务。……终于可以了!长出了一口气。

5、不过呢,每次调用主页时都要输入文件名实在是麻烦!把我的"Index.htm"添加进去吧!好,还是需要宝贝的"httpd.conf"文件,寻找"DirectoryIndex index.html"行,这里放的就是默认调用的文件!在"index.html"的后面加入你的"index.htm"和其他类型,再保存即可。唯一需要注意的是,各文件类型之间都必须要用一个空格来分隔开!

6、最后仍要提醒的是:改了配置后,如果未能生效,记住先用用"Restart"! 
linkpost comment

搜索引擎大全 [Jan. 27th, 2007|09:29 am]
<tr><td width="91"> </td> <td bgcolor="#ffffff" width="727"> 百度  Google  中文雅虎  搜狗  中搜  网易  QQ搜索  搜狐  新浪爱问  Tom </td> </tr> <tr> <td width="91"> </td> <td bgcolor="#ffffff" width="727"> 蕃薯藤 臺灣Google 雅虎奇摩 神搜 臺灣新浪 酷比 Openfind Super18 Hinet PCHOME </td> </tr> <tr> <td width="91"> </td> <td bgcolor="#ffffff" width="727"> Google Excite Aol Vivisimo MSNSearch AskJeeves Altavista Alltheweb OneCenter Lycos </td> </tr> <tr> <td width="91"> </td> <td bgcolor="#ffffff" width="727"> 美亚图库 无限图像 Google图像 中搜图片 百度图片 科比斯 Photos.com 素材精品屋 新浪图像 Ipost </td> </tr> <tr> <td width="91"> </td> <td bgcolor="#ffffff" width="727"> 北大天网 科大FTP 星空 哈工大SF 歪酷 成都理工 思源 Filesearching 天网千帆 华中大FTP </td> </tr> <tr> <td width="91"> </td> <td bgcolor="#ffffff" width="727"> 中文Blog搜索 Google博客搜索 360doc 博客网 中客 博索 Blogger Chinabbs Grassland Goo </td> </tr> <tr> <td width="91"> </td> <td bgcolor="#ffffff" width="727"> 百度Flash 中搜Flash Animations 闪客帝国 网易flash 闪客天地 Flash动画 天极flash Tom flash </td> </tr> <tr> <td width="91"> </td> <td bgcolor="#ffffff" width="727"> 百度新闻 新浪新闻 雅虎新闻 中新网 网易 新华网 Google新闻 Keep2do 日经 Ceek </td> </tr> <tr> <td width="91"> </td> <td bgcolor="#ffffff" width="727"> YahooJapan MsnJapan Goo Livedoor AskJP infoseekjp ExciteJP Fresheye @nifty Ceek </td> </tr> <tr> <td width="91"> </td> <td bgcolor="#ffffff" width="727"> 在线词典 金山词霸 韦氏词典 百度词典 Daum 太阳雨 Dictionary 科技词典 Onelook CNDICT </td> </tr> <tr> <td width="91"> </td> <td bgcolor="#ffffff" width="727"> 雅虎奇摩知识 知识人 百度知道 Answers Experts-exchange YahooJP Hangame GoogleAnswers Goo Hatena </td> </tr> <tr> <td width="91"> </td> <td bgcolor="#ffffff" width="727"> 搜游 游戏补丁网 快搜 新浪游戏 17173 </td> </tr> <tr> <td width="91"> </td> <td bgcolor="#ffffff" width="727"> 爱问 Blinkx 网络电视 Cblinkx VeryCD电影库 影立驰 Yahoo CNKI 搜视网 </td> </tr> <tr> <td width="91"> </td> <td bgcolor="#ffffff" width="727"> 百度地图 GoogleMap 搜狗地图 NIE Msn地图 MapsOnUs 爱问 Mapfan Goo Mapabc </td> </tr> <tr> <td width="91"> </td> <td bgcolor="#ffffff" width="727"> Google中文本地搜索 Google英文本地搜索 中搜本地 </td> </tr> <tr> <td width="91"> </td> <td bgcolor="#ffffff" width="727">  小精灵 雅虎少儿 Eduworld Family-s Awesomel' Dibdabdoo Ajkids Linkopedia Kidsclick 小蕃薯</td> </tr> <tr> <td width="91"> </td> <td bgcolor="#ffffff" width="727"> 孙悟空 Mamma Soaso Webcrawler Dogpile NBCI </td> </tr> <tr> <td width="91"> </td> <td bgcolor="#ffffff" width="727"> Tiscali voodoo-it Voila Ilse Jubii 丹麦雅虎 Webwatch Ilse NETI </td> </tr> <tr> <td width="91"> </td> <td bgcolor="#ffffff" width="727"> YahooKorea Naver Empas Daum Chol Paran Zingu </td> </tr> <tr> <td width="91"> </td> <td bgcolor="#ffffff" width="727"> 手机归属地 IP所属地 新华字典 股市行情 Qseek法律 电话区号 U库 邮政编码 佛学辞典 绝妙好词</td> </tr> <tr> <td width="91">  实用搜索</td> <td bgcolor="#ffffff" width="727"> 两全其美实用信息集成搜索</td></tr>
link2 comments|post comment

流程 [Jan. 5th, 2007|10:53 am]
smth风雨敲书窗的blog,java学习过程
linkpost comment

jsp集成开发环境的搭建 [Jan. 5th, 2007|10:51 am]
http://www.blog.com.cn/user33/liublog/index.shtml
linkpost comment

Java的应用 [Jan. 5th, 2007|10:42 am]
  Java的应用可以简单分为以下几个方面:
  1、Java的桌面应用
  桌面应用一般仅仅需要JRE的支持就足够了。
  2、Java Web应用
  Java的Web应用至少需要安装JDK和一个web容器(例如Tomcat),以及一个多用户数据库,Web应用至少分为三层:
  Browser层:浏览器显示用户页面
  Web层:运行Servlet/JSP
  DB层:后端数据库,向Java程序提供数据访问服务
  3、Java企业级应用
  企业级应用比较复杂,可以扩展到n层,最简单情况会分为4层:
  Browser层:浏览器显示用户页面
  Client层:Java客户端图形程序(或者嵌入式设备的程序)直接和Web层或者EJB层交互
  Web层:运行Servlet/JSP
  EJB层:运行EJB,完成业务逻辑运算
  DB层:后端数据库,向Java程序提供数据访问服务
  4、Java嵌入式应用
  Java嵌入式应用是一个方兴未艾的领域,从事嵌入式开发,需要从Sun下载J2ME开发包,J2ME包含了嵌入式设备专用虚拟机KVM,和普通的JDK中包含的JVM有所不同。另外还需要到特定的嵌入式厂商那里下载模拟器。
linkpost comment

一个计算机系学生眼中的“终极关怀”(转载) [Jan. 5th, 2007|10:03 am]
前几天,我碰巧看到国家宗教局局长叶小文谈宗教问题的一段讲话。他说宗教是对人生的
终极关怀。因为我们不仅需要关注生,也需要关注死,这就是宗教的意义。今天我们暂且
不谈宗教。把终极关怀的部分简单总结一下,得出的结论就是:终极关怀——等于——对
死亡本身及死亡之后的关怀。其实,这可能符合大多数人的理解,然而,我认为,“终极
”,绝不简单等同于死亡,“终极关怀”也并非简单的对应于对死亡的关怀。

那么,究竟什么才是终极关怀呢?

作为一名计算机系的学生,程序也许是接触最多的东西之一。抱歉扯到这么远。可是,我
不知道大家有没有这样一种体验?那就是程序无穷无尽,有时会让人产生一种焦虑。就拿
Java语言来说吧,刚一接触的时候,觉得很简单,好像玩一样。它提供了各种各样的类
,编程序好像一下子被简化了,我们要做的无非就是在丰富的API函数库里找出一个来用
就行了。可是后来呢?你抬起头向四周看一看,哇塞,类库简直无穷无尽啊!这种感觉就
好像被拔取管子的neo睁开双眼那一刻的震撼!要做嵌入式,你得知道J2ME;服务器端,J2
EE总要学吧,好家伙,一个J2EE里面包含了13项关键技术!这些技术说到底是什么?不
是13种大的类库么?事务处理要有JTA;消息处理要有JMS;电子邮件得用JavaMail;XML有
JAXP;安全认证要有JAAS……一个接一个,实在太多啦!!这还仅仅是J2EE!想想看,做
单元测试,你得会使JUnit吧?做日志,哪能不知道log4j呢?O/R映射,hibernate也很流
行啊!想用Java娱乐一下?试试Robocode吧。实在是数不胜数啊!!

仅有广度就够了么?Reflection得知道啊。再向底层深入还有class文件格式,还有jvm原
理……

人都有一种欲望,就是想要占有。求知欲又何尝不是一种占有欲呢?你很用功地学习以使
自己明白越来越多的东西,让自己显得聪明,显得优秀,显得更加出类拔萃!可是[沉重地
,语气突然变缓],假如像我说的那样,你发现东西越来越多已经学不过来了会怎么样?也
许,这些都还不算什么。有一天,你突然发现仅仅查类库已经不仅编不出好的程序,有的
甚至连理解别人的代码也出问题了。这个时候你又需要补课了,只会编码使不够的,设计
才是最关键的!没听说么?编码不过就是IT界的蓝领工人,出卖的是劳动力罢了。追求卓
越的你又怎么能仅仅满足于此呢?做面向对象设计,UML和设计模式是基本功吧?IoC似乎
也应该了解一下?面向方面的编程呢?新版JBOSS 4.0已经自带AOP框架了。模型驱动架构
呢?MDA似乎已经是一个核心概念了,君不见IBM并购Rational,Borland收购Together么?
那么面向服务架构呢?SOA可是号称将统领下一个十年啊!

有了架构,怎能没有方法学呢?SOA的基础就是敏捷方法中最著名的极限变成XP呀!测试驱
动的开发?哦,对了,有轻量级方法当然还有重量级的,RUP怎么样?MSF呢?

这可真是——学不完的概念,忘不了的忧愁啊!所以程序员一个既敏感又热门的话题就是
“三十岁”问题。三十岁的程序员是不是都应该转行呢?只能做因为你的身边永远会遇到
比你年轻的牛人,因为你永远也学不完一个又一个的新名词。

终于有一天,你踏上技术的颠峰,你的设计高效、灵活、有高度的可靠性高,强大的可扩
展性;你的实现流畅自然,闪耀着十年磨一剑的光辉。然而你发现优良的技术却并不等同
于畅销的产品。技术上的极致也许正是产品的穷途末路。于是,业界又提出了“过度设计
”概念,这正是一个技术狂热者可能遭遇的陷阱。

从技术到市场,我们经历了一次觉醒。我们过分沉湎于技术,以至于忘了技术之外的许多
因素。忽略这些因素只会使我们在前行的道路越走越远,越走越偏。

这就好像黑客帝国,没错,你醒了,可是什么才是现实呢?我们需要醒来多少次才能到达
彻底的真实呢?我们渴望优秀,我们追求卓越。从重点高中到重点大学,之后再是一份好
的工作。我们想要更高的薪水,更好的发展环境,更和谐的人际关系,可是为了什么呢?
无止境的追求仅仅是为了让追求这一过程变得更加舒适么?就好像我们不能仅仅为了设计
而去设计一样,我们需要的是再一次的觉醒。

人生有一些问题和工作无关,和学习无关,也和生活无关。在你很小很小,还什么都不懂
的时候它们或许就已经存在了。仰望天空时的神秘,凝视周围世界时的陌生与新奇,你都
忘了么?工作学习和生活给我们提供了太多的可能性,我们被吸引,我们迎接挑战,我们
发现乐趣,然而我们也得提防过分沉湎于其中的危险。一个产品的设计不能脱离市场,生
活工作和学习又不能脱离什么呢?

计算机行业永无止境的学习让你心力交瘁。而有一天你发现自己的工作和生活也沦为一段
无尽循环的程序:学习、劳作、重复以上步骤。这一天你会失望么?你会焦虑么?你会感
到生活的无意义与虚空么?为了什么?努力学习是为了什么?找到好的工作么?那找到好
的工作又是为了什么?可以有更丰厚的收入么?有丰厚的收入又是为了什么呢?难道我们
总是这样着着急急地赶往生命的终点么?

有些问题是对生命本身的关注,这就是所谓的“终极关怀”。终极,并不是指生命的终极
——死亡;相反,它常常是一种回归,对于生命原始冲动的回归。终极是对世俗生活某种
意义上的觉醒,我们也许要醒来很多次,才会拥有一个相对的真实。这也许是层次上的飞
跃,但也许仅仅是对于常识的回归,恰如产品和设计一样。

linkpost comment

程序 [Jan. 5th, 2007|09:59 am]

A program should be light and agile, its subroutines connected like a
strings of pearls. The spirit and intent of the program should be retained
throughout. There should be neither too little nor too much, neither
needless loops nor useless variables, neither lack of structure nor
overwhelming rigidity.


一个程序应该是轻灵自由的,它的子过程就象串在一根线上的珍珠。自始至终,目标明确
。增之一字节则太长,减之一字节则太短。既没有不必要的循环也没有没有被引用的变量
,既不缺少结构化也不至于僵硬呆板。

linkpost comment

多态 [Jan. 5th, 2007|09:28 am]
通过模板实现静态多态
函数重载称为函数多态
通过带有变量的宏定义也可以实现多态的功能
通过虚函数实现动态多态
linkpost comment

web服务器 [Jan. 4th, 2007|10:59 pm]

  • apache:最流行的HTTP服务器软件之一

  • tomcat是一种网络服务器.和IIS一样,只是IIS更多用ASP.TOMCAT用在J2EE,J2EE包括JSP呀.


http://dev.csdn.net/author/qingfeng0826/ae12e5805be940e69c99251d32ab53bb.html
jsp环境的配置
linkpost comment

jsp [Jan. 4th, 2007|12:28 pm]
没有java的基础,建议你去看看孙鑫老师的java视频教程 ,Java语言知识,

面向对象的编程思想,语言本身的优点和特性,在以后开发

中可能出现的问题,孙鑫老师剖析的非常好!!非常的适用!!!!

http://cache.baidu.com/c?word=%CB%EF%3B%F6%CE%3B%C0%CF%CA%A6%3B%B5%C4%3Bjava%3B%CA%D3%C6%B5%3B%BD%CC%B3%CC&url=http%3A//emule%2Eppcn%2Enet/n1739c12%2Easpx&b=0&a=2&user=baidu




还有就是你有一个误区!!!

错误是把JSP当作简化的 Java。它不是,(事实上, JSP 是简化的 servlets。)程序员通常试着没有学习要求的支持技巧而直接学习JSP 。JSP 是一个衔接技术,并且成功地连接你需要理解的另外的技术。如果你已经知道Java , HTML 和 Javascript,这意味着JSP 将确实是简单的。
需要成为一个成功的 JSP 程序员可以参考这个时间表。请注意下列:
*忽略你已经熟悉的步骤。
*训练的时间只是代表学习好足够的基础时间,这样才能转移到下一步。
1、建立并且理解你的Web Server。
因为Apache 是免费的并且在大多数平台上工作,为训练目的推荐 Apache。
安装时间:2 天。
2、 保证你理解 HTML / XHTML 。
你将需要了解html基础, 特别是 HTML 布局中的table的使用。XHTML 不久将代替 HTML ,学习 XHTML 的基础是一个好主意。许多程序员
通过 HTML IDE 学习 HTML ( 集成开发环境 ) 。因为大多数 HTML IDE产生混乱的HTMl语法,所以花时间学习手工写作html是很有必要的。因
为你将会使用 JSP 和 HTML 混合编程,精通HTML语法是重要的。所以,你必须能流利地写 HTML 。
训练时间:2 ~ 4 个星期。
3、开始学习 Java 。
开始学习 Java 1.3 理解 Java 基础是很重要的。不用担心学习Swing或 Java 的图形方面,因为在JSP 中你不会使用这些特征。集中精力
在 Java 工作的细节,学习 Java 的逻辑,也在 Java Bean上花时间。学习Applet是好的, 但是就象Swing, JSP 的大多数应用将不使用小程
序。
训练时间:3 ~ 6 个星期。
3、学习 JavaScript
学习怎么将 JavaScript在HTML中验证输入的Form元素。也学习 JavaScript怎么能在一 HTML 页以内修改Form的元素。最后要求你能从一
HTML 页内的事件中触发 JavaScript Function。
训练时间:一~ 2 个星期。
4、学习并且理解你的Web Server的更好的细节。
熟悉Web Server的特征,这是很重要的。
训练时间:2 天。
5、建立你的 JSP Server
我推荐以Tomcat开始。它可以很好地运行JSP程序。当你不能在生产使用Tomcat时,学习尽可能多的知识以便于更好的运行程序。另外, 许
多 JSP 程序员使用Tomcat。因此当你遇到一个问题时,你将容易发现帮助。
安装时间:一~ 2 天。
6、开始学习 JSP 。
基本的 JSP 学习通过的步骤 1到步骤6可以完成, 然后使用 JSP 对象和脚本写 JSP 程序来联系。学习 JSP 的另外一个方面可以学习怎么创
建一个分布式的应用程序。
训练时间:4 ~ 6 个星期。
7、学习更多的 JSP server。
没有关于更多的 JSP Server当然也可以运行jsp程序。然而, 许多 JSP server都由自己特殊的特征,可以让你更好的理解你的JSP 工程。
学习更多的Jsp server如何处理jsp程序是有必要的。同样也可以优化你的 JSP 应用程序,并且使之运行得更快而不出任何问题。
训练时间:2 ~ 7 天。
8、 学习 JDBC 。
JSP 大多数应用将使用数据库,JDBC 被用于数据库连接。经常忽略的一个事实就是,每个 JDBC Driver 所支持的东西是相当不同的。了
解并熟悉在jsp工程上被使用的 JDBC driver的细节是很重要的。
(有时这部分的学习被包含在前面 Java 或JSP的学习中了 。)
训练时间:1~ 2 个星期。
到现在,你已经成为了熟练的 JSP 程序员。仍然有很多需要学习,你可以考虑扩展你的知识比如 DHTML , XML ,java证书, JSP Tag Libraries 或 Servlets , 看你想要造什么类型的网站而决定了。
这些训练是JSP 的核心。你不必都学习上面所有的,取决于你在工程中分配到什么任务和你已经有什么知识。但是这是我成功地训练程序员的时间表。关键的单元是时间。平均的说, 5个月时间确实能够训练一个人 ( 从开始到完成 ) 成为一个对jsp熟悉程序员。5个月时间似乎很长,但要成为一个资深的WEB程序员所学的东西远远不止这一些。
也许你认为这样学习一种语言花费的时间太长了,因为学 ASP 会更快、时间会更短。 但是学习 ASP 不需要学习java的
学习网址:http://www.webdn.com/web_file/program/jsp/0602080402/
http://www.cnjsp.org/
linkpost comment

呵呵 [Jan. 4th, 2007|12:17 pm]
中山率领流浪汉
泽东率领穷光蛋
小平率领小商贩
民哥率领贪污犯
剩下我们
跟着涛哥混口饭
生活再难也得干
拼了小命把钱赚
顺便准备过元旦
祝同志们新年新气象、财源滚滚而至!
  在此,我谨代表中共中央、国务院、全国各族人民、广大工人、农民、知识分子、干部、人民解放军指战员、武警官兵、公安干警、各民主党派、全国工商联、人民团体、香港特别行政区同胞、澳门特别行政区同胞、台湾同胞、海外侨胞向您们表示节日的问候。
 祝您:
运气像曾庆一样红!
做人像吴官一样正!
家庭像贾春一样旺!
生活像温家一样饱!
事业象老罗一样干!
恋情像李长一样春!
linkpost comment

从GMail认识的W3C网页标准和Ajax (转载PuterJam's Blog) [Jan. 4th, 2007|11:23 am]
不可否认,W3C网页标准刚出来的时候的确很吸引人。那时因为firefox的出现,冲击了浏览器市场,使得大家为了一个小狐狸,而掀起一场网页标准的风波,但是对于设计师来说带来什么?在这场风波我看到的最多就是技术的泛滥。
  和一些designer聊天,第一句话就问,“你的网页标准化了”吗,“你的网页又有几处错误”。无形中这些话就给我们这些designer来说带来很大压力。每次更新网页都很害怕因为一些小小的改动导致一些小错误。似乎W3C成了一种追捧现象。就如同前段时间的Ajax热一样。但我们更加是应该理性分析,我们什么时候才应该用到这些技术。


我举一些例子

1.Div和Table之间的误会
  
  刚开始接触到W3C的时候,首先面临的问题是要把传统的table布局给去掉,利用Div+CSS做结构。这个是网页标准化的精髓。但是问题来了,大部分人都因为这个而误会说 "Table没有用了""你的网页还有table阿,out了"。其实不然,如果这样想,那就大错特错了。W3C只是要求不用table布局,没有说table不标准呀。
  每一个web标签都有它存在的意义,不是说完全遗弃某个标签。我们应该合理利用好每一个标签,table并没有被放弃,相反的table只是回到他的本职工作---用来显示数据,当你要在网页上显示大量的表格数据的时候,就应该用table了,这样你可以花最少的时间,达到最好的效果。假如你一定要用<ul><li>来模拟<table>也可以,但是你将因此耗费过多时间在CSS上面,增加很多多余的代码量,而且还不一定能达到你想要的效果。

  最有说服力站点:GMail你说它不标准吗?不是,你说它全是Div+CSS吗,也不是。它是Div+CSS+Table结构,它合理了利用好了每个网页标签。严格来说GMail并没有按照W3C XHTML 1.0标准去做。首先,它的网页没有用到 XHTML1.0 的过渡定义。因为它没有办法用,如果用了这个定义去设计GMail。估计大家看不到那么出色的程序了。即使没有用这个标准定义,但是它的CSS能写出这么好的兼容性也是一种最大的成功。


2.Ajax我们是否真的需要
  最先带出这个话题的是GMail,这个时候就开始很多人开始研究这个老技术的混合体。现在也开始在泛滥,但是很多时候我们不需要Ajax。简单的说,对于一个普通站点来说,你要宣传就必须要让搜索引擎找到你,但是Ajax最大的问题就是搜索引擎无法判断你里面的内容。就算你的技术多么成熟,做出来的东西不方便宣传,那也是一种失败。
  Ajax的主要是为提高程序的易用性为主,所以很多时候都会应用在后台程序中(当然部分操作也可以应用到前台)。来增强程序的人性化,以及易用性。
  Ajax最主要是实现了异步更新的功能,这样使网页不用同步显示更多信息。有效的减轻了服务器的负担。而实现异步主要是因为Javascript,而不是XML。为什么这样说呢,没有XML,Javascript同样可以实现异步。但是没有Javascript,光有XML也没用。XML只是作为一种数据来源。我分析了GMail的代码很长一段时间了,又一点很让我感到很奇怪,GMail用到XML的地方其实很少。它主要还是利用了大量的Javascript。里面用得最多的是Javascript和iframe,它解决Js回退靠的是iframe、输出邮件,它直接输出了Javascript代码到一个iframe的页面里面(直接看代码就可以看到),然后又利用Javascript重新构造这些JS数组,然后输出到网页上。中间的JS数组其实已经是直接写到了页面的,这样的过程用到的XML就很少了。整个GMail用得最多的是异步的JS方式。这样一来GMail也是传统,都是框架在利用JS控制着这个网页。而不是我们现在很多Ajax程序,一个页面上全是读XML,这样的方式是比较愚蠢的。
  我们要做的是利用好Ajax里面的 Javascript ,而XML只能作为必要的辅助。
 
  呵呵,文章结束了,以上均是我工作中遇到的问题的一些总结性的看法。希望大家不要因为这两个技术而“误入歧途”,重要的是理智考虑我们的网页如何给这两个技术一个合理的位置。

  最后,希望有能力的朋友多去研究研究GMail,你会发现很多和业界炒作的所谓新技术有很多出入。
  我对GMail的评价是一个很合理利用了以上两点技术的一个很成功的传统程序。

  如果发现文章中的观点有问题,欢迎和我讨论,并纠正。
linkpost comment

navigation
[ viewing | most recent entries ]
[ go | earlier ]

Advertisement