Ⅰ 关于如何在java的web应用获取服务器资源
我曾经试图在applet中通过读取服务器上的一个xml文件来创建一棵树型结构。在寻找了很多回资料后,发觉这答种做法好像行不通。Applet是运行在客户端的脚本,个人认为很难或者是无法获取服务器端的资源。
通过这次的学习,我掌握了几种获取服务器资源的方法。归纳如下:
1.在servlet中通过getServletContext().getRealPath(“”)可以获得服务器某个资源的真实路径,然后可以通过创建URL,或者创建IO流来获取资源。
2.在servlet中通过getServletContext().getResourceAsStream(“”)来获得资源流。
3.在jsp中通过pageContext来获得ServletContext对象pageContext.getServletContext(),然后用1,2种方法都可以获得服务器资源。
4.在一般的javaBean中,通过this.getClass().getResourceAsStream(“”)可以获得和javaBean的class文件一个目录下的资源。
Ⅱ 如何通过Java获取一般网页的内容 如何通过Java获取加密网页的内容(服务器进行了ssl配置)
public class SocketTest {
public static void main(String[] args) {
//你想获取代码的网站
String strServer = "www..com";
//起始页面,/为根页
String strPage = "/";
try
{
//设置端口,通常http端口不就是80罗,你在地址栏上没输就是这个值
int port = 80;
//用域名反向获得IP地址
InetAddress addr = InetAddress.getByName(strServer);
//建立一个Socket
Socket socket = new Socket(addr, port);
//发送命令,无非就是在Socket发送流的基础上加多一些握手信息,详情请了解HTTP协议
BufferedWriter wr = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream(), "UTF-8"));
wr.write("GET " + strPage + " HTTP/1.0\r\n");
wr.write("HOST:" + strServer + "\r\n");
wr.write("Accept:*/*\r\n");
wr.write("\r\n");
wr.flush();
//接收Socket返回的结果,并打印出来
BufferedReader rd = new BufferedReader(new InputStreamReader(socket.getInputStream()));
String line;
while ((line = rd.readLine()) != null)
{
System.out.println(line);
}
wr.close();
rd.close();
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
Ⅲ 使用java语言如何获取用户正在浏览的网站地址信息(这个网站不是自己的web应用,即用户访问别的应用..)
1L的在开玩笑吗? 你用log4j还能记录别的web的日志?
如果用户是从你的web程序通过点击链接之类访问的其他web的话 获取就很简单了 因为起始的地方是你的web程序 获取的方法有很多
但如果是直接输入的url 这个就没法了 因为这一个请求就已经直接到别人的web了 不过你可以尝试一下用js监控地址栏的变化 然后异步传回 不过这种监控可能不准确 因为别人跳转的时候不一定你的ajax正好把完整的url传回
或者你看一下 java.net网络编程方面的只是 应该可以监控到网络信息
Ⅳ 如何用javaweb实现,当点击读取按钮时,获取到输入框的所输入的网址,并将网页显示在读取按钮下面
不知道你是不是要这效果<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<htmlxmlns="http://www.w3.org/1999/xhtml">
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>
<title>无标题文档</title>
<script>
functionbtn(){
document.getElementById('myframe').src=document.getElementById('in').value;
document.getElementById('myframe').contentWindow.location.reload(true);
}
</script>
</head>
<bodystyle="text-align:center">
<divstyle="border:1pxsolidred;width:200px;height:200px;margin:0auto">
<p>URL:<inputid="in"/></p>
<buttonid="btn"style="width:75px"onclick="btn()">读取</button>
</div>
<div>
<p>
<iframeid="myframe"width="800"height="500"src="http://www..com"></iframe>
</p>
</div>
</body>
</html>
Ⅳ 如何从一个javaweb项目跳转到另外一个javaweb项目主页
可以使用JavaScript做,代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<script language="javascript" type="text/jscript"> <!--JavaScript跳转方法-->
function loadWeb(){
window.location.href='http://www.aaaa.com';
}
</script>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body onload="loadWeb()"> <br></body>
</html>
这段代码写在项目B的主页文件里面
Ⅵ 在java web中怎么用java代码获取访问者的IP,同时根据访问者的IP判断他是属于那个城市
举个例子,假设服务器端运行的是servlet,客户端(浏览器)发送url到服务器,经过解析,服务器找到并运行相应的servlet程序,在servlet程序中可以接受到用户提交的信息,比如用户提交方式是Get方式,则servlet调用其doGet方法,在doGet方法中,可以通过request获取用户提交的数据(包括ip)
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String ip = requset.getRemoteAddr();//获取客户端ip
}
获得了ip后就可以查询ip所属地址,可以登录http://www.ip138.com/
若要自己编写软件查询,就要连接数据库。
Ⅶ java怎么获得web应用的网址
比如这个路径
http://localhost/servlet/DemoServlet?name=test
String scheme = request.getScheme();//获取请求协议-http
int serverPort = request.getServerPort();//获取服务端口号 -8080
String serverName = request.getServerName();//获取服务域名(主机名) -localhost
String requestURI = request.getRequestURI();//获取请求uri路径 -/servlet/DemoServlet
String servletPath = request.getServletPath();//获取servlet路径 -/DemoServlet
String contextPath = request.getContextPath();//获取上下文路径 -/servlet
String queryString = request.getQueryString();//获取uri请求参数 -/name=test
StringBuffer requestURL = request.getRequestURL();//获取url路径 -http://localhost/servlet/DemoServlet