新手们,大家好我是一个和大家分享经验的程序员小鲜肉,工作时间2年多点,如果你看了我的第一篇文章就知道我的博客现在只针对新手菜鸟提供一些自己的经验,当然我也会陆续分享一些技术疑难杂症,今天我们来说说我们web中的非常重要的一个东西(servlet).
刚接触javaweb编程的同学们,你们一定会看到这个东西,servlet!这是什么?我们的阶段停留在那个阶段呢,建立一个myEclipse Web 工程然后开始写一个Servlet然后在xml 中配置相关文件,虽然这个配置环节你在新建Servlet的时候你可以让MyEclipse自动帮你建立如下图
但是你还是要自己会写servlet的配置文件:
FirstServlet
com.pt.servlet.FirstServlet
FirstServlet
/servlet/FirstServlet
这是代码。关键点在于 servlet 配置中的servlet-name 和 servlet-mapping中的servlet-name 名字要一样名字可以自己起最好是和类名一样。 servlet-class中的代码意思是你的类在的位置(请写全名包括包名)。<url-pattern>中指的是你在浏览器访问这个servlet所用的地址。
前面的都只是基础你会写servlet,接下来咱们讲点底层代码在我初学的时候一开始都不知道 ,到后面才知道,其实并不复杂,一层窗户纸捅破了就好了。 servlet的是个啥,它是一个好东西,是前端和后端分界点。它是一个类,你看看他在java中定义的时候public class FirstServlet extends HttpServlet . servlet 是一个单例,具体实现由web容器实现,也就是同一个servlet只会实例化一次,咱们用一张高级点的图(下图是从别人哪里拿的自己省的画了)来说明servlet怎么建立的。
比如啊你写了一个登录模块用的是LoginServlet .A用户和B用户在同一时刻登录了。那么咋办呢,这个时候就是会用多线程同时调用LoginServlet中的service()方法而不是新建一个Loginservlet。如果这个网站从发布还没有人访问那么服务器会实例化一次你访问的servlet。一般会在项目发布之后用工具全部把serlvet实例化一遍。 servlet是一个web程序后台的的入口。限制了他的多线程数目也就会限制服务器类实例化的个数。这样服务器面对大流量的访问就不知崩溃。但是这样一个多线程的个数也就最多开几千个。但人数一单超过这个咋办,那么服务器的分布式和集群就有用处了。
讲下Servlet注意的点由于Servlet 单例多线程的请尽量不要这这个类里面写变量,即使要写也要考虑线程安全性问题。一开始写的时候都是重写doget()和dopost()的方法,这两个方法也一般用作和前台做数据交互时候用。
这一讲就说这么多了。后面我再把要看的书发过来。顺便一提,现在手机泛滥的时代,夜猫子是很多人的通病导致第二天没有啥精神。手机的诱惑力太大了。能戒就戒了吧。教你们一个好方法,每天十点的时候,那一本看不懂的书看起来,一定要超过自己所掌握的知识,1个小时保证睡的香。白天再认真看那本书,比如先来一本《java编程思想》就不错。希望对大家有用!