java加载证书,访问12306的https链接

下载12306的证书,访问12306网站,下载12306的证书

导出证书

导出完成后,导入证书

查看是否导入

java中加载证书

public static void main( String[] args ){
	PrintWriter out = null;
    BufferedReader in = null;
    String result = "";
    //设置证书
    System.setProperty("javax.net.ssl.trustStore","D:\\Program Files\\Java\\jdk1.7.0_79\\bin\\12306d.keystore");  
    System.setProperty("javax.net.ssl.trustStorePassword", "12306java");  
    try {
        URL realUrl = new URL("https://kyfw.12306.cn/otn/login/loginAysnSuggest");
        // 打开和URL之间的连接
        URLConnection conn = realUrl.openConnection();
        // 设置通用的请求属性
        conn.setRequestProperty("accept", "*/*");
        conn.setRequestProperty("connection", "Keep-Alive");
        conn.setRequestProperty("user-agent",
                "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
        // 发送POST请求必须设置如下两行
        conn.setDoOutput(true);
        conn.setDoInput(true);
        // 获取URLConnection对象对应的输出流
        out = new PrintWriter(conn.getOutputStream());
        // 发送请求参数
        out.print("loginUserDTO.user_name=aaa&userDTO.password=123456&randCode=182,51,19,130");
        // flush输出流的缓冲
        out.flush();
        // 定义BufferedReader输入流来读取URL的响应
        in = new BufferedReader(
                new InputStreamReader(conn.getInputStream()));
        String line;
        while ((line = in.readLine()) != null) {
            result += line;
        }
        System.out.println(result);
    } catch (Exception e) {
        System.out.println("发送 POST 请求出现异常!"+e);
        e.printStackTrace();
    }
    //使用finally块来关闭输出流、输入流
    finally{
        try{
            if(out!=null){
                out.close();
            }
            if(in!=null){
                in.close();
            }
        }
        catch(IOException ex){
            ex.printStackTrace();
        }
    }
}

本文由微儿博客原创,博客地址:www.weare.net.cn 或者点击 微儿博客

时间: 2024-12-29 12:40:47

java加载证书,访问12306的https链接的相关文章

java加载properties文件的六种方法总结

java加载properties文件的六种方法总结 java加载properties文件的六中基本方式实现 java加载properties文件的方式主要分为两大类: >一种是通过import java.util.Properties类中的load(InputStream in)方法加载: >另一种是通过import java.util.ResourceBundle类的getBundle(String baseName)方法加载. 注意:一定要区分路径格式 实现代码如下: 1 2 3 4 5

java加载property文件配置

1 properties简介: properties是一种文本文件,内容格式为:     key = value     #单行注释 适合作为简单配置文件使用,通常作为参数配置.国际化资源文件使用. 对于复杂的配置,就需要使用XML.YML.JSON等了 2 java加载Properties: java加载properties主要通过2个util包下的工具类: Properties类. ResourceBundle类 2.1 通过Properties类加载: Properties类通过load(

java加载资源文件

className.class.getResourceAsStream 用法: 第一: 要加载的文件和.class文件在同一目录下,例如:com.x.y 下有类Test.class ,同时有资源文件config.properties 那么,应该有如下代码: //前面没有"/"代表当前类的目录 InputStream is1 = Test.class.getResourceAsStream("config.properties"); System.out.printl

java加载properties文件的六中基本方式实现

java加载properties文件的方式主要分为两大类:一种是通过import java.util.Properties类中的load(InputStream in)方法加载: 另一种是通过import java.util.ResourceBundle类的getBundle(String baseName)方法加载. 注意:一定要区分路径格式 实现代码如下: 1 package com.util; 2 3 import java.io.FileInputStream; 4 import jav

JAVA加载与变量初始化

Java对象初始化 这是一道阿里巴巴的关于Java对象初始化的面试题,堪称经典,代码很简单(编写格式做了些修改),但是需要面试者对Java中对象初始化有一个透彻的认识,那么通过这道面试题,对我有点启发,所以希望在这里分享给大家,希望能给迷惘的初学者一起指引,下面我们直入主题,先看看代码: public class InitializeDemo {   private static int k = 1;   private static InitializeDemo t1 = new Initia

Java加载jar文件并调用jar文件当中有参数和返回值的方法

在工作当中经常遇到反编译后的jar文件,并要传入参数了解其中的某些方法的输出,想到Java里面的反射可以实现加载jar文件并调用其中的方法来达到自己的目的.就写了个Demo代码. 以下的类可以编译生成hello.jar文件. 1 package org.lele.fatpanda; 2 3 public class Util 4 { 5 public static String myName; 6 /* 7 * 无参数,无返回值的方法. 8 */ 9 public static void get

java加载机制整理

本文是根据李刚的<疯狂讲义>作的笔记,程序有的地方做了修改,特别是路径,一直在混淆,浪费了好多时间!!希望懂的同学能够指导本人,感激尽............ 1.jvm 和 类的关系 当调用 java命令运行一个java程序时,必会启动一个jvm即java虚拟机.(5.6.处有联系!!)该java程序的所有线程,变量都处于jvm中,都使用该jvm的内存区 jvm终止的情况:1.程序自然运行结束2.遇到System.exit();Runtime.getRuntime.exit();3.遇到未捕

Java 加载配置文件的方式

一 使用原生方式读取配置文件 1 文件系统加载 Java代码 InputStream in = new FileInputStream("config.properties"); Properties p = new Properties(); p.load(in); 2 类加载方式 A 与类同级目录 Java代码 InputStream in = Main.class.getResourceAsStream("config.properties"); B 在类的下

java加载jdbc驱动三种方式的比较

平时连接数据库的时候首先要加载jdbc驱动,这一步骤其实有三种方式,他们的区别?优劣? 快速了解三种加载方式 Class.forName("com.mysql.jdbc.Driver"); DriverManager.registerDriver(new com.mysql.jdbc.Driver()) System.setProperty("jdbc.drivers","com.mysql.jdbc.Driver"); 注释: 第二种与第三种注