• eclipse中导入spring-boot框架的jar包方法


    如下代码引入了spring-boot的包

    package openresty;
    
    import java.io.IOException;
    import java.security.GeneralSecurityException;
    import java.security.MessageDigest;
    import java.util.Date;
    import java.util.HashMap;
    import java.util.Map;
    import java.util.Map.Entry;
    import java.util.Set;
    import java.util.TreeMap;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    @SpringBootApplication
    public class OpenrestySign {
    
        public static void main(String[] args) throws IOException {
            OpenrestySign.run(OpenrestySign.class, args);
            
            HashMap<String,String> params = new HashMap<String,String>();
            
            params.put("key", "1");
            params.put("a", "1");
            params.put("c", "w");
            params.put("b", "2");
            
            long time = new Date().getTime();
            
            params.put("time", "" + time);
            
            System.out.println(time);
            
            String sign = getSignature(params,"123456");
            
            System.out.println(sign);
            
            params.put("sign", sign);
            
            String resp = HttpsUtil.doGet("http://10.11.0.215/sign",params);
            
            System.out.println(resp);
        }
        
        /**
         * 签名生成算法
         * @param HashMap<String,String> params 请求参数集,所有参数必须已转换为字符串类型
         * @param String secret 签名密钥
         * @return 签名
         * @throws IOException
         */
        public static String getSignature(HashMap<String,String> params, String secret) throws IOException
        {
            // 先将参数以其参数名的字典序升序进行排序
            Map<String, String> sortedParams = new TreeMap<String, String>(params);
            Set<Entry<String, String>> entrys = sortedParams.entrySet();
         
            // 遍历排序后的字典,将所有参数按"key=value"格式拼接在一起
            StringBuilder basestring = new StringBuilder();
            for (Entry<String, String> param : entrys) {
                if(basestring.length() != 0){
                    basestring.append("&");
                }
                basestring.append(param.getKey()).append("=").append(param.getValue());
            }
            basestring.append("&");
            basestring.append(secret);
            
            System.out.println("basestring="+basestring);
         
            // 使用MD5对待签名串求签
            byte[] bytes = null;
            try {
                MessageDigest md5 = MessageDigest.getInstance("MD5");
                bytes = md5.digest(basestring.toString().getBytes("UTF-8"));
            } catch (GeneralSecurityException ex) {
                throw new IOException(ex);
            }
            
            String strSign = new String(bytes);
            System.out.println("strSign="+strSign);
            // 将MD5输出的二进制结果转换为小写的十六进制
            StringBuilder sign = new StringBuilder();
            for (int i = 0; i < bytes.length; i++) {
                String hex = Integer.toHexString(bytes[i] & 0xFF);
                if (hex.length() == 1) {
                    sign.append("0");
                }
                sign.append(hex);
            }
            return sign.toString();
        }
    }

    默认直接下载spring-boot的jar包并且引入是不行的,需要新建maven的项目,通过修改pom.xml自动下载依赖

    pom.xml内容

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
    
      <groupId>openresty</groupId>
      <artifactId>openresty</artifactId>
      <version>0.0.1-SNAPSHOT</version>
      <packaging>jar</packaging>
    
      <name>openresty</name>
      <url>http://maven.apache.org</url>
    
      <properties>
        <java.version>1.8</java.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
      </properties>
    
    
      
      <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.0.RELEASE</version>
    </parent>
    
      <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>
    
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
    
    <repositories>
        <repository>
            <id>repository.spring.release</id>
            <name>Spring GA Repository</name>
            <url>http://repo.spring.io/release</url>
        </repository>
    </repositories>
      
    </project>

  • 相关阅读:
    Go Revel
    Go Revel
    Go Revel
    Go Revel
    deployment:声明式的升级应用
    Kubernetes架构及相关服务详解
    Docker 安装MySQL
    日志收集-Elk6
    Jenkins-Multijob plugin多任务串并行
    ansible创建vmware虚拟机
  • 原文地址:https://www.cnblogs.com/reblue520/p/11417306.html
Copyright © 2020-2023  润新知