栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java servlet 学习笔记 day 2

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java servlet 学习笔记 day 2

文章目录
  • 一、servlet的继承结构
  • 二、servlet的特点
    • 1.高效
    • 2.方便
    • 3.可移植性好
    • 4.功能强大
    • 5.灵活性和拓展性
  • 三、实例操作判断长度为5的字符串
  • 四、Web下的相对路径和绝对路径
    • web 当中斜杆的作用


一、servlet的继承结构

二、servlet的特点 1.高效

在服务器上只有一个java虚拟机在运行,当servlet被客户端发送的第一个请求激活时,将在后台持续运行,等待以后的需求,每一个请求将生成一个线程而不是进程。

2.方便

Servlet提供大量的实用工具例程,可以处理难以完成的HTML表单数据,读取和设置Http头信息,处理cookie,以及跟踪回话等操作

3.可移植性好

Servlet是由java编写的,java的跨平台开发不用质疑

4.功能强大

目前还没感觉出来,主要是还没学会

5.灵活性和拓展性

Servlet为一个java类,有java类的继承性,构造函数等特点

三、实例操作判断长度为5的字符串

servlet-- StringCheck类全面代码

package com.example.web5;

import java.awt.print.PrinterAbortException;
import java.io.*;
import javax.servlet.DispatcherType;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.*;
import javax.servlet.annotation.*;

@WebServlet("/string-check") //该servlet类的“门”
public class StringCheck extends HttpServlet {
    private String message;
    public void init() {

    }

    public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
        request.setCharacterEncoding("UTF-8"); //防止中文编码为乱码
        String mystring = request.getParameter("mystring");
            if(mystring.length()==5)
            {
                RequestDispatcher requestDispatcher = request.getRequestDispatcher("/index.jsp");
                //得到index.jsp的相对路径
                request.setAttribute("key1","字符串格式正确");
                //用map映射将字符串和"key1"连接起来
                requestDispatcher.forward(request,response);
                //返回request请求
                //out.println(type);
            }
            else if(mystring.length()>5)
            {
                RequestDispatcher requestDispatcher = request.getRequestDispatcher("/index.jsp");
                request.setAttribute("key1","字符串太长了");
                requestDispatcher.forward(request,response);
            }
            else if(mystring.length()==0)
            {
                RequestDispatcher requestDispatcher = request.getRequestDispatcher("/index.jsp");
                request.setAttribute("key1","字符串为空哦");
                requestDispatcher.forward(request,response);
            }else
            {
                RequestDispatcher requestDispatcher = request.getRequestDispatcher("/index.jsp");
                request.setAttribute("key1","字符串太短了");
                requestDispatcher.forward(request,response);
            }


    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        super.doPost(req, resp);
    }

    public void destroy() {
    }
}

首页调用

<%=request.getAttribute("key1")%>

似乎感觉没什么用
但怎么说还是有一点封装的感觉,确实,首页嵌套java代码的话,几行就写完了 ,但是这样写,首页明显更整洁一些,以后也不能什么东西都往首页塞吧。


四、Web下的相对路径和绝对路径

相对路径
. 当前路径
.. 上一级路径

绝对路径
http://ip:端口/工程项目名/资源名

web 当中斜杆的作用

浏览器当中被解析得到的是 http://ip:port/

 "/" 斜杠的跳转链接

服务器当中被解析 得到http://ip:port/工程项目

out.println("

" + request.getServletContext().getRealPath("/") + "

"); //显示 “/”的真实物理路径 , 这里“/" 就是 http://ip:port/工程项目, 所以代码全意为显示 “http://ip:port/工程项目” 的真实物理路径

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/825578.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号