包含12306java程序的词条
本篇文章给大家谈谈12306java程序,以及对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、请教java尝试模拟登录12306时遇到的一个问题
- 2、12306是用java建立的么
- 3、java编写火车售票系统
- 4、请编写一个java程序,将用户输入的高铁速度km/h转换成m/s,输出结果?
- 5、12306软件在手机上突然不能运行是怎么回事
- 6、《转》我要回家!教你如何秒杀12306,JAVA程序抢票成功!
请教java尝试模拟登录12306时遇到的一个问题
首先12306网站前缀为“https://” 表明是用SSL加密。
用HttpClient去模拟发送请求时,对于URL用为“https”时,先要解决证书问题,有两种解决方案:
在查找相关资料时,对于这种方法有点麻烦,最后就没有去尝试,有兴趣的朋友可以试试
扩展HttpClient 类实现自动接受证书,因为这种方法自动接收所有证书,因此存在一定的安全问题,所以在使用这种方法前请仔细考虑您的系统的安全需求。
具体的步骤如下:
•提供一个自定义的socket factory (test.MySecureProtocolSocketFactory )。这个自定义的类必须实现接口
org.apache.commons.httpclient.protocol.SecureProtocolSocketFactory ,在实现接口的类中调用自定义的
X509TrustManager(test.MyX509TrustManager)
•创建一个org.apache.commons.httpclient.protocol.Protocol 的实例,指定协议名称和默认的端口号
Protocol myhttps = new Protocol("https", new MySecureProtocolSocketFactory (), 443);
•注册刚才创建的https 协议对象
Protocol.registerProtocol("https ", myhttps);
具体代码如下:
1 package org.study.meteor.ticket.util;
2
3 import java.io.IOException;
4 import java.net.InetAddress;
5 import java.net.InetSocketAddress;
6 import java.net.Socket;
7 import java.net.SocketAddress;
8 import java.net.UnknownHostException;
9 import java.security.KeyManagementException;
10 import java.security.NoSuchAlgorithmException;
11 import java.security.cert.CertificateException;
12 import java.security.cert.X509Certificate;
13
14 import javax.net.SocketFactory;
15 import javax.net.ssl.SSLContext;
16 import javax.net.ssl.TrustManager;
17 import javax.net.ssl.X509TrustManager;
18
19 import org.apache.commons.httpclient.ConnectTimeoutException;
20 import org.apache.commons.httpclient.params.HttpConnectionParams;
21 import org.apache.commons.httpclient.protocol.SecureProtocolSocketFactory;
22
23 /**
24 * MySecureProtocolSocketFactory.java.java Create on 2012-9-26下午1:15:03
25 *
26 *
27 * Copyright (c) 2012 by MTA.
28 *
29 * @author lmeteor
30 * @Email txin0814@sina.com
31 * @description 自定义的socket factory 实现自动接受证书
32 * @version 1.0
33 */
34 public class MySecureProtocolSocketFactory implements
35 SecureProtocolSocketFactory
36 {
37
38 private SSLContext sslcontext = null;
39
40 private SSLContext createSSLContext()
41 {
42 SSLContext sslcontext = null;
43 try
44 {
45 sslcontext = SSLContext.getInstance("SSL");
46 sslcontext.init(null, new TrustManager[]
47 { new TrustAnyTrustManager() }, new java.security.SecureRandom());
48 }
49 catch (NoSuchAlgorithmException e)
50 {
51 e.printStackTrace();
52 }
53 catch (KeyManagementException e)
54 {
55 e.printStackTrace();
56 }
57 return sslcontext;
58 }
59
60 private SSLContext getSSLContext()
61 {
62 if (this.sslcontext == null)
63 {
64 this.sslcontext = createSSLContext();
65 }
66 return this.sslcontext;
67 }
68
69 public Socket createSocket(Socket socket, String host, int port,
70 boolean autoClose) throws IOException, UnknownHostException
71 {
72 return getSSLContext().getSocketFactory().createSocket(socket, host,
73 port, autoClose);
74 }
75
76 public Socket createSocket(String host, int port) throws IOException,
77 UnknownHostException
78 {
79 return getSSLContext().getSocketFactory().createSocket(host, port);
80 }
81
82 public Socket createSocket(String host, int port, InetAddress clientHost,
83 int clientPort) throws IOException, UnknownHostException
84 {
85 return getSSLContext().getSocketFactory().createSocket(host, port,
86 clientHost, clientPort);
87 }
88
89 public Socket createSocket(String host, int port, InetAddress localAddress,
90 int localPort, HttpConnectionParams params) throws IOException,
91 UnknownHostException, ConnectTimeoutException
92 {
93 if (params == null)
94 {
95 throw new IllegalArgumentException("Parameters may not be null");
96 }
97 int timeout = params.getConnectionTimeout();
98 SocketFactory socketfactory = getSSLContext().getSocketFactory();
99 if (timeout == 0)
100 {
101 return socketfactory.createSocket(host, port, localAddress,
102 localPort);
103 }
104 else
105 {
106 Socket socket = socketfactory.createSocket();
107 SocketAddress localaddr = new InetSocketAddress(localAddress,
108 localPort);
109 SocketAddress remoteaddr = new InetSocketAddress(host, port);
110 socket.bind(localaddr);
111 socket.connect(remoteaddr, timeout);
112 return socket;
113 }
114 }
115
116 // 自定义私有类
117 private static class TrustAnyTrustManager implements X509TrustManager
118 {
119
120 public void checkClientTrusted(X509Certificate[] chain, String authType)
121 throws CertificateException
122 {
123 }
124
125 public void checkServerTrusted(X509Certificate[] chain, String authType)
126 throws CertificateException
127 {
128 }
129
130 public X509Certificate[] getAcceptedIssuers()
131 {
132 return new X509Certificate[]
133 {};
134 }
135 }
136 }
12306是用java建立的么
不大确定,从页面源码是看不出后台是用什么开发的,因为无论JSP还是PHP都会被解释称HTML。
因为12306很大的可能性是由阿里巴巴开发的,而淘宝是由php(前台,动态页面的展示) + Java(后台,数据的处理、交互)开发的。
所以12306用Java开发的可能性很大,也有可能是用php + Java,因为前台的展示方面php要优于Java。
能肯定的是,用了AJAX局技术,但是没有达到全网页局部刷新,有部分达不到局部刷新。
java编写火车售票系统
你说的这个程序应该是不难的,只不过N久没有写过javaswing 了
还有就是java没有多继承的,只有多实现接口的
继承的关键字是:extends
接口的关键字是:interface
请编写一个java程序,将用户输入的高铁速度km/h转换成m/s,输出结果?
代码已测试无误
望采纳,感谢
public class Test {
public static void main(String[] args) {
System.out.println("请输入高铁速度大小,多少km/h?");
Scanner sc=new Scanner(System.in);
double speed=sc.nextDouble();
System.out.println("高铁速度大小为"+speed/3.6+"m/s");
}
}
12306软件在手机上突然不能运行是怎么回事
这里我是教你如何安装游戏的 安装软件和游戏一样
jar格式的下载文件,是java程序的安装文件。虽然在电脑上显示的图标是压缩文件样式,但绝对不能解压缩,否则无法安装!java程序的安装方法我们在下面介绍。
Symbian S60系统手机软件的安装:
Symbian S60是目前应用最广的智能手机系统,机型众多。代表机型如诺基亚N95、6681、N70,松下X800等等。
此类手机的软件安装文件的格式(扩展名)为.sis。此类文件的安装也比较容易,首先要通过读卡器把.sis格式的安装文件存储到手机的存储卡中,然后再将手机存储卡插回到手机中,最后再在手机上运行手机自带或用户自己安装的手机文件管理器,找到该安装文件并点击安装即可。
[attachment=9104] [attachment=9105]
《转》我要回家!教你如何秒杀12306,JAVA程序抢票成功!
加个权限是对的,另外需要抢票的明天早上就赶紧抢吧 估计软件马上要传遍微博了
12306java程序的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、12306java程序的信息别忘了在本站进行查找喔。