这是在03年工作时, 所写的东西, 没有什么格式和逻辑,就是把想到的东西写出来了. 有的东西可能很幼稚,但我的blog我做主. 接着我还会贴04年.05年06年.
0814:
Web
页开发思想,
1.
确定该页面所使用的参数。
2.
确定该页面接收的和要传递出的参数。
3.
好何利用和用什么方法使用这些参数。
0815:
数据结构:
1
.弄清楚这样几种数据结构用法:主要是它们的区别和特性。
(
1
)。数组
array
(
2
)。
Vector
(
3
)。
Hashtable Hashmap (4)
。
Enumeration
0818:
告诉你两个问题:
1
.你们应该做什么?
2
。我们能为你们做什么?
0821:
目录服务:(使用
LDAP
协议,此协议是基于
X.500
的)
目前主要的目录服务器有:
Sun
的
iPlanet.
MD5
加密。
0822:
在国内用
Struts
的人很多,无它,因为只有
Struts
可供选择,大家只知道
Struts
。
但是,据我所知,有一个
Framework
让所有用过
Struts
后转用它的人都觉得它是非常适合大型系统开发的
Framework.
它就是
JATO,
也就是今天的
SUN ONE Application Framework.
0826: Xerces IBM
公司提供的
Java API
用于支持
XML.
除了
Xerces
外还有
SUN
提供的
JAXP.
XML
用于以层次结构的方式存储数据。(有利于信息的表达和结构化组织,可以准确定义数据,从而使数据搜索更有效。)
数据库
是以关系结构来存储数据的。(丰富的索引、复杂查询、良好的事务处理)
目录服务
是通过协议
LDAP
以目录的形式来存储数据的。(特点:搜索速度快,适合读多写少型数据)
0905: Weblogic
,
java, jsp
中文问题:
1,
Web.xml
和
Weblogic.xml
里的设置。
2,
使用
Sun Pet Store
里的
EncodingFilter
类能解决很多问题。
3,
代码法:
public String toChinese(String strValue){
try{
if(strValue==null)
return null;
else{
strValue = new String(strValue.getBytes("ISO8859_1"), "GBK");
return strValue;
}
}
catch(Exception e){
e.printStackTrace();
return null;
}
}
这是自己写的函数,你可以用这个把你需要转化的都转换,你可以先把这个函数封装在一个
JAVABEAN
,或者直接用
strValue = new String(strValue.getBytes("ISO8859_1"), "GBK");
0908: 1. *.cpl
文件
:
控制面板文件
.
2.
组策略:
gpedit.msc.
3.DB2
数据库的使用:
在控制中心进行操作:在数据库选项,选择根据备份创建数据库。
0909: Web
开发中的信息流转:
主要有三种关系:
1.jsp
与
jsp
之间的关系。
2.jsp
与
java
类之间的关系。
3.java
类与
java
类之间的关系。
(
其中
java
类包括:
javaBean
、
Servlet)
所以要清楚它们之间的信息传递的常用方法,怎样从一个地方到另一个地方。
0910: jsp
、
javabean
、
sevlet
和数据库间信息的传递操作。
0910: Struts
的安装和配置:
先把解压后的
lib
下的
struts.jar
,
commons−beanutils.jar
,
commons−collections.jar
,
commons−dbcp.jar , commons−digester.jar
,
commons−logging.jar
,
commons−pool.jar
,
commons−services.jar
,
commons−validator.jar
拷贝到的应用程序
lib
下
,
将
*.tld
拷贝到
WEB-INF
下,将
struts
写到
classpath
中。就配置好了。有时候设置
classpath
要重起机器才能生效。
0911: 1).
在
jsp
里用<
%@ page import=”MyClass”%>
方式使用类,
和用<
jsp:useBean id=”Class” class=”MyClass” scope=””/>
方式使用类有什么区别
.
答
:
方式一
,
在使用类要创建对象
.
即
:new
一个对象
.
方式二
,
在使用类时
,
不用创建对象
,
直接使用
id
名来调用类里的方法和变量
.
2).
out.print("
内容
")
:是在页面上打印出来的
System.out.print("
内容
"),
注意:
S
大写
:
是在调试窗口那里打印出来的
0912: (1).MVC
架构怎样互相传递信息,即信息流转的过程。
(2).
理解
MVC
架构:
MVC
设计范式包括三种对象:模型(
model
)提供应用业务逻辑(
Enterprise Beans
类)
;
视图(
view
)则是其在屏幕上的显示(
HTML
页面、
JSP
页面、
Swing GUI
)
;
控制器则是
Servlet
、
JavaBeans
或
Session Beans
类,它用于管理用户与视图发生的交互。我们可以将控制器想像成处在视图和数据之间,对视图如何与模型交互进行管理。通过使视图完全独立于控制器和模型,就可以轻松替换前端客户程序。并且,通过将控制器和模型代码保持在视图之外,那些不理解这些代码的人员就不能改变他们不应改变的东西。
(3).
用
J S P
开发
We b
的几种主要方式:
jsp.
jsp+javabean.
jsp+javabean+servlet.
j2ee
开发模式(MVC).
0915:Apusic
的部署:(Apusic2.0安装在 D:\下)
1.
把Java的连接驱动程序放在Apusic的lib下
(
把db2java.zip文件入在Apusic2.0\lib\下)
2.
把Web应用程序的Jar包文件放在本应用程序的lib下。
即:放在:D:\Apusic-2.0\applications\default\web\WEB-INF\lib下
3.
数据库连接文件要放在 D:\Apusic-2.0下
即:把datasources.xml和sqlprocessors.xml放在D:\Apusic-2.0下.
同时要更改 D:\Apusic-2.0\config下的datasources.xml文件。
即:需要配置五个地方,
注意:直接更改applications\default\Meta-inf\apusic-application.xml文件,把路径指向你的Web程序路径即可。而不用把Web应用程序放在Apusic相应的路径下。具体更改如下:
apusic_application.xml
文件:
<web-uri>/CVSWorkSpace/BBUSSWEB139/web</web-uri>
(
此时指的是同目录下的Web程序) 其它不用更改。
0915: Servlet
配置问题:
在使用Servlet时,要在Web.xml
(
在D:\Apusic-2.0\applications\default\web\WEB-INF下)文件下配置两个地方:
1.
配置类:
如: <servlet>
<servlet-name>MailLet</servlet-name>
<servlet-class>cn.com.resoft.BBUSS.mail.servlet.MailLet
</servlet-class>
</servlet>
2.
配置Mapping:
如:
<servlet-mapping>
<servlet-name>MailLet</servlet-name>
<url-pattern>/MailLet</url-pattern>
注:和Action里的内容同.
</servlet-mapping>
0916:
在java里若要判断一个变量和一个字符串相等应使用函数equals()
即:if(param.equals(
“
form_param
”
)) { }.
0918:
修改完程序一定要通测一遍。(否则你所做的修改很有可能影响到其它程序而不被发现)。
0918:
要做和用。(从基本的开始).
0918: URL
的地址:
相对地址:写法: ../lxq.jsp
绝对地址: 写法: http://lxq.jsp
链接和按钮: <a href=
”
#
”
onClick=
”
lxq()
”
>
李晓强</a> 注:href=
”
#
”
是虚链接。
<input type=
”
button
”
value=
”
李晓强
”
onClick=
”
lxq()
”
>
页面输出:JavaScript下:
document.write(
“
<html>
”
)
document.write(
“
</html>
”
)
jsp
下:
out.println(
“
lxq=
”
+lxq)
在页面输出。
或System.out.println(
“
lxq=
”
+lxq)
在服务器端输出。
思维方式:邮件,用户ID。收件人。(?)
0925:
公司的内部活动:
1.
技术论坛.(对技术背景,市场前景,发展趋势,经验总结等几个方面进行).
2.
团体活动.
0926:
赵大勇PPT:
1.
一个产品开发出来后,要面对四种用户:
1.
普通用户. 不涉及具体业务的客户,很多时候是领导.
2.
业务用户. 具体业务操作客户,(财务,公文流转,统计分析等).
3.
维护用户. 系统的管理维护人员,有时是开发方的人员.
4.
二次开发用户. 随着信息化建设的成熟,客户的要求也越来越高,越来越理 性.在开发时就会要求,当他面对版本升级或者和其它系统集成时是否会轻而易举做到等.
2.
产品开发横向划分: DB设计,Logic设计(业务流程),UI设计. 3.BI 商业智能。
前两个影响到产品的功能,拓展性等方面.后一个影响到产品的市场开发.(投标等).
0927
: Java编程思想:
1.
我们调用一个方法
1.
是为了产生返回值
. Return
2.
用它改变为其调用方法的那个对象的状态
. Void
(方法其实就是我们向那个对象
“
发一条消息
”
的方式)。
0927:
理解句柄的概念:
1.
窗口句柄:说到消息就不能不说窗口句柄,系统通过窗口句柄来在整个系统中唯一标识一个窗口,发送一个消息时必须指定一个窗口句柄表明该消息由那个窗口接收。而每个窗口都会有自己的窗口过程,所以用户的输入就会被正确的处理。例如有两个窗口共用一个窗口过程代码,你在窗口一上按下鼠标时消息就会通过窗口一的句柄被发送到窗口一而不是窗口二。
2.
句柄并没有什么神奇之处,不管哪种句柄,实际都是一个整数。它标识一种资源,如窗口、位图等等。就像你找一个人,必须知道它的地址一样,如果你要操作一种资源,必须先获得句柄。
0927:
抽象类和接口的区别:
1.
abstract class
应该是一种预定义了的一种结构,有些内容想到了就实现出来,有些想不到,只有一个概念,那就只列一个概念,比如想象若干年后的太空船,可以定义成一个
abstract class
,却不能实现出来,除非你知道了做法。
interface
则更多的只是向外界表达一种样子,从这个角度上来讲,它的层次比
abstract class
要高一层,所以其通用性更好些。
2.
(1).Abstract Class
类似于
Abstract Data Type(
抽象数据类型
)
,它定义了它所有的
subclass(
子类
)
应该有的特性,就是在
Abstract Class
中声明方法和变量。如定义一种抽象类型:车。那么在
Java
中,就要在
class
或
method
上加上
abstract
。
(2). Interface
则用来定义一个协议,所有的方法都可以实现它。一个
Interface
定义了方法,和最终静态
(final static)
变量,所有实现这个
Interface
的都要保证实现的东西与这个
Interface
定义的行为一致。使用
Interface
可以让
Object(
对象
)
在一定的规范下沟通。
3
.在
Java
平台里,它们主要有
3
个不同点:
(1).
一个类
(Class)
只能继承一个超类
(Super class)
,但是可以实现多个
Interface
。
(2).
在
Abstract Class
内
,
你可以有不抽象
(Abstract)
的方法,即有意义的方法,但
Interface
不行。
如
:
public abstract class
车
{
public int
轮子
;
public abstract void
移动
();
public String
我是什么
()
{
return "
车子
";
}
}
(3).Interface
不属于
继承范围。即不可能成为超类
(Super Class)
0927: jsp
中提交参数方法
:
1.<a href="javascript:myform.submit()">submit</a>
2.<a href="http://lxq.jsp?id=1&name=lxq">submit</a>
3.<input type="image" src="/images/lxq.gif">
4.<input type="submit" value="submit" name="submit">
5.<img onClick="myform.submit()" src=”/images/lxq.gif”>
6.<img onClick="javascript:window.open()">
只是响应事件
.
0928: JBuilder
的使用
:
在开发
Web
应用程序时
,
要新建如下两个文件
:
1.
Project/Project.
2.
Web/Web Application.
在这两个文件的属性下
(
右键
),
都有相应的工作路径
.
即可以随意更改路径
.
在一个原有的源程序下
,
新建一个工程
,
来建立开发环境
,
这点是非常重要的
.
0930:
表达要富有逻辑
:
为做到这一点可以在讲解之前,把一些主要的,关键的专用名词介绍出来,让大家有一个总的感观认识,(此过程可以考虑把这些词语打印出来)
.
1013:
在
Web
程序开发中经常会遇到
lib
这个文件夹。怎样区别:
1.
D:\jdk1.3.1\lib.
内容:
2.
D:\jdk1.3.1\jre\lib.
内容:
3.
D:\Apusic-2.0\lib.
内容:
4.
D:\CVSWorkSpace\BBUSSWEB139\lib.
内容:
(?)
5.
D:\CVSWorkSpace\BBUSSWEB139\web\WEB-INF\lib.
内容:
注:
BBUSSWEB139
是一个W
eb
应用程序。
内容:
1014: java
程序里的成员变量和成员函数解析
:
1.
类成员变量和方法
.
此类特点
:
有关键字
Static
修饰
.
占用唯一的一块内存
.
使用方法
:Class.
变量和方法
(
使用对象调用也可
)
。
2.
对象成员变量和方法
:
此类特点
:
除了关键字
Static
的修饰以外的
.
此种变量
new
不同的对象时占用不同的内存
.
(内存复制)
此种方法
占用唯一的一块内存
.
使用方法
:Object.
变量和方法
.
注
:
即使用
:Class MyObject=new Class()
方式产生对象
,
再使用对象调用其中的此种变量和方法
.
1014:
在程序中
Return
关键字的使用总结:
1014:
一个文件只可能有一个
Public
类。且与文件名相同。
(
包括大小写
).
1015: UML
七大框图
1. Use-Case Diagrams
(用例框图)
2. sequence diagram
(顺序框图)
3. Collaboration diagram
(协作框图)
4. Class diagram
(类框图)
5. State Transition diagram
(状态框图)
6. Component diagram
(组件框图)
7. Deployment diagram
(扩展框图)
1019:
构造函数的特点
:
1.
每
new
一个对象后
,
都自动调用一下构造函数
.(
所以可以把和
new
动作密切相关的操作放在这里边
).
2.
可以重载多个构造函数
.
3.
当不写构造函数时
,
在
new
一个对象之后
,
类会自动调用一个无参数的构造函数
.
4.
子类会一层一层地向上寻找构造函数
.
5.
如果将构造函数声明为
Private
的,则将不能在类的外部创建此类的对象。但可以在内部创建此类的对象
.(
理解单态模式
Chinese.getInstance()).
1019: System.gc().
方法的使用
.
调用垃圾回收器
.
1020: java
程序中的初始化问题
:
1.
类的成员变量不用初始化
,
类会自动为其初始化
.
2.
方法内的局部变量
,
必须初始化
,
否则报错
.
1020:
继承问题
:
1.
超类一定要有一个无参的构造函数
,
这样在继承时
,
才不会报错
,
2.
或是没有无参的构造函数
,
但在子类的构造函数中要调用有参的构造函数
,
即
:super(para).
1020: java
程序中的隐式行为
:
1.
类中不写
(
包括有参的和无参的
)
构造函数
,
编译器会自动调用一个无参的构造函数
.
2.
类的成员变量若没有初始化
,
会被编译器自动初始化
.
3.
子类中的构造函数会自动调用超类中的无参构造函数
.
4.
new
一个对象之后
,
会自动调用构造函数
.
1021: java
程序中,
Static
的用法。
1.
如果在一个类的
Static
方法中调用这个类的非静态成员变量和成员函数,必须使用该类的对象调用。如
:Public Static Void main(String[] args)
方法。
原因:
Static
的方法和变量不和对象绑定。
2.
Static
被所有对象共用。
3.
静态代码块:
static //1).
类被加载时调用,
2).
用于初始化功能。
{
counter=2;
System.out.println(“this is a static ”);
}
1021: weblogic
问题:
(C:\bea
为我的
Weblogic8.11
的安装目录
)
1.
配置
:
(1).
配置完
Domain
之后,将
Web
程序放在
mydomain
的一个应用程序下。
如:
C:\bea\user_projects\domains\mydomain\applications
(2).
若要修改路径及路径上的文件名,可以更改
Config.xml
文件
.
如:
C:\bea\user_projects\domains\mydomain\config.xml
(3).
数据库连接配置文件放在
mydomain
下:
如:
datasourcs.xml
和
sqlprocessors.xml
放在
mydomain
下。
2.
中文问题
:
在
Weblogic
下中文问题较多
,
如在
apusic
下的应用程序放在
weblogic
下就有中文编码问题
.
当我将一个
apusic
下的应用程序移到
weblogic
下时我是这样解决的中文问题
.
修改了
weblogic
下的如下文件。
在
C:\bea\user_projects\domains\mydomain\applications\web\WEB-INF
下我加入了一个
weblogic.xml
文件,文件内容如下:
(1).<!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 7.0//EN"
"http://www.bea.com/servers/wls700/dtd/weblogic700-web-jar.dtd">
<!-- $Id: weblogic.xml,v 1.1.1.1 2003/09/15 13:55:01 Administrator Exp $ -->
<weblogic-web-app>
<jsp-descriptor>
<jsp-param>
<param-name>compilerSupportsEncoding</param-name>
<param-value>true</param-value>
</jsp-param>
<jsp-param>
<param-name>encoding</param-name>
<param-value>GBK</param-value>
</jsp-param>
</jsp-descriptor>
<context-root>/</context-root>
</weblogic-web-app>
(2).
在
web.xml
文件下加入下面的代码
:
<context-param>
<param-name>weblogic.httpd.inputCharset./*</param-name>
<param-value>GB2312</param-value>
</context-param>
注
:
所加入的那个
Weblogic.xml
文件好像可有可无
,
但还未经证实。