将Java Servlet连接到浏览器
我以前试过这个问题,但没有成功,但那可能是我的错,所以我会尽可能详细地回答 (甲) 我有一个编译过的java类,它返回hello world字符串。下面是该文件的源代码。配置web.xml设置后,我能够从指向localhost的浏览器中获得良好的结果。这完全按照计划进行 第二部分) 我有一个HTML登录页,其中只有一个链接,按下该链接时,将读取本地文本文件并替换其中的内容。这也完全按照计划进行 A部分意味着我能够让客户端调用服务器端java类文件并获得输出。B部分意味着我可以在按下按钮后替换网页的一部分 我的问题,从这一点来说,是很直截了当的。我想合并这两个概念,这样当按下B部分的链接时,更新的文本将反映A部分的“hello world”结果集 提前谢谢 A部分代码:将Java Servlet连接到浏览器,java,javascript,ajax,servlets,Java,Javascript,Ajax,Servlets,我以前试过这个问题,但没有成功,但那可能是我的错,所以我会尽可能详细地回答 (甲) 我有一个编译过的java类,它返回hello world字符串。下面是该文件的源代码。配置web.xml设置后,我能够从指向localhost的浏览器中获得良好的结果。这完全按照计划进行 第二部分) 我有一个HTML登录页,其中只有一个链接,按下该链接时,将读取本地文本文件并替换其中的内容。这也完全按照计划进行 A部分意味着我能够让客户端调用服务器端java类文件并获得输出。B部分意味着我可以在按下按钮后替换网页
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的基本知识: