servlet基础
服务器端小程序
定义:
1.是一种Web服务器端编程技术。
2.是实现了特殊接口的Java类。
3.由支持Servlet的Web服务器调用和启动运行。
4.一个Servlet负责对应的一个或一组URL访问请求,并返回相应的响应内容。
1.C/S、B/S架构
C/S:client/server:客户机和服务器架构。
B/S:Browser/Server :浏览器和服务器架构。
2.servelet运行流畅
1.由客户端(浏览器)发送请求到浏览器
2.服务器根据URL来决定调用某个servlet程序
3.由servlet生成一些数据,通过打印流对象将数据返回给服务器
4.由服务器将数据传回客户端(浏览器)
3.servlet程序如何编写及运行
1.创建"web project",填写项目名称,选择java EE的版本(我们选择7),在next的过程中要勾选“generate web.xml Deployment ...”
2.创建一个java类,让这个java类去继承HttpServlet(javax.servlet.http.HttpServlet)
3.重写该父类的service(HttpServletRequest arg0, HttpServletResponse arg1)方法,并清空该方法,在方法中打印一句话
4.将创建的java类配置在WebRoot/WEB-INF/web.xml中,配置如下:
<servlet> <servlet-name>First</servlet-name> <servlet-class>cn.gzsxt.servlet.FirstServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>First</servlet-name> <url-pattern>/one</url-pattern> </servlet-mapping>
5.在apache-tomcat-8.5.38\webapps目录下创建一个叫“first”的文件夹
6.将工作空间下的项目中(例如:workspace0110\fistweb\WebRoot\下)的WebRoot目录下的所有内容拷贝至first文件夹下
7.启动服务器之后,打开浏览器,在地址栏中输入如下内容:
http://127.0.0.1:8080/first/one
对于我们指定的url来讲,“localhost:8080”这是服务器(tomcat)的地址,“first”是项目名(context-root),one是???
4.Servlet的运行过程:
⒈ 客户端发送请求至服务器端;
⒉服务器端根据web.xml文件中的Servlet相关配置信息,将客户端请求转发到相应的Servlet
⒊ Servlet引擎调用Service()方法,根据request对象中封装的用户请求与数据库进行交互,返回数据之后,Servlet会将返回的数据封装到response对象中;
⒋ Servlet生成响应内容并将其传给服务器。响应内容动态生成,通常取决于客户端的请求
⒌ 服务器将响应返回给客户端
5.部署项目到tomcat中
在webapps目录下创建一个文件夹,名字叫first(文件夹即context-root),在文件夹下,创建任意html代码都可以通过浏览器访问,如果我们希望运行servlet来生成一些动态数据,就可以将我们写好的servlet拷贝至该目录下。
servlet部署在tomcat中的规则就是:
1.我们需要把class文件(serclet编译过后得到)放在WEB-INF/classes目录下
2.将写好的servlet配置在web.xml文件中,该操作是为了告诉tomcat有servlet这个程序
注意:在webapps目录下,创建一个ROOT目录,如果将项目部署在该目录下,则通过url访问时不能添加项目名称。