当前位置: 首页 > news >正文

做网站智能工具青岛网络优化厂家

做网站智能工具,青岛网络优化厂家,专注徐州网站建设,企业自己可以做视频网站吗1.Servlet编程基础 (1)什么是Servlet Servlet是基于Java语言的Web编程技术,部署在服务器端的Web容器里,获取客户端的访问请求,并根据请求生成响应信息返回给客户端。 创建Servlet的方式,有 如下图:一般创建Servlet都…

1.Servlet编程基础

(1)什么是Servlet

Servlet是基于Java语言的Web编程技术,部署在服务器端的Web容器里,获取客户端的访问请求,并根据请求生成响应信息返回给客户端。

创建Servlet的方式,有

如下图:一般创建Servlet都是通过继承HttpServlet来实现,如图中的HelloServlet。

(类图快捷键:Ctrl + Alt + U)

 1.创建一个基于Maven的web项目。

2.创建java和resources文件夹

3.修改web.xml的版本

 

4.导入servlet的依赖

<!--servlet的依赖-->
<dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>4.0.1</version>
</dependency>

 

(2)Servlet的生命周期

init():当服务器启动,第一次访问Servlet的时候,servlet进行初始化

service():在服务器启动期间,可以不断的处理请求。

destroy():在服务器停止的时候,去销毁Servlet.

(3)Servlet的主要功能

(1)读取客户端发送到服务器端的显式数据(表单数据)

(2)读取客户端发送到服务器端的隐式数据(请求报头)

(3)服务器端发送显式数据到客户端(HTML)

(4)服务器端发送隐式数据到客户端(状态代码和响应报头)

 

2.编写Servlet类

1.通过Servlet生成静态网页

package com.ambow.test;import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;/***  作用:通过Servlet,动态生成HTML网页* @author foxbill* @date 2021/11/2 10:58*/
@WebServlet(name = "FirstServlet")
public class FirstServlet extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.setCharacterEncoding("UTF-8");//设置响应的字符集格式为UTF-8response.setContentType("text/html");//设置响应正文的MIME类型PrintWriter out = response.getWriter();//返回一个PrintWriter对象,Servlet使用它来输出字符串形式的正文数据out.println("<!doctype html>");out.println("<html>");out.println("<head><title>动态生成的HTML文档</title></head>");out.println("<body>");out.println("<table border='0' align='center'>");out.println("<tr><td bgcolor='skyblue' colspan=2>动态生成HTML文档</td></tr>");out.println("</table>");out.println("</body>");out.println("</html>");}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {doPost(request,response);}
}

web.xml的相关代码:

<servlet><servlet-name>FirstServlet</servlet-name><servlet-class>com.ambow.test.FirstServlet</servlet-class>
</servlet>
<servlet-mapping><servlet-name>FirstServlet</servlet-name><url-pattern>/first</url-pattern>
</servlet-mapping>

 

2.通过Servlet生成动态网页

package com.ambow.test;import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.time.LocalTime;/*** @author foxbill* @date 2023/8/9 16:35*/
@WebServlet(name = "TestServlet")
public class TestServlet extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//请求处理代码(功能:写一个动态网页)response.setCharacterEncoding("UTF-8");response.setContentType("text/html");PrintWriter out = response.getWriter();LocalTime now = LocalTime.now();int hour = now.getHour();out.println("<!doctype html>");out.println("<html>");out.println("<head>");out.println("</head>");out.println("<body>");if (hour>0 && hour < 6){out.println("晚安!");}if (hour>=6 && hour <= 12){out.println("早安!");}if (hour>12){out.println("午安!");}out.println("</body>");out.println("</html>");}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {doPost(request,response);}
}

web.xml的相关代码:

<servlet><servlet-name>TestServlet</servlet-name><servlet-class>com.ambow.test.TestServlet</servlet-class>
</servlet>
<servlet-mapping><servlet-name>TestServlet</servlet-name><url-pattern>/test</url-pattern>
</servlet-mapping>

 

3.编写web.xml配置文件

(一)配置虚拟路径

1.Servlet的多重映射

方式一:

<servlet><servlet-name>FirstServlet</servlet-name><servlet-class>com.ambow.test.FirstServlet</servlet-class>
</servlet>
<servlet-mapping><servlet-name>FirstServlet</servlet-name><url-pattern>/first01</url-pattern>
</servlet-mapping>
<servlet-mapping><servlet-name>FirstServlet</servlet-name><url-pattern>/first02</url-pattern>
</servlet-mapping>

方式二:

<servlet><servlet-name>FirstServlet</servlet-name><servlet-class>com.ambow.test.FirstServlet</servlet-class>
</servlet>
<servlet-mapping><servlet-name>FirstServlet</servlet-name><url-pattern>/first01</url-pattern><url-pattern>/first02</url-pattern>
</servlet-mapping>

2.映射路径中使用通配符,格式有两种 :

*.do:优先级最低

/*

<url-pattern>*.do</url-pattern><url-pattern>/*</url-pattern><url-pattern>/test/*</url-pattern>

3.缺省Servlet : /

缺省servlet其实就是servlet-mapping元素中url为/的servlet,在tomcat安装目录中:conf下的web.xml中有这样一个代码:

<servlet><servlet-name>default</servlet-name><servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class><init-param><param-name>debug</param-name><param-value>0</param-value></init-param><init-param><param-name>listings</param-name><param-value>false</param-value></init-param><load-on-startup>1</load-on-startup>
</servlet><servlet-mapping><servlet-name>default</servlet-name><url-pattern>/</url-pattern>
</servlet-mapping>

缺省Servlet的作用就是处理servlet-mapping中url都匹配不到的请求。

在web访问任何资源都是在访问Servlet,当访问tomcat服务中的某个静态html文件和图片时,实际上是在访问这个缺省的servlet。

如果在web应用下的web.xml没有1.html对应的url-pattern,也就是没有相对应的servlet,服务器则会运行缺省servlet,由该servlet对应的org.apache.catalina.servlets.DefaultServlet类将1.html静态页面的数据读取出来显示到页面上。

把上述中的代码注释掉,重启tomcat服务器,输入http://localhost:8080 ,将发现页面中的图片将显示不出,也即是因为这个原因。

http://www.hkea.cn/news/98491/

相关文章:

  • 手机网站免费制作平台semseo
  • 周口市做网站小红书seo排名
  • 网站开始怎么做的ps培训
  • 去哪个网站找题目给孩子做保定百度首页优化
  • 五道口网站建设惠州seo外包服务
  • 如何查看网站是否备案企业宣传册
  • 好的网站建设公司排名互联网宣传推广
  • 上海买二手房做哪个网站好seo快速排名优化
  • 十大中国网站制作免费广告
  • wordpress 文章主题关键词推广seo
  • 佛山网站建设佛山网络推广代运营公司靠谱吗
  • 贵阳疫情最新消息站内seo优化
  • wordpress相关问题深圳百度关键字优化
  • 做国珍新时代 网站陕西seo顾问服务
  • 建立网站怎么做关键字搜索引擎营销的作用
  • 广州手机网站建设宁波seo优化费用
  • 怎么设置网站服务器宁德市教育局官网
  • 查看网站源代码建站可以牛排seo系统
  • 政府网站建设的基本原则百度网盘电脑版
  • 张家港网站建设福州百度快速优化
  • 兼职做网站编辑百度搜索推广开户
  • 谁告诉你j2ee是做网站的宁波网站推广找哪家公司
  • 谷歌外贸建站多少钱搭建网站教程
  • 赚钱靠普的网站关键字搜索软件
  • 建设银行深分行圳招聘网站做游戏推广一个月能拿多少钱
  • 北京网站建设及推广招聘关键词排名代做
  • 对网站建设的意见建议网络营销推广的方法有哪些
  • 爬虫网站怎么做怎样才能在百度上面做广告宣传
  • 网站页码南昌做seo的公司有哪些
  • 网络设计方案包括哪些深圳百度推广seo公司