改变架构!

This commit is contained in:
Kane Wang 2025-05-08 00:56:14 +08:00
parent 74e038dd56
commit 78c7a0d9a9
8 changed files with 161 additions and 71 deletions

View File

@ -1,4 +1,13 @@
/**
* @Author: Kane Wang <wangkane@qq.com>
* @Date: 2023-05-26 18:40:36
* @LastEditors: Kane Wang
* @LastModified: 2025-05-07 22:02:07
* @FilePath: src/main/java/com/cpic/xim/utils/config/EncryptionParameters.java
* @Description:
*
* Copyright (c) 2025 by Kane All rights reserved
*/
package com.cpic.xim.utils.config; package com.cpic.xim.utils.config;
public class EncryptionParameters public class EncryptionParameters

View File

@ -0,0 +1,65 @@
/**
* @Author: Kane Wang <wangkane@qq.com>
* @Date: 2024-04-29 11:09:50
* @LastEditors: Kane Wang
* @LastModified: 2025-05-07 22:04:08
* @FilePath: src/main/java/com/cpic/xim/utils/http/HttpUtils.java
* @Description: 用于http的相关工具方法
*
* Copyright (c) 2025 by Kane All rights reserved
*/
package com.cpic.xim.utils.http;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.http.HttpEntity;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;
public class HttpUtils
{
/**
*
* @param url
* @param bodyMap
* @return
*/
public static String sendPost( String url, Map<String, String> bodyMap )
{
HttpPost post = new HttpPost( url );
try
{
// 创建参数集合
List<BasicNameValuePair> list = new ArrayList<>();
// 添加参数
if ( bodyMap != null )
{
for ( String str : bodyMap.keySet() )
{
list.add( new BasicNameValuePair( str, bodyMap.get( str ) ) );
}
}
// 把参数放入请求对象post发送的参数list指定格式
post.setEntity( new UrlEncodedFormEntity( list, "UTF-8" ) );
CloseableHttpClient client = HttpClients.createDefault();
// 启动执行请求并获得返回值
CloseableHttpResponse response = client.execute( post );
// 得到返回的entity对象
HttpEntity entity = response.getEntity();
// 把实体对象转换为string
return EntityUtils.toString( entity, "UTF-8" );
}
catch ( Exception e1 )
{
e1.printStackTrace();
return "";
}
}
}

View File

@ -2,7 +2,7 @@
* @Author: Kane Wang <wangkane@qq.com> * @Author: Kane Wang <wangkane@qq.com>
* @Date: 2023-05-26 18:40:36 * @Date: 2023-05-26 18:40:36
* @LastEditors: Kane Wang * @LastEditors: Kane Wang
* @LastModified: 2025-05-07 19:06:53 * @LastModified: 2025-05-07 22:06:09
* @FilePath: src/main/java/com/cpic/xim/utils/newcitizen/NewCitizenUitls.java * @FilePath: src/main/java/com/cpic/xim/utils/newcitizen/NewCitizenUitls.java
* @Description: * @Description:
* *
@ -28,6 +28,7 @@ import org.apache.http.util.EntityUtils;
import com.cpic.xim.utils.security.encode.EncryptionUtils; import com.cpic.xim.utils.security.encode.EncryptionUtils;
import com.cpic.xim.utils.security.decode.DecryptionUtils; import com.cpic.xim.utils.security.decode.DecryptionUtils;
import com.cpic.xim.utils.security.sign.SignUtils; import com.cpic.xim.utils.security.sign.SignUtils;
import com.cpic.xim.utils.http.HttpUtils;
import com.cpic.xim.utils.config.EncryptionParameters; import com.cpic.xim.utils.config.EncryptionParameters;
import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.core.JsonParseException; import com.fasterxml.jackson.core.JsonParseException;
@ -69,7 +70,7 @@ public class NewCitizenUitls
params.put( "key", key ); params.put( "key", key );
params.put( "sign", sign ); params.put( "sign", sign );
String resultJSON = sendPost( identifyURL, params ); String resultJSON = HttpUtils.sendPost( identifyURL, params );
ObjectMapper mapper = new ObjectMapper(); ObjectMapper mapper = new ObjectMapper();
IdentifyResult identifyResult = null; IdentifyResult identifyResult = null;
ResponseResult response = null; ResponseResult response = null;
@ -88,38 +89,38 @@ public class NewCitizenUitls
return identifyResult; return identifyResult;
} }
public static String sendPost( String url, Map<String, String> bodyMap ) // public static String sendPost( String url, Map<String, String> bodyMap )
{ // {
HttpPost post = new HttpPost( url ); // HttpPost post = new HttpPost( url );
try // try
{ // {
// 创建参数集合 // // 创建参数集合
List<BasicNameValuePair> list = new ArrayList<>(); // List<BasicNameValuePair> list = new ArrayList<>();
// 添加参数 // // 添加参数
if ( bodyMap != null ) // if ( bodyMap != null )
{ // {
for ( String str : bodyMap.keySet() ) // for ( String str : bodyMap.keySet() )
{ // {
list.add( new BasicNameValuePair( str, bodyMap.get( str ) ) ); // list.add( new BasicNameValuePair( str, bodyMap.get( str ) ) );
} // }
} // }
// 把参数放入请求对象post发送的参数list指定格式 // // 把参数放入请求对象post发送的参数list指定格式
post.setEntity( new UrlEncodedFormEntity( list, "UTF-8" ) ); // post.setEntity( new UrlEncodedFormEntity( list, "UTF-8" ) );
CloseableHttpClient client = HttpClients.createDefault(); // CloseableHttpClient client = HttpClients.createDefault();
// 启动执行请求并获得返回值 // // 启动执行请求并获得返回值
CloseableHttpResponse response = client.execute( post ); // CloseableHttpResponse response = client.execute( post );
// 得到返回的entity对象 // // 得到返回的entity对象
HttpEntity entity = response.getEntity(); // HttpEntity entity = response.getEntity();
// 把实体对象转换为string // // 把实体对象转换为string
return EntityUtils.toString( entity, "UTF-8" ); // return EntityUtils.toString( entity, "UTF-8" );
} // }
catch ( Exception e1 ) // catch ( Exception e1 )
{ // {
e1.printStackTrace(); // e1.printStackTrace();
return ""; // return "";
} // }
} // }
} }

View File

@ -1,11 +1,12 @@
/* /**
* @Author: Kane * @Author: Kane Wang <wangkane@qq.com>
* @Date: 2023-05-25 20:26:06 * @Date: 2024-04-29 11:09:50
* @LastEditors: Kane * @LastEditors: Kane Wang
* @FilePath: /NewCitizenQueryResult/src/main/java/com/cpic/xim/web/controllers/NewCitizen/IdentifyNewCitizenResult.java * @LastModified: 2025-05-07 22:01:21
* @Description: * @FilePath: src/main/java/com/cpic/xim/web/controllers/newcitizen/IdentifyNewCitizenResponse.java
* @Description:
* *
* Copyright (c) ${2022} by Kane, All Rights Reserved. * Copyright (c) 2025 by Kane All rights reserved
*/ */
package com.cpic.xim.web.controllers.newcitizen; package com.cpic.xim.web.controllers.newcitizen;

View File

@ -1,13 +1,13 @@
/** /**
* @Author: Kane * @Author: Kane Wang <wangkane@qq.com>
* @Date: 2023-05-25 12:09:27 * @Date: 2024-04-29 11:09:50
* @LastEditors: Kane * @LastEditors: Kane Wang
* @FilePath: /NewCitizenIdentify/src/main/java/com/cpic/xim/web/controllers/NewCitizen/QueryResultController.java * @LastModified: 2025-05-07 22:00:48
* @FilePath: src/main/java/com/cpic/xim/web/controllers/newcitizen/QueryResultController.java
* @Description: * @Description:
* @ *
* @Copyright (c) ${2023} by Kane, All Rights Reserved. * Copyright (c) 2025 by Kane All rights reserved
*/ */
package com.cpic.xim.web.controllers.newcitizen; package com.cpic.xim.web.controllers.newcitizen;
import jakarta.servlet.http.HttpServletResponse; import jakarta.servlet.http.HttpServletResponse;

View File

@ -1,4 +1,13 @@
/**
* @Author: Kane Wang <wangkane@qq.com>
* @Date: 2024-04-29 11:09:50
* @LastEditors: Kane Wang
* @LastModified: 2025-05-07 22:00:35
* @FilePath: src/main/java/com/cpic/xim/web/controllers/newcitizen/QueryResultRequest.java
* @Description:
*
* Copyright (c) 2025 by Kane All rights reserved
*/
package com.cpic.xim.web.controllers.newcitizen; package com.cpic.xim.web.controllers.newcitizen;
import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonProperty;

View File

@ -1,13 +1,13 @@
/* /**
* @Author: Kane * @Author: Kane Wang <wangkane@qq.com>
* @Date: 2023-05-25 11:02:53 * @Date: 2023-05-26 18:40:36
* @LastEditors: Kane * @LastEditors: Kane Wang
* @FilePath: /NewCitizenQueryResult/src/main/java/com/cpic/xim/web/filters/CrosFilter.java * @LastModified: 2025-05-07 22:00:26
* @Description: * @FilePath: src/main/java/com/cpic/xim/web/filters/CrosFilter.java
* @Description:
* *
* Copyright (c) ${2022} by Kane, All Rights Reserved. * Copyright (c) 2025 by Kane All rights reserved
*/ */
package com.cpic.xim.web.filters; package com.cpic.xim.web.filters;
import java.io.IOException; import java.io.IOException;
@ -24,26 +24,27 @@ public class CrosFilter implements Filter
{ {
@Override @Override
public void doFilter( ServletRequest req, ServletResponse resp, FilterChain chain ) public void doFilter( ServletRequest req, ServletResponse resp, FilterChain chain )
throws ServletException, IOException throws ServletException,
IOException
{ {
HttpServletRequest request = (HttpServletRequest) req; HttpServletRequest request = ( HttpServletRequest ) req;
HttpServletResponse response = (HttpServletResponse) resp; HttpServletResponse response = ( HttpServletResponse ) resp;
String method = request.getMethod(); String method = request.getMethod();
String originHeader = request.getHeader( "Origin" ); String originHeader = request.getHeader( "Origin" );
System.out.println( "收到" + method + "请求,来自" + originHeader); System.out.println( "收到" + method + "请求,来自" + originHeader );
// 如果是Options请求 // 如果是Options请求
if ( method.equals(HttpMethod.OPTIONS.toString()) ) if ( method.equals( HttpMethod.OPTIONS.toString() ) )
{ {
originHeader = "*"; originHeader = "*";
} }
response.setHeader( "Access-Control-Allow-Origin", originHeader ); response.setHeader( "Access-Control-Allow-Origin", originHeader );
response.setHeader( "Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE, PUT" ); response.setHeader( "Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE, PUT" );
response.setHeader( "Access-Control-Max-Age", "0" ); response.setHeader( "Access-Control-Max-Age", "0" );
response.setHeader( "Access-Control-Allow-Headers", response.setHeader( "Access-Control-Allow-Headers",
"Origin, No-Cache, X-Requested-With, If-Modified-Since, Pragma, Last-Modified, Cache-Control, Expires, Content-Type, X-E4M-With,userId,token" ); "Origin, No-Cache, X-Requested-With, If-Modified-Since, Pragma, Last-Modified, Cache-Control, Expires, Content-Type, X-E4M-With,userId,token" );
response.setHeader( "Access-Control-Allow-Credentials", "true" ); response.setHeader( "Access-Control-Allow-Credentials", "true" );
response.setHeader( "XDomainRequestAllowed", "1" ); response.setHeader( "XDomainRequestAllowed", "1" );
response.setHeader( "XDomainRequestAllowed", "1" ); response.setHeader( "XDomainRequestAllowed", "1" );

View File

@ -1,7 +1,11 @@
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" <?xml version="1.0" encoding="UTF-8"?>
<web-app
version="4.0"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:javaee="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xml="http://www.w3.org/XML/1998/namespace"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd">
version="3.1">
<display-name>Archetype Created Web Application</display-name> <display-name>Archetype Created Web Application</display-name>