java获取服务器文件,怎样用url返回

Python017

java获取服务器文件,怎样用url返回,第1张

第一种; response.setStatus(302)

response.setHeader("location", "/dayX/MyHtml.html") 该方式可以重定向到服务器指定页面

当然还有以下方式:

第二种;请求转发

请求转发是指将请求再转发到另一资源(一般为JSP或Servlet)。此过程依然在同一个请求范围内,转发后浏览器地址栏内容不变

请求转发使用RequestDispatcher接口中的forward()方法来实现,该方法可以把请求转发到另外一个资源,并让该资源对浏览器的请求进行响应request.getRequestDispatcher(path) .forward(request,response)

第三种 重定向

重定向是指页面重新定位到某个新地址,之前的请求失效,进入一个新的请求,且跳转后浏览器地址栏内容将变为新的指定地址

重定向是通过HttpServletResponse对象的sendRedirect()来实现,该方法相当于浏览器重新发送一个请求

response.sendRedirect(path)

1、在远程server里搭建一个http服务,并支持某种服务端语言(如.net或php之类)

2、用服务端语言获取到服务器的磁盘信息,把结果输出

3、在本地用JS写一段AJAX脚本,远程请求服务端写好的程序,得到结果,并展示给用户

<html>

<head>

<title>提取硬盘序列号</title>

<script>

function disk() {//硬盘序列号 信息

var locator = new ActiveXObject ("WbemScripting.SWbemLocator")

var service = locator.ConnectServer(".")

var properties = service.ExecQuery("SELECT * FROM Win32_DiskDrive")

var e = new Enumerator (properties)

document.write("<table border=1>")

for (!e.atEnd()e.moveNext ())

{

var p = e.item ()

document.write("<tr>")

document.write("<td>" + p.signature + "</td>")

document.write("</tr>")

}

document.write("</table>")

}

</script>

</head>

<body>

<input type="button" value="硬盘序列号" onclick="disk()">

</body>

</html>

在这上找的代码:

对于写过ASP或.net 的人来说,通过asp或.net 语言来获得客户端的硬件信息是很熟悉的.但如何通过javascript这种客户端脚本来获得客户端的信息呢?请看以下实例:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>

<head>

<title>javascript获得客户端硬件信息-www.web2bar.cn/</title>

<meta name="GENERATOR" content="Microsoft Visual Studio .NET

7.1">

<meta name="vs_targetSchema"

content="http://schemas.microsoft.com/intellisense/ie5">

<script id=clientEventHandlersJS language=javascript>

<!--

function Button2_onclick() {//CPU 信息

var locator = new ActiveXObject ("WbemScripting.SWbemLocator")

var service = locator.ConnectServer(".")

var properties = service.ExecQuery("SELECT * FROM Win32_Processor")

var e = new Enumerator (properties)

document.write("<table border=1>")

for (!e.atEnd()e.moveNext ())

{

var p = e.item ()

document.write("<tr>")

document.write("<td>" + p.Caption + "</td>")

document.write("<td>" + p.DeviceID + "</td>")

document.write("<td>" + p.Name + "</td>")

document.write("<td>" + p.CpuStatus + "</td>")

document.write("<td>" + p.Availability + "</td>")

document.write("<td>" + p.Level + "</td>")

document.write("<td>" + p.ProcessorID + "</td>")

document.write("<td>" + p.SystemName + "</td>")

document.write("<td>" + p.ProcessorType + "</td>")

document.write("</tr>")

}

document.write("</table>")

}

function Button1_onclick() {//软盘信息

var locator = new ActiveXObject ("WbemScripting.SWbemLocator")

var service = locator.ConnectServer(".")

var properties = service.ExecQuery("SELECT * FROM Win32_FloppyDrive")

var e = new Enumerator (properties)

document.write("<table border=1>")

for (!e.atEnd()e.moveNext ())

{

var p = e.item ()

document.write("<tr>")

document.write("<td>" + p.Description + "</td>")

document.write("<td>" + p.DeviceID + "</td>")

document.write("<td>" + p.Status + "</td>")

document.write("<td>" + p.Manufacuturer + "</td>")

document.write("</tr>")

}

document.write("</table>")

}

function Button1_onclick() {//CD-ROM 信息

var locator = new ActiveXObject ("WbemScripting.SWbemLocator")

var service = locator.ConnectServer(".")

var properties = service.ExecQuery("SELECT * FROM Win32_CDROMDrive")

var e = new Enumerator (properties)

document.write("<table border=1>")

for (!e.atEnd()e.moveNext ())

{

var p = e.item ()

document.write("<tr>")

document.write("<td>" + p.Caption + "</td>")

document.write("<td>" + p.Description + "</td>")

document.write("<td>" + p.Drive + "</td>")

document.write("<td>" + p.Status + "</td>")

document.write("<td>" + p.MediaLoaded + "</td>")

document.write("</tr>")

}

document.write("</table>")

}

function Button1_onclick() {//键盘信息

var locator = new ActiveXObject ("WbemScripting.SWbemLocator")

var service = locator.ConnectServer(".")

var properties = service.ExecQuery("SELECT * FROM Win32_Keyboard")

var e = new Enumerator (properties)

document.write("<table border=1>")

for (!e.atEnd()e.moveNext ())

{

var p = e.item ()

document.write("<tr>")

document.write("<td>" + p.Description + "</td>")

document.write("<td>" + p.Name + "</td>")

document.write("<td>" + p.Status + "</td>")

document.write("</tr>")

}

document.write("</table>")

}

function Button1_onclick() {//主板信息

var locator = new ActiveXObject ("WbemScripting.SWbemLocator")

var service = locator.ConnectServer(".")

var properties = service.ExecQuery("SELECT * FROM Win32_BaseBoard")

var e = new Enumerator (properties)

document.write("<table border=1>")

for (!e.atEnd()e.moveNext ())

{

var p = e.item ()

document.write("<tr>")

document.write("<td>" + p.HostingBoard + "</td>")

document.write("<td>" + p.Manufacturer + "</td>")

document.write("<td>" + p.PoweredOn + "</td>")

document.write("<td>" + p.Product + "</td>")

document.write("<td>" + p.SerialNumber + "</td>")

document.write("<td>" + p.Version + "</td>")

document.write("</tr>")

}

document.write("</table>")

}

//-->

</script>

</head>

<body>

<INPUT id="Button1" type="button" value="Button"

name="Button1" language=javascript onclick="return Button1_onclick()">

</body>

</html>

使用javascript方式获得客户端的信息主要的优点是,不需求服务器资源.不需求刷新网页.直接在客户端执行脚本获得显示.

在这上找到了硬盘序列号的参数:

\'获得硬盘序列号

Dim cmicWmi As New System.Management.ManagementObjectSearcher(\"SELECT * FROM Win32_DiskDrive\")

Dim Uint32 As UInt32

For Each cmicWmiObj As ManagementObject In cmicWmi.Get

Uint32 = cmicWmiObj(\"signature\")

Next

TextBox1.Text = Uint32.ToString

<%=

request.getservername()%>

服务器的域名

<%=

java.net.inetaddress.getlocalhost().gethostaddress()

%>

服务器的ip地址

<%=request.getserverport()%>

服务器正在运行的端口