当前位置:文档之家› javaweb复习总结全

javaweb复习总结全

javaweb第一天
1、junit测试框架
Arrsert.assertEquals(long execpted,long actual) 测试两个long类型的值execpted 与actual 是否相等,相等返回true,否则返回false;
2、泛型类型的转换
1、泛型的实际类型参数不具备继承关系、
2、泛型的作用:
jdk5.0之前,将对象保存到集合中,对象会失去他自己特有的信息,在从集合中取出该集合时,程序员必须手动的强制类型转换,这样不免在给程序带来安全性的问题,但是泛型的出现使得程序员在编码时可以限制集合中的处理类型,从而把运行时的可能发生的问题,转变为编译时的问题,以此提高程序的可读性和安全性。

结论:通过限制集合中的处理类型,使得程序更具可读性和安全性
3、自定义泛型方法
public <T> void doMethod( T t );
注意:在泛型方法中只有对象类型才能作为实际参数
3、枚举类
1、java中声明的枚举类,都是ng.Enum的实例
2、枚举类中的构造方法默认只能是private的,
为什么枚举类中的构造方法默认只能是private呢?
答:因为使用枚举给变量赋值时,他必须是规定的范围的枚举值,既然是规定范围的,那么就不能让外界new 出一个对象。

3、枚举类中声明的每一个枚举值都是枚举类的一个实例对象
4、枚举中常用的方法:
1、name() 获得枚举对象的名字
2、ordinal() 获得枚举的下标
3、valueof (String name) 将一字符串转变成枚举
4、values() 返回枚举数组,用于遍历枚举数组
4、反射
1、反射就是将java的各个成分映射成java类。

使用反射需要使用到以下一个API:Class 、onstructor、Field、Method
2、使用发射的要领就是需要先得到类的字节码对象,得到了字节码对象就得到了类身上的所有的一切,有了字节码,利用反射就可以操作类,给类的成员变量赋值,调用类的方法等。

3、使用反射得到泛型的实际参数类型,比如:List<Date> 需要获得Date的实际类型
4、如何得到字节码:
1、类名.class
2、对象名.class
3、Class.forName(“包名.类名”);
5、Class.forName()方法的作用:他首先查看内存之中有没有某个类的字节码,若没有,则创建一份字节码,若有,则加载字节码到内存之中,并封装成Class对象
5、内省---javabean
1、什么是javabean?
答:javabean就是遵循一定编写规则的特殊java类,规则有:
1、必须提供一个公共的午餐的构造方法
2、必须具有的属性都是private的
3、必须提供get和set方法供外界操作和访问该javabean的属性,方法名一定是
set和get后要紧跟属性名,属性名的第一个字母要大些
2、使用BeanUtils工具包操作javabean
1、常用的方法:
1、BeanUtils.popluate(Object bean, Map properties)
2、BeanUtils.setPoperty(Object bean, String name, Object value)
3、BeanUtils.copybean(Object dest, Object src)
2、使用BeanUtils时,有些复杂类型,BeanUtils不能自动将值设置到javabean
中,必须手动注册一个转换器
ConvertUtils.register(Converter converter, Class clazz)
converter: 表示注册的自定义的类型转换器
clazz: 就是要将别类型转换成clazz字节码代表的类的类型
细节:
1、Math.random() 生成0-1的小数,包含0, 不包含1
2、在拆箱, 装箱方法调用时,原则:使用jdk5.0与jdk1.4的结果相同
3、通过查看API知道,使用反射,若是调用getConstructor()方法不能生成一个对象,因为不
是public的,getConstructor()方法只能是针对public修饰的若是硬要生成一个对象,那么应该是使用getDeclaredConstructor()方法。

javaweb 第二天
1、xml
1、什么是xml?
答:xml是可扩展标记语言
2、xml有那写特点?
答:xml类似于html, 但是xml中没有预定义的标签,最初设计是用来传输数据的。

3、xml的应用在哪里?
答:1、存储和传输复杂关系模型数据2、作为配置文件
2、xml文档声明
<?xml version="1.0" encoding=“utf-8” standalone=”yes” ?>
encoding:表示文档编码
standalone: 说明文档是否独立(文档如果依赖别的文档就是不独立)
3、XML元素指XML文件中出现的标签
4、对于XML标签中出现的所有空格和换行,XML解析程序都会当作标签内容进行处理
5、CDAT A区
在编写xml时,有些内容不想让解析程序执行,须当做原始内容处理,那么将该数据放大CDAT A区中
<![CDAT A[ 数据]]>
例如:<![CDAT A[
<itcast>
</itcast>
]]>
6、DTD约束
1、xml文档为什么要引入约束?
答: 因为xml是可扩展的标记语言,在xml中没有预定义标签,那么程序员就可以随意书写xml的标签,这样在开发中就没有统一使用标准,这样的就会造成xml文档中的标签混乱。

所以引入约束,指定xml中可以使用那些标签,不可以使用那些标签。

这样就统一了使用标准。

2、DTD与xml三种关联的方式
1、使用内部DTD
2、使用外部DTD
若关联的dtd文件在本地则使用:
<!DOCTYPE 根元素SYSTEM “dtd文件的URL” >
3、使用公共DTD
若关联的是一个公共的dtd文件则使用:
<!DOCTYPE 根元素PUBLIC “dtd名称”“dtd文件的URL” > 3、元素(Element)的定义
4、元素(Element)内容的定义
5、属性(ATTLIST)定义
属性类型中常用有:CDAT A,表示属性值为字符型数据
属性的约束有四种:#REQUIRED 表示属性是必须的,#IMPLIED 表示可以忽略的,#FIXED 表示只能是规定的值,Defaultvalue 表示默认值
7、Schema约束
1、schema的使用例子
2、schema文件不用指定约束他的约束文档在哪
答:schema也是一个xml文档,为什么使用schema文档不用指定他的约束文档在哪里?
因为他所使用的约束文档是一个著名的约束文档,不用指定。

3、在使用schmea约束文档时,schmea文件中的targetNamespace与要约束的xml文档中声明的命名空间要相同,因为targetNamspace是自己定义的元素来自哪个命名空间
8、DOM与SAX解析xml文档的原理与优缺点?
DOM解析xml的原理:将xml一次性装在到内存之中,以树状形式存贮,占用的内存比较大
优点:对xml的crud速度快
缺点:不合适解析大的xml文档
SAX解析xml原理:逐行解析xml
优点:适合解析比较大的文件
缺点: 不适合对xml文件的crud
9、在工程中文件的位置,路径问题????
答:myeclipse下默认是从工程名下加载
10、在DOM解析中,所有的元素、属性、文本都是节点,都是Node的子类
11、DTD的数据类型
PCDA TA是元素的标签体的数据类型
CDA TA是属性的数据的类型
javaweb第四天
1、web通信详解
2、配置虚拟目录
在server.xml中的<Host>标签中配置<Context>标签
例如:<Context path=”/” docBase=”c:\itcast”
>
4、配置虚拟主机案例
输入不要访问百度,而是访问本地的首页index.jsp
javaweb第五天
1、servlet的生命周期?
2、线程与进程的区别?
3、缺省servlet
当servlet的映射路径为“/ ”时,那么该servlet就成了当前web应用下的缺省servlet,但访问tomcat中的静态页面或图片时,实际上访问的就是tomcat中的缺省的servlet org.apache.catalina.servlets.DefaultServlet 为tomcat中缺省servlet
4、在servlet初始化时,建议不要覆盖init(ServletConfig config), 只需覆盖无参的init()
5、获得ServletContext对象两种方法:
servletConfig.getServletContext()
this.getServletContext()
6、web工程中读取文件的两种方法。

相关主题