servlet开发细节

来源:互联网 发布:狗爹怎么解析域名 编辑:程序博客网 时间:2024/05/23 17:14
1.当我们搞到一个工程的时候建了一个新的工程名,其实在发布和访问的时候还是以前的配置名,若要改这个配置名我们需要打开文件的属性的myeclipse下的web一栏进行修改。


2.给予不同的访问地址也就是可以有不同的servletmapping(作用是映射)的映射如果映射的url是一个1.html(举例说明)在网页上直接搜的话像一个静态的资源但这是一种伪静态。


3.当我们mapping的时候如果使用了通配符(/*)或者是(*.其他结尾),的话在这个工程下无论写什么进去都是访问的我们这个网站。需要注意的是我们改动web.xml文件的时候不用重新启动服务器。


4.servlet的标签作用是注册servlet,<Servlet>是注册名称<Servlet-name>完整的类名


5.servletmapping这个标签的作用是映射,<servlet-name>注册名称<url-pattern>对外访问路径


6.当使用通配符的时候谁更像谁就响应,需要注意的是*在前面的优先级最低也就是*.xxx的优先级小于只有*


7.什么Servlet引擎呀什么的都是web服务器的一个部分,基于这个引擎来运行,在我们web调用的时候才能创建对象,在项目移除或者是停掉服务器的时候对象被摧毁;但是在xml中配置<load-on-startup>那么则在启动的时候就会创建实力对象而这个标签里的数字代表启动顺序


8.在多次调用的时候init方法只调用一次(对象只创建一次),而其他的方法和http请求则发送多次。


9.有的网站的访问量很大但是都是分阶段的,如果同时进行的话,那么服务器将崩溃


10.在mapping中的servlet没有内容只有一个标签的话那么就把他当作缺省的内容来看待。(处理别人都不处理的请求)


11.当web访问我们的服务器的时候,会直接访问servlet资源,若没有则会访问缺省的servlet(这个缺省的servlet有可能是我们写的也有可能web是内部的servlet),这个servlet会寻找有没有这样的静态web资源有则输出没有则抛出404.


12.线程安全,堆内存与栈内存的问题,栈内存里的不会出问题,堆内存里的会被多次使用(static也会有多次的改动),整个这个问题是建立在资源共享的基础上的。


13.在打上标记接口的徽章的时候,这个类就有了特异功能了假如上面的类实现了SingleThredModel的接口的话就会不断地创建对象重复的刷新要访问的结果。但是已经过时我们任然使用锁的思想

0 0