如何用Java后端处理JS.XHR请求

  • Touching searching engine destroies dream to utilize php in tomcat vector.
  • The brave isn’t knocked down,turn its path to java back-end.

Java Servlet Bible

  • schematic of interaction between JS front-end and Java back-end
    在这里插入图片描述

Question

  1. 如何利用Java back-end 处理front-end的JS请求?

在Java后端处理JS的HTTPRequest请求,可以通过以下步骤实现:

  1. 创建一个Java后端服务器,可以使用Java的Web框架,如Spring Boot或Java Servlet等。
  2. 在服务器端编写一个处理HTTP请求的接口或控制器。这个接口或控制器将接收来自前端JS的HTTP请求。
  3. 在接口或控制器中,可以使用Java提供的内置类库或第三方库来处理HTTP请求。例如,可以使用Java的HttpURLConnection类或Apache HttpClient库来发送HTTP请求,并获取响应数据。
  4. 解析前端JS发送的HTTP请求参数和数据。可以使用Java的HttpServletRequest对象来获取请求参数和数据。
  5. 根据请求的内容进行相应的处理逻辑。例如,可以根据请求参数执行相应的业务逻辑,查询数据库,生成响应数据等。
  6. 将处理结果封装成HTTP响应,并返回给前端JS。可以使用Java的HttpServletResponse对象来设置响应状态码、头部信息和响应体数据。
  1. 什么是Java Servlet框架,需要部署/配环境吗?
  • 应该和python一样是个库函数

安装好JDK和Tomcat后,您不需要安装其他任何东西来部署Java Servlet。以下是您需要进行的步骤:

  1. 开发Java Servlet:使用任何Java集成开发环境(IDE)编写Java Servlet代码。
  2. 编译代码:使用JDK中的javac命令编译Java Servlet代码,生成.class文件。
  3. 创建Web应用程序:在Tomcat的webapps目录下创建一个新的目录,作为您的Web应用程序。
  4. 配置Web应用程序:在Web应用程序目录下创建WEB-INF目录,并在其中创建web.xml文件。在web.xml文件中配置Servlet和其他必要的组件。
  5. 将编译后的.class文件复制到Web应用程序目录下的WEB-INF/classes目录中。
  6. 启动Tomcat:运行Tomcat服务器,在浏览器中访问http://localhost:8080/来验证Tomcat是否正常工作。
  7. 部署Web应用程序:将Web应用程序目录复制到Tomcat的webapps目录下。
  8. 访问Servlet:在浏览器中访问http://localhost:8080/您的应用程序名称/Servlet的URL映射路径,即可访问部署的Java Servlet。
  1. 可以用python作为后端吗?
    理论上什么语言作后端都行

Java Servlet后端代码的书写

Bible++

简介

在这里插入图片描述
作用:

  1. 读取客户端(浏览器)发送的显式的数据。这包括网页上的 HTML 表单,或者也可以是来自 applet 或自定义的 HTTP 客户端程序的表单。
  2. 读取客户端(浏览器)发送的隐式的 HTTP 请求数据。这包括 cookies、媒体类型和浏览器能理解的压缩格式等等。
  3. 处理数据并生成结果。这个过程可能需要访问数据库,执行 RMI 或 CORBA 调用,调用 Web 服务,或者直接计算得出对应的响应。
  4. 发送显式的数据(即文档)到客户端(浏览器)。该文档的格式可以是多种多样的,包括文本文件(HTML 或 XML)、二进制文件(GIF 图像)、Excel 等。
  5. 发送隐式的 HTTP 响应到客户端(浏览器)。这包括告诉浏览器或其他客户端被返回的文档类型(例如 HTML),设置 cookies 和缓存参数,以及其他类似的任务。

Java Servlet包:
Java Servlet 是运行在带有支持 Java Servlet 规范的解释器的 web 服务器上的 Java 类。

Servlet 可以使用 javax.servlet 和 javax.servlet.http 包创建,它是 Java 企业版的标准组成部分,Java 企业版是支持大型开发项目的 Java 类库的扩展版本。

这些类实现 Java Servlet 和 JSP 规范。在写本教程的时候,二者相应的版本分别是 Java Servlet 2.5 和 JSP 2.1。

Java Servlet 就像任何其他的 Java 类一样已经被创建和编译。在您安装 Servlet 包并把它们添加到您的计算机上的 Classpath 类路径中之后,您就可以通过 JDK 的 Java 编译器或任何其他编译器来编译 Servlet。

部署Servlet类

修改xml前,8080有效在这里插入图片描述
Servlet类存在,
在这里插入图片描述

  • 仿照runoob写HelloWorld Servlet类映射到 "/HelloWorld"路径,但访问失败
    在这里插入图片描述
    在这里插入图片描述

index.jsp 中放置java代码

在这里插入图片描述
执行Java.println
在这里插入图片描述

out.println("<p>" + message + "</p>")
  • out是一个PrintWriter对象,用于将文本写入到输出流中。

.js 与 .jsp 的区别

.js和.jsp文件是两种不同的文件类型,它们在用途和功能上有所区别。

.js文件是JavaScript文件的扩展名,它包含了JavaScript代码。JavaScript是一种脚本语言,用于在网页上实现交互和动态效果。通过在HTML文件中引入.js文件,可以将JavaScript代码嵌入到网页中,实现对网页元素的操作、表单验证、动画效果等功能。

.jsp文件是Java Server Pages的缩写,它是一种用于创建动态网页的技术。与.js文件不同,.jsp文件是在服务器端执行的,它可以包含HTML代码和Java代码在客户端请求一个.jsp文件时,服务器会将其中的Java代码执行,并将结果生成HTML响应返回给客户端。.jsp文件通常用于构建动态网页、数据库操作、用户认证等功能

总结一下:

  • .js文件是包含JavaScript代码的文件,用于实现网页的交互和动态效果。
  • .jsp文件是包含HTML和Java代码的文件,用于创建动态网页和服务器端处理。
  • 还有一件事,开启chrome的允许摄像头后,之前那些不用webcam捕获的代码都能执行,
    在这里插入图片描述

Next schedule

  1. 表单上传 ,并用 servlet类返回信息(目前尚未成功执行Java类)不了
  2. DL learning+training要完不成了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/523911.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SKF的便携式分析系统简介

1.系统简介 SKF是知名的轴承供应商。它的行业知识文档非常丰富。这里摘录一下它的当前的振动分析系统。可以在构建自己的振动分析系统时参考。它的手机应用不知道是否与传感器绑定。国内下载不方便&#xff0c;我回头找找上传后把App链接留在这里。 SKF的振动分析系统&#x…

JAVA—抽象—定义抽象类Converter及其子类WeightConverter

同样&#xff0c;我们由这道题引出抽象类&#xff0c;抽象方法这个概念。 按下面要求定义类Converter及其子类WeightConverter 定义抽象类&#xff1a;Converter&#xff1a; 定义一个抽象类Converter&#xff0c;表示换算器&#xff0c;其定义的如下&#xff1a; 一个私有…

SV学习笔记(五)

文章目录 线程的使用程序和模块什么是线程线程的概念澄清 线程的控制fork并行线程语句块fork…joinfork…join_any等待所有衍生线程停止单个线程停止多个线程停止被多次调用的任务 线程的通信写在前面event事件通知的需求semaphore旗语mailbox信箱三种通信的比较和应用 参考资料…

免疫检查点信号转导和癌症免疫治疗(文献)

目录 基础 介绍 免疫检查点的表面调控&#xff08;细胞膜层面&#xff09; ​编辑 PD-1调节 PD-L1调节 CTLA-4 调节 检查点信号通路 关于靶点研究 展望 Immune checkpoint signaling and cancer immunotherapy - PubMed (nih.gov) 基础 【中英字幕】肿瘤免疫疗法之免…

Java开发测试(第一篇):Java测试框架JUnit5

目录 1.基本介绍 2.maven中安装JUnit5 3.使用 4.JUnit5命名规则 5.JUnit5常用注解 6.JUnit5断言 7.JUnit5多个类之间的继承关系 8.JUnit5参数化 &#xff08;1&#xff09;使用场景&#xff1a; &#xff08;2&#xff09;使用前需在pom.xml文件中导入依赖 &#xff…

蓝桥杯刷题-13-子矩阵-二维滑动窗口 ಥ_ಥ

给定一个 n m &#xff08;n 行 m 列&#xff09;的矩阵。 设一个矩阵的价值为其所有数中的最大值和最小值的乘积。求给定矩阵的所有大小为 a b &#xff08;a 行 b 列&#xff09;的子矩阵的价值的和。 答案可能很大&#xff0c;你只需要输出答案对 998244353 取模后的结果。…

电力行业智能升级:IEC104网关在电网中的作用

IEC104是国际电工委员会&#xff08;IEC&#xff09;制定的一套用于电力自动化的通信协议。通过IEC104规约可以实现实时监测电力系统的状态、采集各种数据、控制设备的运行和保护等功能&#xff0c;为电力系统的安全稳定运行提供了重要的支持。 钡铼技术IEC104网关可实现对IEC-…

Java零基础入门-综合案例(File类+递归)

一、概述 java零基础教学也讲了一阵子了&#xff0c;从jdk安装到第一个java程序再到如今的java File类&#xff0c;递归思想等&#xff0c;不知道你们对于此教学有没有啥建议&#xff0c;毕竟看着浏览量不是很可人&#xff0c;所以在开启此篇前&#xff0c;我想统计一下&#x…

MyBatis操作数据库(1)

前言 在应用分层的学习时, 我们了解到web应用程序一般分为三层,即Controller, Service, Dao. 之前的案例中, 请求流程如下: 浏览器发起请求, 先请求Controller, Controller接受到请求后,调用Service进行业务逻辑处理, Service再调用Dao, 但是Dao层的数据是Mock的, 真实的数据…

JavaWeb后端——Mybatis

概述 Mybatis&#xff1a;Java程序来对数据库进行操作&#xff0c;一款优秀的持久层框架&#xff0c;用于简化JDBC的开发 SSM&#xff1a;SpringMVC、Spring、Mybatis 快速入门 步骤2&#xff1a;注意数据库连接的四要素 application.properties&#xff1a;springboot 的默…

pytorch 演示 tensor并行

pytorch 演示 tensor并行 一.原理二.实现代码 本文演示了tensor并行的原理。如何将二个mlp切分到多张GPU上分别计算自己的分块,最后做一次reduce。 1.为了避免中间数据产生集合通信,A矩阵只能列切分,只计算全部batch*seqlen的部分feature 2.因为上面的步骤每张GPU只有部分featu…

布隆过滤器详解及java实现

什么是布隆过滤器&#xff1f; 布隆过滤器&#xff08;Bloom Filter&#xff09;是一种数据结构&#xff0c;用于判断一个元素是否属于一个集合。它的特点是高效地判断一个元素是否可能存在于集合中&#xff0c;但是存在一定的误判率。 布隆过滤器的基本原理是使用一个位数组…

【STL学习】(4)vector的模拟

前言 本文将模拟实现vector的常用功能&#xff0c;目的在于更深入理解vector。 一、前置知识 在模拟之前先对vector的结构和常用接口学习&#xff0c;有一个大致了解。看源码&#xff0c;本文参考的源码是SGI版本的stl3.0。 技巧&#xff1a; 看源码不要一行一行的看&#xff…

Severt

severt是让我们自己写一些类,然后把这些类给加载Tomcat中&#xff0c;后续Tomcat收到HTTP请求(来自于浏览器)&#xff0c;就会执行到咱们上面写的代码.从而通过这些代码,完成一定的业务逻辑. 创建项目 此处创建的是一种新的项目的形式称为Maven项目,Maven是Java 中的一个的构建…

libVLC 音频立体声模式切换

在libVLC中&#xff0c;可以使用libvlc_audio_set_channel函数来设置音频的立体声模式。这个函数允许选择不同的音频通道&#xff0c;例如立体声、左声道、右声道、环绕声等。 /*** Set current audio channel.** \param p_mi media player* \param channel the audio channel…

Datacom HCIP笔记-路由策略与路由控制 之二

路由策略和策略的区别&#xff1f; 路由策略&#xff1a; 操作的对象是路由表条目&#xff0c; 实现路由过滤&#xff0c;从而实现访问控制&#xff0c;引入时过滤&#xff0c;发送和接收路由时过滤。 通过配置cost&#xff0c;来实现路径的控制。 策略路由&#xff1a; 对…

【Python】还在用print进行调试,你Out了!!!

1. 引言 Python 中最常用的函数是什么&#xff1f;像在大多数编程语言中&#xff0c;print() 函数是最常用的。我相信大多数开发者都会像我一样&#xff0c;在开发过程中多次使用它将信息进行打印。 当然&#xff0c;没有其他方法可以完全取代print()函数。不过&#xff0c;当…

QA测试开发工程师面试题满分问答9: Python中内存管理的概念、原理、使用

概念原理 Python中的内存管理是由解释器自动处理的&#xff0c;它使用引用计数和垃圾回收机制来管理内存。以下是Python内存管理的一些关键概念、设计原理和最佳实践&#xff0c;以帮助您高效使用和管理内存&#xff1a; 引用计数&#xff1a;Python使用引用计数来追踪对象的引…

谷歌浏览器如何截全屏图片?

有时候想要截取浏览器全屏&#xff0c;谷歌浏览器自带截取全屏命令&#xff0c;操作步骤如下&#xff1a; 1、按住键盘的F12或者是空白处点击鼠标右键找到检查项 2、按住ctrlshiftp&#xff0c;会出现搜索框的界面 3、搜索框中输入screen&#xff0c;选中Capture full size scr…

项目架构MVC,DDD学习

写在前面 本文一起看下项目架构DDD&#xff0c;MVC相关的内容。 1&#xff1a;MVC 不管我们做什么项目&#xff0c;自己想想其实只是做了三件事&#xff0c;如下&#xff1a; 其实&#xff0c;这三件事完全在一个类中做完也可以可以正常把项目完成的&#xff0c;就像下面这…