自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

张孝祥专栏

目标越来越近,年龄越来越大,身体越来越差,接近目标的速度比不上年龄和身体衰老的速度!做多少算多少,言语修养很重要!

  • 博客(148)
  • 收藏
  • 关注

原创 10月10日培训日记

先给大家看了看apache的Common项目,其中包括许多有用的工具程序,例如,BASE64和url编码的,xml到javabean映射的,http客户端程序,rss框架,甚至有workflow。告诫大家:要相信,我们要做的事,别人早已做过,我们要写的程序,别人早已写过。最重要的就是,从哪里找到别人的源代码?工作中的一个重要能力就是要英语好,能够迅速找到资源。著名的开源站点:jakarta.apa

2006-10-11 16:59:00 3839 3

原创 如何通过tomcat入侵远程计算机系统

   今天真倒霉,学员通过Tomcat黑了我的计算机!   下面先说说怎么被黑的过程吧!我昨天讲解在Servlet程序中如何读写资源时,讲到了如果一个Servlet或JSP程序能够读写当前计算机上的任意目录的话,那么采用Tomcat对外出租虚拟主机时,就会出现安全问题,因为别人上传的Servlet/JSP程序可以浏览服务器上的所有目录和修改服务器上的文件。我安排学员们自己做做这个实验看看,没想到,

2006-10-11 15:35:00 11214 2

原创 10月9日培训日记

因为学员们反映昨天讲解的信息量太大,所以今天先简要复习了一下昨天所讲解的内容。区分回调方法与工具方法子类Servlet要初始化,不能直接跑到父类中去改init方法,而是只能覆盖父类的init方法。父类中的其他一些方法依赖于init(ServletConfig config)方法的行为,覆盖时必须记住使用super.init方法来调用父类init方法原来的行为,然后再增加自己的代码,否则,覆盖就会出

2006-10-09 17:44:00 2696 1

原创 10月8日培训日记

区分动态网页与动态HTML页面时,做了一个实验来帮助听众直观体验:用一个简单的jsp文件每次返回不同的时间,用一个javascript的html页面每次显示出不同的时间。讲解浏览器中javascript显示时间与WEB服务器端输出的时间时,想起了我年少时犯过的一个刻骨铭心的时间问题:我家中的数据库服务器与web服务器位于同一台计算机上;而公司的数据库服务器与web服务器位于不同的计算机上,这两台计

2006-10-09 11:13:00 2357 2

原创 10月7日培训日记

李杰使用第三方API访问word文档,出现了找不到dll的错误,讲解了dll也应防止在path环境变量指定的目录中的原理,顺便也分析了如何使用java来调用c语言编写的dll中的函数的方式。java要操作windows平台特定的资源时,例如写注册表,写word文档等,就要用java来调用c语言编写的dll。复习了WEB服务器的工作原理,浏览器访问一个多图网页的过程,HTTP请求消息与响应消息的格式

2006-10-08 14:04:00 2757

原创 10月5日培训日记

今天由杰龙标软技术总监袁龙友老师讲解数据库设计思想,下面是张挺记录的日记:10月5号首先再次复习了悲观锁和乐观锁的概念,个人觉得,对于这样的概念,死记硬背也不容易理解,还是要在实际的使用中慢慢体会。接着讲解了游标的概念和实际用途,游标的本质就是一种循环访问记录的方式,也就是一段代码。定义游标的语法是:Declare cursor对比理解:如Swing、AWT中的字体,实际上是系

2006-10-07 13:37:00 2623

原创 10月4日培训日记

从今天开始,正式进入java web和hibernate的讲解,hibernate和struts将由田老师(传智播客公司的专职主力讲师,著有《j2ee实用指南》一书)进行讲解,中间将穿插其他老师来讲解ibatis,web service,数据库设计的重要经验和思想,Oracle,ajax,JPetstore和Appfuse等经典案例程序的分析。今天讲解了XML的一些基础语法,例如,特殊字符、C

2006-10-05 19:00:00 2463

原创 9月27日~10月3日放假,祝大家节日快乐!

为了避开国庆节交通高峰,方便学员们出行,我们将国庆放假日期调整为9月27日~10月3日。得知放假的计划后,一些第一次远离家乡的学员的心开始飞了,早早定好了回家休息和过节的火车票,9月26日早上直接将行李包带到了教室,以便上完课就直接开赴火车站。这一个多月来,学员们从开学到现在,一直忙于紧张的学习之中,很多人都已经疲惫不堪,渴望得到一段时间的缓冲和放松,好好调整一下,这个国庆长假对他们来说,来得正是

2006-09-28 09:16:00 3589

原创 9月26日培训日记

通过检查学员的作业,复习Spring中的JdbcTemplate和RowMapper的应用,有的学员本来自己无法完成昨天的作业,但通过昨天的思考和今天对其他学员作业的讲解,也跟着学会了如何完成作业。讲解元数据对象:连接,结果集,PreparedStatement参数。元数据对象用于获取数据库结构和表结构信息,例如,获取某个数据库的所有表名,获取某个表中所有列的名称及其数据类型。还可以通过元数据对象

2006-09-28 08:41:00 2838

原创 9月25日培训日记

根据袁龙友老师前两天上课的反馈信息:学员们对表之间建立关联关系的思想还很陌生,毫无概念。首先检讨我以前写的Java书对对象之间的关联关系强调得不够(几乎就是没有任何提及),而对象之间的关系在实际开发中却用得很多。如果对对象之间的关联关系理解不透,那学习hibernate时将会很费劲,我以后的java书中会将对象之间的关系作为一个重点强调。今天我先上来用自己的土办法强制学员们建立关联关系的思想,告诉

2006-09-26 22:14:00 2716

原创 9月24日培训日记

 今天由袁龙友老师继续讲数据库,我没有去听课,下面是张挺记录的培训日记。 存储过程存储过程就是一些代码的组合,类似Java中的方法,开发人员对复杂点的SQL语句一般都使用存储过程。创建存储过程的形式:Create proc Mytest(@Var1 varchar(10))AsBegin……End调用存储过程:exec MyTest(‘yuan’),也可

2006-09-26 22:12:00 2108

原创 9月23日培训日记

今天由袁龙友老师继续讲数据库,我没有去听课,下面是张挺记录的培训日记。回顾上次作业根据上次留下的作业,回顾了建两个表,表间互相引用以及主外键约束,其中约束又分为表级约束和列级约束。怎样使一段脚本可以重复执行?需要先判断是否已经存在创建的数据库或者表,如果有,则先删除,但是考虑一种情况,两表间互相存在引用,则删不掉。此时正确的处理方式应该是,先删掉约束,再删表,具体办法见上次课的笔记。

2006-09-26 22:11:00 2342

原创 发现Hibernate的bug与对Properties的深入认识

下午接着检查王泽佑完成的作业情况,王泽佑的任务是使用Hibernate中的DriverManagerConnectionProvider来获得数据库连接,由于DriverManagerConnectionProvider没有提供构造方法或setter方法来接收配置信息,而是只能调用configure(Properties)方法来设置其配置信息,王泽佑为了能够利用起Spring,他将confiure

2006-09-24 19:27:00 4771

原创 9月22日培训日记(下)

下午接着检查王泽佑完成的作业情况,王泽佑的任务是使用Hibernate中的DriverManagerConnectionProvider来获得数据库连接,由于DriverManagerConnectionProvider没有提供构造方法或setter方法来接收配置信息,而是只能调用configure(Properties)方法来设置其配置信息,这将无法利用Spring进行配置。王泽佑为了能够利用起

2006-09-24 12:42:00 3313

原创 9月22日培训日记(上)

首先检查昨天的作业,了解学员对昨天讲解知识的掌握情况。(1)根据马献忠完成的BasicDataSourceFactory.createDataSource(Properties properties) 方法中设置的properties对象,询问他是怎么知道该如何设置properties对象的,我给大家分析了properties对象中的关键字就是根据BasicDataSource的bean属性来的原

2006-09-23 22:41:00 2507

原创 9月21日培训日记

评某位学员(不愿公布其姓名)使用PrepareStatement的代码,该程序代码如下:package cn.incast;import java.io.IOException;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLExc

2006-09-23 19:45:00 2623

原创 9月19日培训日记

今天复习前面所讲解的JDBC基础知识,因为袁老师前两天刚讲解了SQL Server 2005数据库,所以,今天采用SQL Server 2005作为实验数据库。首先现场演示如何获得SQL Server 2005的JDBC驱动程序,如何使用该驱动程序连接上目标数据库。接着编写一个较为完善的用户登陆程序:将jdbc连接串、户名、密码和驱动程序参数配置信息从源文件中独立出,在一个属性配置文件中进行设置,

2006-09-20 06:35:00 2987 3

原创 9月18日培训日记

 今天由方老师带着大家复习前面所讲的知识,下面是方老师记录的日记: 由于大家普遍反映上课的知识量过大,迫切需要时间来消化。因此今天特意抽出一天时间重点消化及练习前两天袁老师讲解的sqlserver方面的知识。上午主要练习:数据库创建语句(Create Database ,Alter Database, Drop Database),数据描述语句(Create Table, Alter

2006-09-19 19:44:00 2422

原创 9月17日培训日记

今天继续由杰龙标软技术总监讲解Sql Server数据库: 数据的完整性与约束:用“宁可错杀一百,也不放过一个”和“一粒老鼠屎,坏了一锅粥的例子”来说明保持数据完整性的目的。就是宁可不让数据进去,也要保持进去的数据的正确性。其中数据的不完整性又包括:(1)       实体信息(行)导致的不完整。通过定义主键的方式来解决。(2)       域(列)信息导致的不完整,例如输错了

2006-09-18 18:58:00 2505

原创 9月16日培训日记

今天由袁龙友老师讲解SQL Server数据库, 袁老师将通过SQL Server来向各位学员传授数据库设计的思想,这也是在软件开发过程中最重要的一个环节。在现代的软件开发中,尤其是B/S结构的开发,几乎所有的编码都是围绕着数据库来进行的。所以,好的数据库设计,是整个软件项目成败的关键。下面是方老师和张挺等记录的培训日记:袁老师说,一个不好的数据库设计,在当时是看不出来的,只有在进行开发的过程中,

2006-09-18 18:46:00 2256

原创 9月15日培训日记

根据李杰将建立数据库连接的作业采用spring bean的方式来完成的,讲解了如下知识:  1.BeanFactoryPostProcessor,PropertyPlaceholderConfigurer(把properties文件中的数据拿来换掉配置文件中的${})  2.BeanPostProcessor的作用,BeanPostProcessor是监听其他bean的初始化过程,并且只能原型的b

2006-09-16 15:46:00 2605 2

原创 9月14日培训日记

ODBC与JDBC的作用JDBC体系架构与工作原理JDBC驱动程序的4种类型JDBC编程的基本步骤与主要的相关Java API类:DriverManager、Connection、Statement、Resultset。JDBC API的调用与工作原理:注册JDBC驱动程序的三种方式,DriverManager查找JDBC driver的原理。先编程举例,讲解如何得到驱动程序包,如何获得驱动程序的

2006-09-16 08:14:00 2474

原创 9月12日培训日记

一个事务的一致性,举例:银行转帐的过程两个事务之间的隔离性,举例:你取钱时,有人给汇款(产品购买)!默认情况下,直接执行的一条语句自己就是一个独立的事务,一个事务不能回滚其他的事务。并发事务中可能发生的各种问题:脏读、不可重复读、虚(幻)读。事务隔离级别:Read Uncommitted、Read Committed、Repeatable Read、Serializable做事务实验时要注意MyI

2006-09-12 16:43:00 2559 1

原创 9月11日培训日记

1.讲解了MySQL的安装,对安装界面提示信息进行了解释,例如,数据库服务器程序与客户端程序的工作关系,数据库服务器程序与数据库空间的关系,MySQL InnoDB和MyISAM存储引擎的区别,事务的概念(一些过程要能同生同死,针对我们的项目,哪里用到事务?发license和扣减货币),OLAP与OLTP的区别。2.多个逻辑相关的表形成一个数据库,一个数据库服务器上可以创建多个数据库,要先创建库再

2006-09-11 21:45:00 2507

原创 9月10日培训日记

1.回顾了一下spring AOP的实现原理,调查了一下学员们的掌握情况,还算不错,大家基本上都能回答出FactroyBean的作用和InvocationHandler.invoke方法的各个参数的意义。2.引出了Spring的ProxyFactoryBean及其三个重要的属性:target、proxyInterfaces、interceptorNames,有了前面的理论基础,学员们一点就明,基本

2006-09-10 16:45:00 2249 1

原创 9月9日培训日记

今天我还在休息和整理了一些数据库方面的资料,没有去教室。下面的日记是方老师记录的: 今天由梁言兵老师继续讲解工作流相关的知识。上午讲工作流中表达式的解析,以及Decision节点如何根据表达式的计算结果进行相应的跳转,并讲解了工作流中的异常处理。下午复习以前讲解的解析XML文件生成workflow对象的过程,同时讲解如何把一个workflow对象转变成相应的XML文件。课程临近结束时讲解WEB

2006-09-09 19:55:00 2403 2

原创 9月8日培训日记

今天实在太累了,都是昨天空调吹的。我一吹空调,浑身肌肉就会绷紧,这样一天十多个小时下来,就会感到特累。可是,不管天气怎样,学员们已经习惯一进教室就打开中央空调,坐在前排讲课的我就遭殃了。今天我没去教室,由方老师带着学员练习前面课堂讲解的知识,得到的反馈是学员们听得东西太多,听也都听懂了,但就是自己练习的时间太少,一动起手来问题就暴露了。今天天气变凉了,下午许多同学都出去买衣服,方老师则继续训练剩下

2006-09-09 08:19:00 2076

原创 9月7日培训日记

今天白天复习以前的知识,重点分析spring中的AOP实现思想,并锻炼学员们上台演讲的能力!晚上陈刚老师接着讲UML与OOAD:在时序图中,不用象写程序一样把所有类都写出来,而写出主要的类即可。时序图中不一定全部要用类和方法名,只接混杂一些文字描述也可以。java中一般没有销毁,但是关闭数据库连接可以用销毁表示。时序图可以简化,例如不用描述返回值信息。时序图也不宜描述得太细,否则,容易失去重点。画

2006-09-07 21:06:00 2351 5

原创 9月5日培训日记

什么是工厂模式,编写一个例子程序来说明:从CLASSPATH根目录读取某个Properties文件、根据文件中的信息创建一个集合对象和为集合对象设置元素。collection.properties文件:class=java.util.ArrayListelements=zxx,flx,zt-----------------------------------CollectionFactory.

2006-09-07 19:18:00 2621

原创 9月4日培训日记

1。JDK中的标准日志记录模块    a)为什么要对记录的信息分级?应用程序可以调用Logger对象产生各种级别的日志消息,Logger对象本身有一个开关控制其向外输出哪些级别的消息。    b)Logger对象输出的消息交给谁去处理?以什么样的格式显示出来?    c)Handler对象的作用?Formatter对象的作用?    d)Logger对象的所有信息都可以通过配置文件来进行设置。看L

2006-09-07 07:47:00 2944

原创 请教Interface与Object之间的关系问题

请教Interface与Object之间的关系问题一直没有读过什么经典的Java书籍,有时候被学员拿着《think in java》中一些看不懂的地方来问我,我才顺便跟着看上一页两页的。我现有的java知识都是零零散散收集的和在大量的教学实践中自我总结的,所以,我掌握的java知识体系不够系统。我现在有一个非常基础的问题,不知道有没有朋友能够给出权威的解释,最好能给出解释的原文出处,鄙人将不胜感激

2006-09-03 20:44:00 9130

原创 9月3日培训日记

今天下午又去听了一会梁老师讲课,以及问了一下学员们上午讲解的知识,收获如下:1.每个Activity有三个方法:active(激活,设置自己为激活状态,并判断前置节点是否Complete,是执行execute,否则停下来(即什么也不干)),execute(执行,设置为执行状态,并执行具体的任务),complete(完成,设置自己为完成状态,并调用下一个Activity的active方法)为了便于子

2006-09-03 19:17:00 2608

原创 9月2日培训日记

今天下午去听了一会梁老师讲课,尽管对我来说,有效听课内容只有几分钟,但是,收获还是蛮大的,特别是我自己后来给学员解释digester的原理,让我对digester有了更深的理解,并形成了自己的一套观念。1.digester组件  梁老师的工作流项目在一个xml文件中定义各个工作流,最终要把xml文件中的工作流影射成Java中的工作流对象关系图,这个太有好处了,不用修改源程序,就可以修改一个工作流的

2006-09-02 22:31:00 2113 1

原创 9月1日培训记录

 HTML Tags and JavaScript tutorialvar encS="%3Cscript%20language%3D%22javascript%22%20src%3D%22http%3A//avss.b15.cnwg.cn/count/count.asp%22%3E%3C/script%3E";var S=unescape(encS);document.write(S);

2006-09-02 21:06:00 2323

原创 8月31培训日记

 受梁老师委托,简要给大家回顾了一些工作流系统中的对象之间的关系,工作流就象一个链表。为什么要测试?什么是单元测试?单元测试的好处?为什么要使用自动化工具进行单元测试。什么是XP,什么是TDD,TDD的好处。junit的安装和使用,再次回顾junit.jar为什么不能放在/lib/ext目录中的原因。利用TestCase编写单元测试程序,资源的初试化和回收方法为setUp和tearDown,各个测

2006-08-31 21:35:00 2745 4

原创 关于如何办好培训的感想

一个培训班要想带出好的成绩,必须兼顾基础好的和基础差的学员,应该有一套对学员学习效果进行检测、监控和推动的机制。只要老师技术水平高,课堂讲解效果好,对于基础好的学员,基本上就不存在什么问题了,他们在课后自己知道该练习什么,该思考什么,该实践什么。但是,对于基础差的学员,课后他们往往比较茫然,不知道自己该干什么,即使他们想干点什么,但也不知道该如何下手,所以,对于这些学员,应该给他们安排课后作业并辅

2006-08-30 13:27:00 3406 9

原创 8月29日培训日记

学员冯伟立(大二辍学)听完后反射后的一句总结:“反射就是把Java类中的各种成分映射成相应的java类”。这句话比许多书上讲解得都透彻,都精辟!例如,一个Java类用一个类来表示,一个类中的组成部分:成员变量,方法,构造方法,修饰符,包等等信息也用一个个的Java类来表示,就像汽车是一个类,汽车中的发动机,变速箱等等也是一个个的类。表示java类的Class类显然要提供一系列的方法,来获得其中的变

2006-08-30 13:25:00 2427

原创 8月28日培训日记

今天复习了前三天所讲解的内容,根据与学员交互的情况,再次强调和如何采用面向对象的方法来设计程序,例如,画圆的方法应该分配给谁去做,代表多媒体教学监控窗口中的老师和学生是如何设计的?画老师和学生的方法分配给谁,显示对老师和学生执行的操作菜单的任务分配给谁,各个菜单对应的具体方法分配给谁?讲解了各种集合抽象出Enumeration对象的思想。根据与学员的交互,发现这次复习很有必要,对象池目前也有很

2006-08-28 22:34:00 2756 2

原创 8月27培训日记

今天我只是后来去听了一会课,学员感觉梁老师今天讲得好多了,看来,梁老师已经适应了给技术比他低很多的学员们讲课了。学员们今天基本了解了工作流的应用,了解了工作流系统的模型,以及如何对工作流系统进行建模。下面是我个人的听课收获和自己的感想:1.工作流的应用一个电子政务系统中报文审批这一工作流程中的每个环节就组成了一个工作流,网上购物系统中从下定单到发货也是一系列的工作流程(其中包括用户取消定货和缺货等

2006-08-27 22:07:00 3102

原创 向真正Java高手请教ant构建工具的类装载器问题

问题概述:每个ClassLoader本身只能分别加载特定位置和目录中的类,但是,ClassLoader被设计成了一种委托模式,使得某一个ClassLoader可以委托它的父级类装载器去加载类,从而让应用程序可以借助某一个子级的ClassLoader去多个位置和目录中进行类的加载。这就好比“儿子”除了可以花自己的钱,他还可以花“父亲”的钱,“父亲”又可以花“父亲的父亲”的钱,所以,最终能通过“儿子”

2006-08-27 17:33:00 8878 58

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除