当前位置: 首页 > news >正文

网站建设2000元大数据技术主要学什么

网站建设2000元,大数据技术主要学什么,黑龙江省建设局网站,动画设计说明一、概述 1、Request与Response Request 对象 和 Response 对象是由服务器#xff08;Tomcat#xff09;创建的Request 对象是来获取请求消息Response 对象是来设置响应消息 2、Request 体系结构 3、Servlet 体系结构 二、HttpServletRequest HttpServletRequest对象代表客户…一、概述 1、Request与Response Request 对象 和 Response 对象是由服务器Tomcat创建的Request 对象是来获取请求消息Response 对象是来设置响应消息 2、Request 体系结构 3、Servlet 体系结构 二、HttpServletRequest HttpServletRequest对象代表客户端的请求当客户端通过HTTP协议访问服务器时HTTP请求头中的所有信息都封装在这个对象中通过这个对象提供的方法可以获得客户端请求的所有信息 三、request 获取请求行的数据 先写一个 input.html !DOCTYPE html html langen headmeta charsetUTF-8title文本输入框/title /head body form actionservletRequestDemo01 methodgetinput typetext nameusername valuenamebrinput typetext namepassword valuepasswordbrinput typesubmit valueget 提交 /formbr form actionservletRequestDemo01 methodpostinput typetext nameusername valuenamebrinput typetext namepassword valuepasswordbrinput typesubmit valuepost 提交 /formbr /body /html 再写一个 Servlet 类 类名为ServletRequestDemo01.java package cn.lemon.request;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(/servletRequestDemo01) public class ServletRequestDemo01 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {request.setCharacterEncoding(utf-8);//解决请求乱码response.setCharacterEncoding(utf-8);//解决响应乱码doGet(request,response);}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//获取请求方式GetString method request.getMethod();System.out.println(获取的请求方式为 method);//获取虚拟目录String contextPath request.getContextPath();System.out.println(获取的虚拟目录为 contextPath);//获取请求的路径String servletPath request.getServletPath();System.out.println(获取请求的路径为 servletPath);//获取Get方式的请求参数String queryString request.getQueryString();System.out.println(获取Get方式的请求参数为 queryString);//获取URI相对服务器路径 及 URL全路径String requestURI request.getRequestURI();System.out.println(获取URI相对服务器路径为 requestURI);StringBuffer requestURL request.getRequestURL();System.out.println(获取URL全路径为 requestURL);//获取HTTP协议及版本号String protocol request.getProtocol();System.out.println(获取HTTP协议及版本号 protocol);//获取客户机的IP地址String remoteAddr request.getRemoteAddr();System.out.println(获取客户机的IP地址 remoteAddr);} } 控制台显示 总结 String method request.getMethod();获取请求方式GetString contextPath request.getContextPath();获取虚拟目录String servletPath request.getServletPath();获取请求的路径String queryString request.getQueryString();获取Get方式的请求参数String requestURI request.getRequestURI();获取URI相对服务器路径StringBuffer requestURL request.getRequestURL();获取URL全路径String protocol request.getProtocol();获取HTTP协议及版本号String remoteAddr request.getRemoteAddr();获取客户机的IP地址String remoteHost request.getRemoteHost();int remotePort request.getRemotePort();String remoteUser request.getRemoteUser();String pathInfo request.getPathInfo();String localAddr request.getLocalAddr();获取WEB服务器的IP地址String localName request.getLocalName();获取WEB服务器的主机名 四、request 获取请求头的数据 1、获取请求头的方法 String getHeader(String name):通过请求头的名称获取请求头的值EnumerationString getHeaderNames():获取所有的请求头名称 2、实例新建文件 ServletRequestDemo03.java 执行 service 方法 package cn.lemon.request;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(/ServletRequestDemo03) public class ServletRequestDemo03 extends HttpServlet {Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//获取所有请求头数据EnumerationString headerNames req.getHeaderNames();//遍历while (headerNames.hasMoreElements()){String name headerNames.nextElement();String value req.getHeader(name);//根据 neme 获取请求头的 valueSystem.out.println(请求头名为 name ---------对应请求头的值为 value);}} } 查看控制台 3、实例 查看客户端是谷歌浏览器还是火狐浏览器 package cn.lemon.request;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(/ServletRequestDemo04) public class ServletRequestDemo04 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {doGet(request,response);}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//获取请求头数据 user_agentString agent request.getHeader(user-agent);//判断浏览器的 agent 版本if (agent.contains(Chrome)){System.out.println(客户端使用的是谷歌浏览器);}else if (agent.contains(Firefox)){System.out.println(客户端使用的是火狐浏览器);}} } 4、实例防盗链 package cn.lemon.request;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(/ServletRequestDemo05) public class ServletRequestDemo05 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {doGet(request,response);}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//获取请求头的数据 refererString referer request.getHeader(referer);System.out.println(referer);//防盗链if (referer ! null){if (referer.contains(ServletRequestDemo04)){response.setContentType(text/html;charsetutf-8);response.getWriter().write(播放电影);}else {//盗链response.setContentType(text/html;charsetutf-8);response.getWriter().write(想看电影来快播.....);}}} } 五、request 获取请求体的数据 1、提醒 请求体只有POST请求方式才有请求体在请求体中封装了POST请求的请求参数获取流对象再从流对象中拿数据。 2、方法 BufferedReader getReader()获取字符输入流只能操作字符数据ServletInputStream getInputStream()获取字节输入流可以操作所有类型数据 3、实例 先写一个 input.html !DOCTYPE html html langen headmeta charsetUTF-8title文本输入框/title /head body form actionServletRequestDemo06 methodpost!--只能使用POST方式才能获取请求体--input typetext nameusername value请输入姓名brinput typetext namepassword value请输入密码brinput typesubmit value提交 /form /body /html 再写一个 Java 类 ServleRequestDemo06.java 获取提交数据 package cn.lemon.request;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.BufferedReader; import java.io.IOException;WebServlet(/ServletRequestDemo06) public class ServletRequestDemo06 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {doGet(request,response);}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//获取请求体消息请求参数BufferedReader bufferedReader request.getReader();//获取字符流String line null;while ((line bufferedReader.readLine()) ! null){//读取一行数据System.out.println(line);}} } 六、获取请求的通用方式 不论get请求方式还是post请求方式都可以使用下列方法来获取请求参数 String getParameter(String name):根据参数名称获取参数值String[] getParameterValues(String name)根据参数名称获取参数值的数组如hobbyxxhobbygameEnumerationString getParameterNames():获取所有请求的参数名称MapString,String[] getParameterMap():获取所有参数的map集合 案例 先写一个 regist.html !DOCTYPE html html langen headmeta charsetUTF-8title注册页面/title /head body form action/project/ServletRequestDemo07 methodpostinput typetext placeholder请输入用户名 nameusernamebrinput typetext placeholder请输入密码 namepasswordbrinput typecheckbox namehobby valuegame游戏input typecheckbox namehobby valuestudy学习brinput typesubmit value注册 /form /body /html 再写一个测试类 ServletRequstDemo07.java package cn.lemon.request;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.Arrays; import java.util.Enumeration; import java.util.Map;WebServlet(/ServletRequestDemo07) public class ServletRequestDemo07 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {doGet(request,response);}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {String username request.getParameter(username);//根据参数名称获取参数值System.out.println(username);String[] hobby request.getParameterValues(hobby);//根据参数名称获取参数数组System.out.println(Arrays.toString(hobby));//只能得到一个参数String hobby2 request.getParameter(hobby);System.out.println(hobby2);System.out.println(--------------);//得到所有的参数名EnumerationString names request.getParameterNames();while (names.hasMoreElements()) {String name names.nextElement();String value request.getParameter(name);System.out.println(name :\t value);}System.out.println(-----------);//得到所有的参数的Map形式MapString, String[] parameterMap request.getParameterMap();for (String key : parameterMap.keySet()) {System.out.println(key Arrays.toString(parameterMap.get(key)));}} } 七、中文乱码的解决 get方式tomcat 8 已经将get方式乱码问题解决了post方式在获取参数前设置request的编码request.setCharacterEncoding(utf-8); 案例 新建 input02.html !DOCTYPE html html langen headmeta charsetUTF-8title登录/title /head body form action/project/ServletRequestDemo08 methodpostinput typetext nameusername value请输入用户名brinput typetext namepassword value请输入密码brinput typesubmit value提交 /form /body /html 再建一个 ServletRequestDemo08.java package cn.lemon.request;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(/ServletRequestDemo08) public class ServletRequestDemo08 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//设置编码格式request.setCharacterEncoding(utf-8);//获取参数usernameString username request.getParameter(username);System.out.println(username);}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doPost(request,response);} } 八、请求转发 一种在服务器内部的资源跳转方式 通过request对象获取请求转发器对象RequestDispatcher getRequestDispatcher(String path) 使用RequestDispatcher对象来进行转发forward(ServletRequest request, ServletResponse response) 特点 浏览器地址栏路径不发生变化只能转发到当前服务器内部资源中转发是一次请求。 案例 新建一个ServletRequestDemo09.java package cn.lemon.request;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(/ServletRequestDemo09) public class ServletRequestDemo09 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request,response);}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//请求转发转发路径不需要加虚拟目录重定向需要加虚拟目录request.getRequestDispatcher(/ServletRequestDemo10).forward(request,response);} } 新建一个ServletRequestDemo10.java package cn.lemon.request;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(/ServletRequestDemo10) public class ServletRequestDemo10 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request,response);}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.getWriter().print(ServletRequestDemo10 被访问了通过 ServletRequestDemo9 请求转发过来的);} } 当访问ServletRequestDemo09.java 时它直接跳到ServletRequestDemo10.java 九、共享数据 域对象一个有作用范围的对象可以在范围内共享数据 request域代表一次请求的范围一般用于请求转发的多个资源中共享数据 方法 void setAttribute(String name,Object obj):存储数据Object getAttitude(String name):通过键获取值void removeAttribute(String name):通过键移除键值对 案例 新建一个ServletRequestDemo09.java package cn.lemon.request;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(/ServletRequestDemo09) public class ServletRequestDemo09 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request,response);}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//在request作用域存储数据request.setAttribute(name1,存入数据的Object01);request.setAttribute(name2,存入数据的Object02);request.setAttribute(name3,存入数据的Object03);request.setAttribute(name4,存入数据的Object04);//请求转发转发路径不需要加虚拟目录重定向需要加虚拟目录request.getRequestDispatcher(/ServletRequestDemo10).forward(request,response);} } 新建一个ServletRequestDemo10.java package cn.lemon.request;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(/ServletRequestDemo10) public class ServletRequestDemo10 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request,response);}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {Object obj request.getAttribute(name1);//取出数据response.getWriter().print(obj);//打印数据response.getWriter().print(ServletRequestDemo10 被访问了通过 ServletRequestDemo9 请求转发过来的);} }
http://www.hkea.cn/news/14493084/

相关文章:

  • 郑州建站程序自己能否建立公司网站
  • 西安网站推广排名绵阳 网站开发
  • 河北邯郸做网站的公司官方网站建设 招标公告
  • 太原网站空间苏宁网站开发人员工资
  • 零基础1小时快速建站运涛网站建设
  • 做服装广告素材网站实时新闻最新消息
  • 中国建筑网建设通网站安装完wordpress主题
  • 移动互联网网站建设个人备案挂企业网站
  • 西安网站制作西安搜推宝百度小说排行榜风云榜单
  • 手机做无水印短视频网站ftp网站 免费
  • 聊城网站开发个人雄安专业网站建设公司
  • 易货网站开发wordpress4.8 汉化
  • qq发网站链接怎么做网站建设公司生存
  • 属于c2c网站的有哪几个网站建设简洁
  • 网站突然掉排名360浏览器有些网页打不开是什么原因
  • 杭州网站建设案例工程网站开发
  • 湖南网站建设哪家有在家做十字绣兼职网站
  • 国外校园网站建设分析免费图片素材网
  • 网站 建站模式国外网站注册
  • 快速提升网站关键词排名微信小程序模板网站
  • 工伤保险网站农村电商平台
  • 爱用建站官网广西住房城乡建设厅官方网站
  • php网站后台进不去通州区网站制作
  • 网页特效 网页素材的网站推广任务发布平台app
  • 网站推广广州市地图
  • 重庆网站开发培训网站页面怎么算
  • 南通制作网站公司东丽网站建设
  • 自己做的网站打开空白网站开发费用一般为多少
  • 汕头网站制作公司网络推广的主要工作内容
  • html网站结构解决方案wordpress导入链接生成文章