zoukankan      html  css  js  c++  java
  • 3.Servlet实例

    一.基础实例

    1.参照如下例子创建maven web工程:

    https://www.cnblogs.com/lukelook/p/9187313.html

    2.创建一个简单的Servlet 类

    package com.my.web;
    
    import java.io.IOException;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    /**
     * Servlet implementation class CallWeb
     */
    public class CallWeb extends HttpServlet {
        private static final long serialVersionUID = 1L;
           
        /**
         * @see HttpServlet#HttpServlet()
         */
        public CallWeb() {
            super();
            // TODO Auto-generated constructor stub
        }
    
        /**
         * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
         */
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            // TODO Auto-generated method stub
            response.getWriter().append("<p>").append("This is just a test!").append("</p>");
            response.getWriter().append("Served at: ").append(request.getContextPath());
        }
    
        /**
         * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
         */
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            // TODO Auto-generated method stub
            doGet(request, response);
        }
    
    }
    View Code

    3.在web.xml中配置如下:

    <?xml version="1.0" encoding="UTF-8"?>
    
    <web-app version="3.0"
    
    xmlns="http://java.sun.com/xml/ns/javaee"
    
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    
    http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
    
     <!--如果 Servlet class 中已经用@WebServlet("/XXX")则不需要次配置,要不然会发生冲突-->
    
    <!--
    <display-name>Archetype Created Web Application</display-name>
    
        <servlet>
              <servlet-name>CallWeb</servlet-name>
              <servlet-class>com.my.web.CallWeb</servlet-class>
      </servlet>
      <servlet-mapping>
          <servlet-name>CallWeb</servlet-name>
          <url-pattern>/CallWeb</url-pattern>
      </servlet-mapping>
    -->
    </web-app>

    4.Run On Server CallWeb.class

    5.在浏览器中输入如下地址即可访问:

    http://localhost:8080/myWeb/CallWeb

     二.表单数据提交

    1.JSP界面

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>show</title>
    </head>
    <body>
    <form action="CallWeb" method="post">
    <!--fieldset 对信息分组-->
    <fieldset>
          <legend>个人信息:</legend>
        班级:<input list="browsers" name="stuClass">
        <datalist id="browsers">
             <option value="一一班">
             <option value="一二班">
             <option value="二一班">
             <option value="二二班">
             <option value="三一班">
        </datalist><br/><br/>
        用户名:<input type="text" name="stuName" id="stuName" value="请输入用户名"><br/><br/>
        密码:<input type="password" name="stuPassword" id="stuPassword"><br/><br/>
        <!-- label 当点击字时单选框也会被选上 -->
        性别:<input type="radio" name="sex" value="女" id="male"><label for="male"></label>
            <input type="radio" name="sex" value="男" id="female"> <label for="female"></label>
            <input type="radio" name="sex" value="保密" id="unknow" checked="checked"><label for="unknow">保密</label><br/><br/>
    </fieldset>
    <fieldset>
              <legend>其他信息:</legend>
        兴趣爱好:<input type="checkbox" name="love" value="足球 ">足球
              <input type="checkbox" name="love" value="篮球 ">篮球
              <input type="checkbox" name="love" value="排球 ">排球<br/><br/>
        地址:    <select name="address"> 
                      <optgroup label="河南省"> 
                        <option value="RuZhou">汝州</option> 
                        <option value="ZhengZhou">郑州</option> 
                      </optgroup> 
                      <optgroup label="陕西省"> 
                        <option value="XiAn">西安</option> 
                        <option value="WeiNan">渭南</option> 
                      </optgroup> 
            </select>
    </fieldset>
    <input type="submit" value="提交">
    </form>
    
    </body>
    </html>

    2.Servlet处理类

    package com.my.web;
    
    import java.io.IOException;
    import java.io.PrintWriter;
    
    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    /**
     * Servlet implementation class Show
     */
    @WebServlet("/CallWeb")
    public class CallWeb extends HttpServlet {
        private static final long serialVersionUID = 1L;
           
        /**
         * @see HttpServlet#HttpServlet()
         */
        public CallWeb() {
            super();
            // TODO Auto-generated constructor stub
        }
    
        /**
         * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
         */
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            // TODO Auto-generated method stub
            request.setCharacterEncoding("UTF-8");
            response.setCharacterEncoding("UTF-8");
            response.setContentType("text/html");
            PrintWriter pw = response.getWriter();
            pw.println("班级:"+request.getParameter("stuClass")+"<br/>");
            pw.println("用户名:"+request.getParameter("stuName")+"<br/>");
            pw.println("密码:"+request.getParameter("stuPassword")+"<br/>");
            pw.println("性别:"+request.getParameter("sex")+"<br/>");
            String[] arr=request.getParameterValues("love");
            for (String string : arr) {
                pw.println("兴趣:"+string+"<br/>");
            }
            pw.println("地址:"+request.getParameter("address")+"<br/>");
            
        
        }
    
        /**
         * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
         */
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            // TODO Auto-generated method stub
            doGet(request, response);
        }
    
    }

    3.界面效果

     

  • 相关阅读:
    Makefile 文件详细规则
    unrar命令
    Vector容器 和 iteration 迭代器
    python的with语句
    anaconda 使用总结
    vim 保存退出命令集
    Tensorflow实例集
    jupyter notebook 使用例子
    tensorflow 安装教程(最佳)
    Ext.NET 4.1.0 搭建页面布局
  • 原文地址:https://www.cnblogs.com/lukelook/p/9258044.html
Copyright © 2011-2022 走看看