javaproxy
A. 如何用java使用代理
Java中,使用proxy是通过设置java环境变量来实现的,也就是JVM的系统属性。
我们需要设置三个属性,proxySet proxyHost和proxyPort。
proxySet 是个boolean类型的,可以设置为true或者false,true代表使用代理服务器。
proxyHost 是代理服务器的IP地址
proxyPort 是代理服务器的端口地址。
我们有两种方法设置这种系统属性,
一种是命令行下运行Java程序的时候,通过参数付值
一种是在java源程序中设置。
第一种方法的格式如下:
java -DproxySet=true -DproxyHost=myProxyServer.come -DproxyPort=80 MyJavaApp
第二种方法,就是直接在源程序中通过系统属性来写,如下:
import java.util.Properties;
...
...
strProxy="221.15.5.67";
strPort="8080";
Properties systemProperties = System.getProperties();
systemProperties.setProperty("http.proxyHost",strProxy);
systemProperties.setProperty("http.proxyPort",strPort);
....
JDK1.3以上版本,只要设置了proxyHost和proxyPort就不用写proxySet了。
那么反过来,显示这些系统属性,就可以看到有没有使用代理了。
B. java使用代理访问网络的几种方法
使用Proxy来对每个连接实现代理, 这种方法只能在jdk 1.5以上的版本使用(包含jdk1.5), 优点是可以单独的设置每个连接的代理, 缺点是设置比较麻烦:
public static void main(String[] args) {
try {
URL url = new URL("http://www..com");
// 创建代理服务器
InetSocketAddress addr = new InetSocketAddress("192.168.0.254",
8080);
// Proxy proxy = new Proxy(Proxy.Type.SOCKS, addr); // Socket 代理
Proxy proxy = new Proxy(Proxy.Type.HTTP, addr); // http 代理
// 如果我们知道代理server的名字, 可以直接使用
// 结束
URLConnection conn = url.openConnection(proxy);
InputStream in = conn.getInputStream();
// InputStream in = url.openStream();
String s = IOUtils.toString(in);
System.out.println(s);
} catch (Exception e) {
e.printStackTrace();
}
}
不是很详细, 有什么问题还望大家指正
C. Java中的JDK为我们提供了一个名为Proxy的这样一个类,当调用它的newProxyInstan
这是使用了Java动态代理,使用的前提是,被代理的目标类,必须是某接口的实现类。但现在项目一般如果能使用代理,都是cglib代理,Java动态代理正是因为有了使用前提,被限制了。具体Java动态代理和cglib代理的原理,建议你到相关网站看看,比如开源中国,这里面很多高手,他们的文章讲得更清晰、透彻,希望对你有帮助。
D. ABAP Proxy和JAVA Proxy的区别
Proxy分为两种,ABAPProxy和JAVAProxy。他们之间的不同不仅在于语言,ABAPProxy在应用端(R/3等)生成的,JAVAProxy是从IR中生成的.JAR文件。但是它们都是依据messageinterface中的WSDL产生的。 Proxy具有与messageinterface相同的属性:Inbound,Outbound,Synchronous,&n...
Proxy分为两种,ABAP Proxy和JAVA Proxy。他们之间的不同不仅在于语言,ABAP Proxy在应用端(R/3等)生成的,JAVAProxy是从IR中生成的.JAR文件。但是它们都是依据message interface中的WSDL产生的。
Proxy具有与message interface相同的属性:Inbound, Outbound, Synchronous, Asynchronous
做ABAP Proxy之前,要用 RZ70去建立R/3与PI的连接。这里还可能需要用SM59去定义相应的RFC Destination。用SMGW可以在PI的端找到相应的Service。(S-y$l4A%v' ^+c#U
Table:SPROXSET,是用来设置SPROXY权限的,可以查找在这张表里查找自己是不是有权限。4 S8{5w:U9K
T-CODE:SPROXY就是在Application端生成PROXY的主要工具,在这之前,你需要在PI端设置好相应的Message Interface,SAP端才能根据Message Interface的WSDL生成ABAP Proxy
JAVAProxy相对简单,只要在Message Interface中右击相应的Message Interface,会有Java Proxy Generation选项,就可以自动生成JAVAProxy,.JAR文件,开发人员可以对其进行部署。