文章目录
前言
提示:以下是本篇文章正文内容,下面案例可供参考
一、Someservlet
package testServlet;
import java.io.IOException;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class Someservlet implements Servlet {
public Someservlet() {
System.out.println("创建SomeServlet实例");
}
@Override
public void destroy() {
// TODO Auto-generated method stub
System.out.println("销毁SomeServlet实例");
}
@Override
public ServletConfig getServletConfig() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getServletInfo() {
// TODO Auto-generated method stub
return null;
// servlet的版本,servlet的作者,servlet所在的应用
}
@Override
public void init(ServletConfig arg0) throws ServletException {
// TODO Auto-generated method stub
System.out.println("初始化SomeServlet实例");
}
@Override
public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("创建SomeServlet实例的service方法");
}
}
2.实现效果
刷新页面两下后
二、testServlet01 someServlet1
代码如下(示例):
package testServlet;
import java.io.IOException;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class Someservlet1 implements Servlet {
private ServletConfig config;
@Override
public void init(ServletConfig config) throws ServletException {
// TODO Auto-generated method stub
this.config=config;
}
@Override
public ServletConfig getServletConfig() {
// TODO Auto-generated method stub
return null;
}
@Override
public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
// TODO Auto-generated method stub
}
@Override
public String getServletInfo() {
// TODO Auto-generated method stub
return null;
}
@Override
public void destroy() {
// TODO Auto-generated method stub
}
}
三 、testServlet02 someServlet
代码如下(示例):
package testServlet;
import java.io.IOException;
import java.util.Enumeration;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class Someservlet implements Servlet {
private ServletConfig config;
@Override
public void init(ServletConfig config) throws ServletException {
// TODO Auto-generated method stub
this.config=config;
System.out.println("config="+config);
}
@Override
public ServletConfig getServletConfig() {
// TODO Auto-generated method stub
return config;
}
@Override
public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
// TODO Auto-generated method stub
//获取servlet的名称
String ServletName=config.getServletName();
System.out.println("ServletName="+ServletName);
//获取ServletContext的对象
ServletContext ServletContext=config.getServletContext();
System.out.println("servletcontext="+ServletContext);
// String param1=config.getInitParameter("address");
// System.out.println("address="+param1);
//获取所有的初始化参数
Enumeration<String> names = config.getInitParameterNames();
//遍历枚举
while(names.hasMoreElements()) {
//获取枚举的当前遍历的值
String name = names.nextElement();
//获取指定参数的值
String value = config.getInitParameter(name);
System.out.println(name+"="+value);
}
}
@Override
public String getServletInfo() {
// TODO Auto-generated method stub
return null;
}
@Override
public void destroy() {
// TODO Auto-generated method stub
}
}
2.实现效果:
四、testServlet03
1.Someservlet
package javaweb.servlet;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/Response2")
public class Response2Servlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.addHeader("content-disposition", "inline;filename=404.jpg");
BufferedImage image=new BufferedImage(400,300,BufferedImage.TYPE_INT_RGB);
//ImageIO.write(image, "jpg", response.getOutputStream());
Graphics g=image.getGraphics();
g.setColor(Color.GREEN);
g.fillRect(0, 0, image.getWidth(), image.getHeight());
g.setColor(Color.RED);
g.drawRect(0, 0, image.getWidth()/2, image.getHeight());
g.setColor(new Color(255,255,255,70));
g.setFont(new Font("黑体", Font.BOLD, 60));
g.drawString("武汉城市学院", 20, 100);
ImageIO.write(image, "jpg", response.getOutputStream());
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
2.实现效果
2.otherServlet
package javaweb.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class ServletAServlet extends HttpServlet{
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
response.setContentType("text/html;charst=utf-8");
PrintWriter out=response.getWriter();
out.print("<html>");
out.print("<head>");
out.print("<title>boy</title>");
out.print("</head>");
out.print("<body>");
out.print("<img src=\"images\\boy.jpg\">");
out.print("</body>");
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
response.setContentType("text/html;charst=utf-8");
PrintWriter out=response.getWriter();
out.print("<html>");
out.print("<head>");
out.print("<title>girl</title>");
out.print("</head>");
out.print("<body>");
out.print("<img src=\"images\\girl.jpg\">");
out.print("</body>");
}
}
2.实现效果
3.thirdServlet
package testServlet;
import java.io.IOException;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class ThirdServlet implements Servlet {
private ServletConfig config;
@Override
public void init(ServletConfig config) throws ServletException {
// TODO Auto-generated method stub
this.config=config;
}
@Override
public ServletConfig getServletConfig() {
// TODO Auto-generated method stub
return config;
}
@Override
public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
// TODO Auto-generated method stub
//获取ServletContext对象
ServletContext sc=config.getServletContext();
//获取域属性
String mobile = (String)sc.getAttribute("mobile");
String email=(String) sc.getAttribute("email");
System.out.println("email="+email);
System.out.println("mobile="+mobile);
String contextPath = sc.getContextPath();
System.out.println("contextPath="+contextPath);
String realPath = sc.getRealPath("/images");
System.out.println("realPath="+realPath);
}
@Override
public String getServletInfo() {
// TODO Auto-generated method stub
return null;
}
@Override
public void destroy() {
// TODO Auto-generated method stub
}
}
六、web.xml
<?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>testServlet</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<!-- 定义初始化参数 -->
<context-param>
<param-name>name</param-name>
<param-value>beijing</param-value>
</context-param>
<context-param>
<param-name>address</param-name>
<param-value>shanghai</param-value>
</context-param>
<!-- 注册Servlet -->
<servlet>
<servlet-name>someservlet</servlet-name>
<servlet-class>testServlet.Someservlet</servlet-class>
<!-- 在容器启动时创建,数值越小,越新创建,负数不行 -->
<!--<load-on-startup>1</load-on-startup>-->
</servlet>
<!-- 映射关系 -->
<servlet-mapping>
<servlet-name>someservlet</servlet-name>
<url-pattern>/some</url-pattern>
</servlet-mapping>
<!-- 注册Servlet -->
<servlet>
<servlet-name>otherservlet</servlet-name>
<servlet-class>testServlet.OtherServlet</servlet-class>
<!-- 在容器启动时创建,数值越小,越新创建,负数不行 -->
<!--<load-on-startup>1</load-on-startup>-->
</servlet>
<!-- 映射关系 -->
<servlet-mapping>
<servlet-name>otherservlet</servlet-name>
<url-pattern>/other</url-pattern>
</servlet-mapping>
<!-- 注册Servlet -->
<servlet>
<servlet-name>Thirdservlet</servlet-name>
<servlet-class>testServlet.ThirdServlet</servlet-class>
<!-- 在容器启动时创建,数值越小,越新创建,负数不行 -->
<!--<load-on-startup>1</load-on-startup>-->
</servlet>
<!-- 映射关系 -->
<servlet-mapping>
<servlet-name>Thirdservlet</servlet-name>
<url-pattern>/third</url-pattern>
</servlet-mapping>
</web-app>