Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/431.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将Java Servlet连接到浏览器_Java_Javascript_Ajax_Servlets - Fatal编程技术网

将Java Servlet连接到浏览器

将Java Servlet连接到浏览器,java,javascript,ajax,servlets,Java,Javascript,Ajax,Servlets,我以前试过这个问题,但没有成功,但那可能是我的错,所以我会尽可能详细地回答 (甲) 我有一个编译过的java类,它返回hello world字符串。下面是该文件的源代码。配置web.xml设置后,我能够从指向localhost的浏览器中获得良好的结果。这完全按照计划进行 第二部分) 我有一个HTML登录页,其中只有一个链接,按下该链接时,将读取本地文本文件并替换其中的内容。这也完全按照计划进行 A部分意味着我能够让客户端调用服务器端java类文件并获得输出。B部分意味着我可以在按下按钮后替换网页

我以前试过这个问题,但没有成功,但那可能是我的错,所以我会尽可能详细地回答

(甲) 我有一个编译过的java类,它返回hello world字符串。下面是该文件的源代码。配置web.xml设置后,我能够从指向localhost的浏览器中获得良好的结果。这完全按照计划进行

第二部分) 我有一个HTML登录页,其中只有一个链接,按下该链接时,将读取本地文本文件并替换其中的内容。这也完全按照计划进行

A部分意味着我能够让客户端调用服务器端java类文件并获得输出。B部分意味着我可以在按下按钮后替换网页的一部分

我的问题,从这一点来说,是很直截了当的。我想合并这两个概念,这样当按下B部分的链接时,更新的文本将反映A部分的“hello world”结果集

提前谢谢

A部分代码:

package mypkg;

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class HelloServlet extends HttpServlet {
   @Override
   public void doGet(HttpServletRequest request, HttpServletResponse response)
               throws IOException, ServletException {

      response.setContentType("text/html;charset=UTF-8");

      PrintWriter out = response.getWriter();

      try {
         out.println("<!DOCTYPE html>");
         out.println("<html><head>");
         out.println("<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'>");
         out.println("<title>Hello, World</title></head>");
         out.println("<body>");
         out.println("<h1>Hello, world!</h1>");  
         out.println("</body>");
         out.println("</html>");
      } finally {
         out.close();  
      }
   }
}
包mypkg;
导入java.io.*;
导入javax.servlet.*;
导入javax.servlet.http.*;
公共类HelloServlet扩展了HttpServlet{
@凌驾
public void doGet(HttpServletRequest请求、HttpServletResponse响应)
抛出IOException、ServletException{
setContentType(“text/html;charset=UTF-8”);
PrintWriter out=response.getWriter();
试一试{
out.println(“”);
out.println(“”);
out.println(“”);
out.println(“你好,世界”);
out.println(“”);
out.println(“你好,世界!”);
out.println(“”);
out.println(“”);
}最后{
out.close();
}
}
}
B部分代码

<p id="mySentence">
<a href="#" onclick="javascript:getNewContent();">Click here to update the page</a>.
When you click the link, this content will be replaced.</p>

<script type="text/javascript">
var http = createRequestObject();
function createRequestObject() {
    var objAjax;
    var browser = navigator.appName;
    if(browser == "Microsoft Internet Explorer"){
        objAjax = new ActiveXObject("Microsoft.XMLHTTP");
    }else{
        objAjax = new XMLHttpRequest();
    }
    return objAjax;
}

function getNewContent(){
http.open('get','newcontent.txt');
http.onreadystatechange = updateNewContent;
http.send(null);
return false;
}

function updateNewContent(){
if(http.readyState == 4){
document.getElementById('mySentence').innerHTML = http.responseText;
}
}
</script>

. 单击链接时,此内容将被替换

var http=createRequestObject(); 函数createRequestObject(){ var objAjax; var browser=navigator.appName; 如果(浏览器==“Microsoft Internet Explorer”){ objAjax=newActiveXObject(“Microsoft.XMLHTTP”); }否则{ objAjax=newXMLHttpRequest(); } 返回objax; } 函数getNewContent(){ open('get','newcontent.txt'); http.onreadystatechange=updateNewContent; http.send(空); 返回false; } 函数updateNewContent(){ 如果(http.readyState==4){ document.getElementById('myEntence')。innerHTML=http.responseText; } }
了解如何实现servlet。在此处尝试:您可以在此处学习servlet的基本知识: