Java Web项目--使用Servlet生成一个页面
为了生成一个servlet对应的网页。我们需要新建一个web.xml,其中将会放置servlet的相关信息。
web.xml文件放置在WebContent/WEB-INF/目录下。(我们在Eclipe中新建一个Dynamic Web Project的时候一直点"next"的话会有提示"Generate web.xml deployment descriptor",勾选该选项会默认生成一个web.xml文件)。
我们需要配置两对映射关系,一对是servlet名和他对应的servlet类的对应关系;另一对是servlet和他的对应的URL后缀的对应关系。这么一来我们就将一个servlet类和一个URL联系到了一起。
我们在web.xml中加入元素servlet和servlet-mapping,如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
<display-name>WebProject</display-name> <servlet>
<servlet-name>moonlit</servlet-name>
<servlet-class>com.moonlit.MoonlitServlet</servlet-class>
</servlet> <servlet-mapping>
<servlet-name>moonlit</servlet-name>
<url-pattern>/page2.do</url-pattern>
</servlet-mapping> </web-app>
可以看到servlet中moonlit这个servlet名对应的类名为com.moonlit.MoonlitServlet,但是这个类我们还没有创建,所以我们现在需要创建这个类。
要创建这个类,我们首先需要创建一个包com.moonlit,然后在包com.moonlit中创建一个类MoonlitServlet。
Moonlit类作为一个servlet类需要继承HttpServlet类,并且因为我们这里是需要这个setvlet类输出一些我们想要的效果,所以还需要重写这个类的doGet和doPost方法。
我们这里就要求这个servlet早对应的网页上显示出当前的日期相关的信息吧。
那么实现出来的MoonlitServlet类如下:
package com.moonlit; import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; @SuppressWarnings("serial")
public class MoonlitServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
PrintWriter out = resp.getWriter();
out.println("<html>"
+ "<head><title>page2</title></head>"
+ "<body>" + new Date() + "</body>"
+ "</html>");
} @Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
this.doGet(req, resp);
}
}
重启服务器,会看到/page2.do页面显示了当前的日期信息。

Java Web项目--使用Servlet生成一个页面的更多相关文章
- Java Web项目--使用JSP生成一个页面
我们使用了servlet生成了一个网页,但是可以看到使用servlet生成网页必须将网页的内容全部嵌入到Java代码当中,不是很方便.所以有没有什么办法是将Java代码嵌入到html代码中,而不是像s ...
- IDEA与Tomcat创建并运行Java Web项目及servlet的简单实现
创建Web项目 1. File -> New Project ,进入创建项目窗口 2.在 WEB-INF 目录下点击右键, New -> Directory ,创建 classes 和 ...
- Myeclipse 搭建Java Web 项目:Servlet 《二》
上一节,我们使用myeclipse部署了web项目,但那部署的为静态的web项目,下面我们来学习编写动态的web项目,编写动态项目必须要用到的为:servlet. Servlet是由sun公司命名的, ...
- Eclipse创建的Java Web项目,如何启用外置浏览器访问jsp或者html页面
当我们用Eclipse创建了一个Java Web项目,想访问一个jsp或者html页面时,通常会在目标页面(以jsp为例)上点击鼠标右键,选择[Run As]——>[Run on Server] ...
- Eclipse上进行java web项目的打包
以下是一个基于maven搭建的Spring Boot项目的目录结构 版权声明:本文为博主原创文章,未经博主允许不得转载. 原文地址: https://www.cnblogs.com/poterliu/ ...
- SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。
熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...
- Intellij IDEA采用Maven+Spring MVC+Hibernate的架构搭建一个java web项目
原文:Java web 项目搭建 Java web 项目搭建 简介 在上一节java web环境搭建中,我们配置了开发java web项目最基本的环境,现在我们将采用Spring MVC+Spring ...
- 一个简单的Java Web项目搭建流程
今天试图在服务器上搭建一个web服务器,顺便回顾了java web项目的入门,使用Servlet处理HTTP请求,并记录日志等操作.当很久没有做过web项目时,有些东西还是很容易忘记的. Maven配 ...
- 使用Intellij idea新建Java Web项目(servlet) 原理及初步使用
准备 JDK (配置JDK_HOME\bin 和 CLASSPATH) 注:JDK8下载已经需要注册了,请使用JDK11(现在是官方长期支持的版本) 对于我们新手来说,JD ...
随机推荐
- CentOS 6.3下Samba服务器的安装与配置(转)
一.简介 Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写,即为服务器消息块 ,SMB主要是作为Microsoft的 ...
- 学习C#——性能计数器
写在前面: 作为Web应用开发前线的一枚小兵,每看到“性能”一词总有种要亮瞎眼的感觉,说到“性能”那就不能不提“数据”,在程序猿.攻城师中不是流行这样一句话吗?“无图无真相”,谁要说谁开发的应用性能有 ...
- keil写STM32程序出现literal treated as "long long"
在Keil MDKARM中 unsigned int value2=0x80000000; unsigned int value4=2147483648; value2编译时不产生警告,而value4 ...
- Linux下从视频提取音频的方法
Linux下可以利用mencoder将视频里的音频提取出来.方法如下: 1.首先安装mencoder.对于Ubuntu来说,软件仓库里就有mencoder,可直接输入如下命令安装 sudo apt-g ...
- DB2的sql函数
转自:http://blog.chinaunix.net/uid-21162795-id-3587646.html 一.字符转换函数 1.ASCII() 返回字符表达式最左端字符的ASCII 码值.在 ...
- IOS7 隐藏状态栏 (电池栏)
电池状态栏. //方法一(代码设置): 现在ios7已经更改为透明,并且不占用屏幕高度.其中隐藏及显示的方法如下: 在uiviewcontroller的子类下,调用: if ([self re ...
- 0077 web.xml中配置Spring MVC时,Servlet-name上报Servlet should have a mapping的错误
这次是手工建立的web工程目录,在配置webapp/WEB-INF/web.xml的Spring MVC的DispatcherServlet时,在servlet-name上报错:Servlet sho ...
- MySQL 5.7.16 zip包配置
截止2016/10/16 最新版本Mysql为5.7.16,之前写过一篇APMW搭建的文章(传送门:http://www.cnblogs.com/airoot/p/4131906.html)里面介绍的 ...
- FileInputStream与FileOutputStream类
FileInputStream和FileOutputStream类分别用来创建磁盘文件的输入流和输出流对象,通过它们的构造函数来指定文件路径和文件名. 创建FileInputStream实例对象时,指 ...
- java POi excel 写入大批量数据
直接贴代码: package jp.co.misumi.mdm.batch.common.jobrunner; import java.io.File; import java.io.FileNotF ...