请求和响应
创始人
2024-03-05 11:56:16
0

目录

  • 1 请求对象
    • 1.1 请求对象介绍
    • 1.2 请求对象常用方法-获取各自路径
    • 1.3 请求对象常用方法-获取请求头信息
    • 1.4 请求对象常用方法-请求参数信息
    • 1.5 获取请求参数并封装对象
      • 1.5.1 手动封装方式
      • 1.5.2 反射封装方式
      • 1.5.3 工具类封装方式
    • 1.6 流对象获取请求信息
    • 1.7 中文乱码问题
    • 1.8 请求域
    • 1.9 请求转发
    • 1.10 请求包含
  • 2 响应对象
    • 2.1 响应对象介绍
    • 2.2 常见状态码
    • 2.3 字节流响应消息
    • 2.4 字符流响应消息
    • 2.5 响应图片
    • 2.6 设置缓存
    • 2.7 定时刷新
    • 2.8 请求重定向
    • 2.9 文件下载

1 请求对象

1.1 请求对象介绍

  • 请求:获取资源。在 BS 架构中,就是客户端浏览器想服务器端发出询问
  • 请求对象:就是在项目中用于发送请求的对象

1.2 请求对象常用方法-获取各自路径

在这里插入图片描述

  • 代码演示
package com.txt.servlet;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;
@WebServlet("/servletDemo01")
public class ServletDemo01 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//1.获取虚拟目录名称String contextPath = req.getContextPath();System.out.println(contextPath);//2.获取Servlet映射路径String servletPath = req.getServletPath();System.out.println(servletPath);//3.获取访问者ipString ip = req.getRemoteAddr();System.out.println(ip);//4.获取请求消息数据String queryString = req.getQueryString();System.out.println(queryString);//5.获取统一资源标识符String requestURI = req.getRequestURI();System.out.println(requestURI);//6.获取统一资源定位符StringBuffer requestURL = req.getRequestURL();System.out.println(requestURL);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}
  • 演示效果:
    在这里插入图片描述

1.3 请求对象常用方法-获取请求头信息

在这里插入图片描述

  • 代码演示:
package com.txt.servlet;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.util.Enumeration;@WebServlet("/servletDemo02")
public class ServletDemo02 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//根据请求头名称获取一个值String connection = req.getHeader("connection");System.out.println(connection);System.out.println("-----------------------");//根据请求头的名称获取多个值Enumeration headers = req.getHeaders("accept-encoding");while(headers.hasMoreElements()){String header = headers.nextElement();System.out.println(header);}System.out.println("-----------------------");//获取所有的请求头名称Enumeration names = req.getHeaderNames();while (names.hasMoreElements()){String name = names.nextElement();String value = req.getHeader(name);System.out.println(name + ":" +value);}}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}
  • 效果如下:
    在这里插入图片描述

1.4 请求对象常用方法-请求参数信息

在这里插入图片描述

  • 代码演示
package com.txt.servlet;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.util.Enumeration;
import java.util.Map;@WebServlet("/servletDemo03")
public class ServletDemo03 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//1. 根据名称获取数据String username = req.getParameter("username");System.out.println(username);String pwd = req.getParameter("pwd");System.out.println(pwd);System.out.println("---------------------------------");//2.根据名称获取所有数据String[] hobbies = req.getParameterValues("hobby");for (String hobby : hobbies){System.out.println(hobby);}System.out.println("---------------------------------");//3.获取所有名称Enumeration names = req.getParameterNames();while(names.hasMoreElements()){String name = names.nextElement();System.out.println(name);}System.out.println("---------------------------------");//获取所有参数的键值对Map map = req.getParameterMap();for (String key : map.keySet()){String[] values = map.get(key);System.out.print(key + ":");for (String value : values){System.out.print(value + " ");}System.out.println();}}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}
  • 效果如下
    在这里插入图片描述

1.5 获取请求参数并封装对象

  1. 手动封装方式
  2. 反射封装方式
  3. 工具类封装方式

1.5.1 手动封装方式

  • 代码演示
package com.txt.servlet;import com.txt.bean.Student;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.util.Enumeration;
import java.util.Map;@WebServlet("/servletDemo04")
public class ServletDemo04 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//1.获取所有的数据String username = req.getParameter("username");String pwd = req.getParameter("pwd");String[] hobbies = req.getParameterValues("hobby");//2.封装学生对象Student stu = new Student(username,pwd,hobbies);//输出对象System.out.println(stu);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}//学生类
package com.txt.bean;import java.util.Arrays;public class Student {private String username;private String pwd;private String[] hobby;public Student() {}public Student(String username, String pwd, String[] hobby) {this.username = username;this.pwd = pwd;this.hobby = hobby;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPwd() {return pwd;}public void setPwd(String pwd) {this.pwd = pwd;}public String[] getHobby() {return hobby;}public void setHobby(String[] hobby) {this.hobby = hobby;}@Overridepublic String toString() {return "Student{" +"username='" + username + '\'' +", pwd='" + pwd + '\'' +", hobby=" + Arrays.toString(hobby) +'}';}
}
  • 效果如下:
    在这里插入图片描述

1.5.2 反射封装方式

  • 代码演示
package com.txt.servlet;import com.txt.bean.Student;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.beans.IntrospectionException;
import java.beans.PropertyDescriptor;
import java.io.IOException;
import java.lang.reflect.Method;
import java.util.Map;//反射封装方式
@WebServlet("/servletDemo05")
public class ServletDemo05 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//1.获取所有的数据Map map = req.getParameterMap();//2.封装学生对象Student stu = new Student();//2.1 遍历集合for (String name : map.keySet()){String[] value = map.get(name);//2.2 获取 Student对象的属性描述器try {PropertyDescriptor pd = new PropertyDescriptor(name,stu.getClass());//2.3 获取对应的setXxx方法Method writeMethod = pd.getWriteMethod();//执行方法if (value.length > 1){writeMethod.invoke(stu,(Object) value);}else {writeMethod.invoke(stu,value);}} catch (Exception e) {e.printStackTrace();}}//输出对象System.out.println(stu);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}

1.5.3 工具类封装方式

我们需要引入jar包
在这里插入图片描述

  • 代码演示
package com.txt.servlet;import com.txt.bean.Student;
import org.apache.commons.beanutils.BeanUtils;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.beans.PropertyDescriptor;
import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.Map;//工具类封装方式
@WebServlet("/servletDemo06")
public class ServletDemo06 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//1.获取所有的数据Map map = req.getParameterMap();//2.封装学生对象Student stu = new Student();try {BeanUtils.populate(stu,map);} catch (Exception e) {throw new RuntimeException(e);}//输出对象System.out.println(stu);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}

1.6 流对象获取请求信息

在这里插入图片描述

  • 代码演示
package com.txt.servlet;import com.txt.bean.Student;
import org.apache.commons.beanutils.BeanUtils;import javax.servlet.ServletException;
import javax.servlet.ServletInputStream;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.BufferedReader;
import java.io.IOException;
import java.util.Map;@WebServlet("/servletDemo07")
public class ServletDemo07 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//字符流(必须是post方式)/*BufferedReader br = req.getReader();String line;while ((line = br.readLine()) != null){System.out.println(line);}*///字节流ServletInputStream is = req.getInputStream();byte[] arr = new byte[1024];int len;while ((len = is.read(arr)) != -1){System.out.println(new String(arr,0,len));}}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}
  • 效果如下
    在这里插入图片描述

1.7 中文乱码问题

  • GET 方式
    没有乱码问题,在 Tomcat 8 版本后已经解决
  • POST 方式
    有乱码问题。可以通过 setCharacterEncoding() 方法来解决
    • 代码演示
package com.txt.servlet;import javax.servlet.ServletException;
import javax.servlet.ServletInputStream;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;@WebServlet("/servletDemo08")
public class ServletDemo08 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {req.setCharacterEncoding("UTF-8");String username = req.getParameter("username");System.out.println(username);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}

1.8 请求域

  • 请求域(request 域):可以再一次请求范围内进行共享数据
  • 一般用于请求转发的多个资源中共享数据
  • 请求对象操作共享数据方法
    在这里插入图片描述

1.9 请求转发

  • 请求转发:客户端的一次请求到达后,发现需要借助其他 Servlet 来实现功能
  • 特点
    • 浏览器地址栏不变
    • 域对象中的数据不丢失
    • 负责转发的 Servlet 转发前后的响应正文会丢失
    • 由转发的目的地来响应客户端
      在这里插入图片描述
  • 代码演示
    servletDemo09:
package com.txt.servlet;import javax.servlet.RequestDispatcher;
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;//工具类封装方式
@WebServlet("/servletDemo09")
public class ServletDemo09 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//设置共享数据req.setAttribute("encoding","gbk");//获取请求调度对象RequestDispatcher rd = req.getRequestDispatcher("/servletDemo10");//实现转发功能rd.forward(req,resp);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}

servletDemo10:

package com.txt.servlet;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;//工具类封装方式
@WebServlet("/servletDemo10")
public class ServletDemo10 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//获取共享数据Object encoding = req.getAttribute("encoding");System.out.println(encoding);System.out.println("servletDemo10 执行了...");}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}

1.10 请求包含

  • 请求包含:可以合并其他 Servlet 中的功能一起响应给客户端
  • 特点:
    • 浏览器地址栏不变
    • 域对象中的数据不会丢失
    • 被包含的 Servlet 的响应头会丢失
      在这里插入图片描述

2 响应对象

2.1 响应对象介绍

  • 响应:回馈结果。在 BS 架构中,就是服务器给客户端浏览器反馈结果。
  • 响应对象:就是在项目中用于发送响应的对象

2.2 常见状态码

在这里插入图片描述

2.3 字节流响应消息

在这里插入图片描述

  • 代码演示
package com.txt.servlet;import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
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.nio.charset.StandardCharsets;@WebServlet("/servletDemo01")
public class ServletDemo01 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//解决乱码问题resp.setContentType("text/html;charset=UTF-8");//获取字节流输出对象ServletOutputStream os = resp.getOutputStream();//定义一个消息String str = "你好";//通过字节流对象输出os.write(str.getBytes(StandardCharsets.UTF_8));}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}

2.4 字符流响应消息

在这里插入图片描述

  • 代码演示
package com.txt.servlet;import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
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.nio.charset.StandardCharsets;
//字符流响应消息
@WebServlet("/servletDemo02")
public class ServletDemo02 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//解决乱码问题resp.setContentType("text/html;charset=UTF-8");//获取字符输出流对象PrintWriter pw = resp.getWriter();//准备一个消息String str = "你好";//通过字符输出流输出pw.write(str);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}

2.5 响应图片

  1. 创建字节输入流对象,关联读取的图片路径
  2. 通过响应对象获取字节输出流对象
  3. 循环读取和写出图片
package com.txt.servlet;import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.PrintWriter;//响应图片
@WebServlet("/servletDemo03")
public class ServletDemo03 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//通过文件相对路径获取绝对路径String realPath = getServletContext().getRealPath("/img/qiu.jpg");//        1. 创建字节输入流对象,关联读取的图片路径BufferedInputStream bis = new BufferedInputStream(new FileInputStream(realPath));//        2. 通过响应对象获取字节输出流对象ServletOutputStream os = resp.getOutputStream();//        3. 循环读取和写出图片byte[] bys = new byte[1024];int len;while ((len = bis.read(bys)) != -1){os.write(bys,0,len);}//释放资源bis.close();}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}

2.6 设置缓存

  • 缓存:对于不经常变化的数据,我们可以设置合理缓存时间,以避免浏览器频繁请求服务器,以此来提高效率!
  • 在这里插入图片描述
  • 代码演示
package com.txt.servlet;import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.IOException;//设置缓存
@WebServlet("/servletDemo04")
public class ServletDemo04 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {String news = "这是一条很火爆的新闻";//设置缓存 1小时的缓存时间resp.setDateHeader("Expires",System.currentTimeMillis() + 60 * 60 * 1000);//设置编码resp.setContentType("text/html;charset=UTF-8");//写出数据resp.getWriter().write(news);System.out.println("aaa");}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}

2.7 定时刷新

  • 定时刷新:过了指定时间后,页面自动进行跳转
    在这里插入图片描述
  • 代码演示
package com.txt.servlet;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;//定时刷新
@WebServlet("/servletDemo05")
public class ServletDemo05 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {String str = "您的用户名和密码有误,3秒后自动跳转到登录页面";//设置编码格式resp.setContentType("text/html;charset=UTF-8");//写数据resp.getWriter().write(str);resp.setHeader("Refresh","3;URL=/response/login.html");}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}

2.8 请求重定向

  • 请求重定向:客户端的一次请求到达后,发现需要借助其他 Servlet 来实现功能
  • 特点:浏览器地址栏会发生改变,两次请求、请求域对象中不能共享数据,可以重定向到其他服务器
  • 响应对象重定向方法
    在这里插入图片描述
  • 代码演示
    ServletDemo06
package com.txt.servlet;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;//请求重定向
@WebServlet("/servletDemo06")
public class ServletDemo06 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {System.out.println("servletDemo06 执行了...");//设置共享数据req.setAttribute("username","zhangsan");//请求重定向resp.sendRedirect(req.getContextPath() + "/servletDemo07");//        resp.sendRedirect("https://www.baidu.com");}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}

ServletDemo07

package com.txt.servlet;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;//请求重定向
@WebServlet("/servletDemo07")
public class ServletDemo07 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {System.out.println("servletDemo07 执行了...");//获取共享数据Object username = req.getAttribute("username");System.out.println(username);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}
  • 运行效果
    在这里插入图片描述

2.9 文件下载

  1. 创建字节输入流,关联读取文件
  2. 设置响应消息头支持的类型
  3. 设置响应消息头以下载方式打开资源
  4. 通过响应对象获取字节输出流对象
  5. 循环读写
  6. 释放资源
  • 代码演示
package com.txt.servlet;import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.IOException;//文件下载
@WebServlet("/servletDemo08")
public class ServletDemo08 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//        1. 创建字节输入流,关联读取文件String realPath = getServletContext().getRealPath("/img/qiu.jpg");BufferedInputStream bis = new BufferedInputStream(new FileInputStream(realPath));//        2. 设置响应消息头支持的类型resp.setHeader("Content-Type","application/octet-stream");//        3. 设置响应消息头以下载方式打开资源resp.setHeader("Content-Disposition","attachment;filename=qiu.jpg");//        4. 通过响应对象获取字节输出流对象ServletOutputStream os = resp.getOutputStream();
//        5. 循环读写byte[] bys = new byte[1024];int len;while ((len = bis.read(bys)) != -1){os.write(bys,0,len);}
//        6. 释放资源bis.close();}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}

相关内容

热门资讯

区教研发言稿 区教研发言稿  现如今,需要使用发言稿的场合越来越多,发言稿是作为在特定的情境中供口语表达使用的文稿...
《认识面积》说课稿 《认识面积》说课稿  《认识面积》一课是学生正式学习平面几何的开始,是学生接下去学习面积单位和平面图...
高中语文评课稿 高中语文评课稿6篇高中语文评课稿1  一、如沐春风,教学形式与内容的统一  再次听XX老师授课,真有...
信息技术的评课稿 关于信息技术的评课稿  篇一:信息技术评课稿  听了两位信息技术教师的观摩课,总的感觉上得不错,很值...
小学生安全教育国旗下讲话稿 小学生安全教育国旗下讲话稿范文(通用3篇)  在社会发展不断提速的今天,越来越多地方需要用到讲话稿,...
小学数学一年级下册《认图形》... 小学数学一年级下册《认图形》说课稿范文  小学是我们整个学业生涯的基础,所以大家一定要培养良好的学生...
优秀学生发言稿 优秀学生发言稿  在现实社会中,我们使用上发言稿的情况与日俱增,发言稿的内容要根据具体情境、具体场合...
开学国旗下讲话稿 开学国旗下讲话稿(通用27篇)  在快速变化和不断变革的今天,我们都跟讲话稿有着直接或间接的联系,讲...
高三百日誓师讲话稿 高三百日誓师讲话稿(精选22篇)  在当下社会,我们可以使用讲话稿的机会越来越多,讲话稿可以按照用途...
爱读书国旗下讲话稿 爱读书国旗下讲话稿范文(精选4篇)  在社会发展不断提速的今天,越来越多人会去使用讲话稿,讲话稿是指...
《母亲节的礼物》说课稿 《母亲节的礼物》说课稿范文  作为一名人民教师,常常要写一份优秀的说课稿,编写说课稿是提高业务素质的...
跳绳加油稿 跳绳加油稿  导语:加油稿可以激励运动健儿更好的参加运动,活跃运动的气氛。接下来小编整理了跳绳加油稿...
老师评课稿 老师评课稿(精选15篇)  所谓评课,是指对课堂教学成败得失及其原因做中肯的分析和评估,并且能够从教...
加油稿运动会   加油稿运动会(一)  微微的风,远远的地方吹来一阵微风,夹着轻轻的私语。侧耳仔细听,那是同学们的...
教师节团建活动的主持稿 2022年教师节团建活动的主持稿(精选5篇)  在发展不断提速的社会中,我们都可能会用到主持稿,主持...
《真理诞生于一百个问号之后》... 《真理诞生于一百个问号之后》说课稿范文(精选3篇)  在教学工作者实际的教学活动中,总不可避免地需要...
初三家长会优秀发言稿 初三家长会优秀发言稿范文(精选6篇)  随着社会一步步向前发展,我们可以使用发言稿的机会越来越多,发...
环保的主题征文稿 关于环保的主题征文稿  保护地球,是我们每一个人的责任,以下YJBYS小编为大家提供关于环保的主题征...
家长会学生发言稿 关于家长会学生发言稿(通用7篇)  在当下社会,用到发言稿的地方越来越多,发言稿可以帮助发言者更好的...
校运会加油稿 校运会加油稿精选10篇  在学习、工作生活中,需要使用加油稿的情境愈发增多,加油稿是一种对他人有正向...