39
40
	private static final String HTTP_CONTENT_TYPE_JSON = "application/json; charset=utf-8";
41
42
	public static String buildUrl(Map<String, String> paramMap, String serviceUrl) {
43
		String url = null;
44
		StringBuffer urlString = new StringBuffer();
45
		urlString.append(serviceUrl);
46
47
		if (!paramMap.isEmpty()) {
48
			// 参数列表不为空,地址尾部增加'?'
49
			urlString.append('?');
50
			// 拼接参数
51
			Set<Map.Entry<String, String>> entrySet = paramMap.entrySet();
52
			for (Map.Entry<String, String> entry : entrySet) {
53
				try {
54
					urlString.append(entry.getKey()).append('=').append(URLEncoder.encode(entry.getValue(), "UTF-8"))
55
							.append('&');
56
				} catch (UnsupportedEncodingException e) {
57
					log.error(" Exception: " + e);
58
				}
59
			}
60
			// 去掉最后一个字符“&”
61
			url = urlString.substring(0, urlString.length() - 1);
62
		}
63
		return url;
64
	}
65
66
	public static String sendRequest(String url) {
67
		InputStream inputStream = null;
68
		BufferedReader bufferedReader = null;
69
		HttpURLConnection httpURLConnection = null;
70
		try {
71
			log.error("It's not error. request url: " + url);
72
			URL requestURL = new URL(url);
73
			// 获取连接
74
			httpURLConnection = (HttpURLConnection) requestURL.openConnection();
75
			httpURLConnection.setConnectTimeout(10000); // 建立连接的超时时间,毫秒
76
			httpURLConnection.setReadTimeout(25000); // 获得返回的超时时间,毫秒
77
			httpURLConnection.setRequestMethod("GET");
78
			httpURLConnection.setRequestProperty("Content-type", "text/html;charset=UTF-8");
79
			httpURLConnection.setRequestProperty("Accept",
80
					"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8");
81
			// 通过输入流获取请求的内容
82
			inputStream = httpURLConnection.getInputStream();
83
			bufferedReader = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));
84
			String temp = null;
85
			StringBuffer stringBuffer = new StringBuffer();
86
			// 循环读取返回的结果
87
			while ((temp = bufferedReader.readLine()) != null) {
88
				stringBuffer.append(temp);
89
			}
90
91
			return stringBuffer.toString();
92
		} catch (Exception e) {
93
			log.error("sendRequest Exception: " + e);
94
		} finally {
95
			// 断开连接
96
			if (httpURLConnection != null) {
97
				httpURLConnection.disconnect();
98
			}
99
			// 关闭流
100
			if (bufferedReader != null) {
101
				try {
102
					bufferedReader.close();
103
				} catch (IOException e) {
104
					log.error("bufferedReader Exception: " + e);
105
				}
106
			}
107
			if (inputStream != null) {
108
				try {
109
					inputStream.close();
110
				} catch (IOException e) {
111
					log.error("inputStream Exception: " + e);
112
				}
113
			}
114
		}
115
		return null;
116
	}
117
118
	public static String sendPostRequest(String url, Map<String, String> map, String encoding) {
119
		String retStr = "";
120
		try {
121
			retStr = sendPostRequest(url, map, encoding, 0, 0);
122
		} catch (Exception ex) {
123
			log.error("sendPostRequest error: " + ex);
124
		}
125
126
		return retStr;
127
	}
128
129
	public static String sendPostRequest(String url, Map<String, String> map, String encoding, int ebossConnectTimeout,
130
			int ebossServiceTimeout) {
131
		CloseableHttpClient httpClient = HttpClients.createDefault();
132
		HttpPost httpPost = new HttpPost(url);
133
		String body = "";
134
135
		try {
136
			MultipartEntityBuilder multipartEntityBuilder = MultipartEntityBuilder.create();
137
			if (map != null) {
138
				for (Map.Entry<String, String> entry : map.entrySet()) {
139
					multipartEntityBuilder.addTextBody(entry.getKey(), entry.getValue());
140
				}
141
			}
142
143
			log.debug("ebossConnectTimeout:" + ebossConnectTimeout);
144
			log.debug("ebossServiceTimeout:" + ebossServiceTimeout);
145
146
			httpPost.setEntity(multipartEntityBuilder.build());
147
			if (ebossConnectTimeout != 0 && ebossServiceTimeout != 0) {
148
				RequestConfig requestConfig = RequestConfig.custom().setSocketTimeout(ebossServiceTimeout)
149
						.setConnectTimeout(ebossConnectTimeout).build();// 设置请求和传输超时时间
150
				httpPost.setConfig(requestConfig);
151
			}
152
153
			CloseableHttpResponse response = httpClient.execute(httpPost);
154
155
			if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
156
				HttpEntity entity = response.getEntity();
157
				if (entity != null) {
158
					// 按指定编码转换结果实体为String类型
159
					body = EntityUtils.toString(entity, encoding);
160
				}
161
				EntityUtils.consume(entity);
162
			}
163
		} catch (ClientProtocolException e) {
164
			log.error("ClientProtocolException Exception: " + e);
165
		} catch (UnsupportedEncodingException e) {
166
			log.error("UnsupportedEncodingException Exception: " + e);
167
		} catch (IOException e) {
168
			log.error("IOException Exception: " + e);
169
			// throw new BaseException("10", "调用Eboss超时");
170
		} finally {
171
			// 关闭连接,释放资源
172
			try {
173
				httpClient.close();
174
			} catch (IOException e) {
175
				log.error("httpClient Exception: " + e);
176
			}
177
		}
178
179
		return body;
180
	}
181
182
	public static String sendGet(String url, Charset encoding, Map<String, String> headerMap) {
183
		HttpClient httpClient = HttpClients.createDefault();
184
		HttpGet httpGet = new HttpGet(url);
185
		httpGet.addHeader(HTTP.CONTENT_TYPE, HTTP_CONTENT_TYPE_JSON);
186
		CloseableHttpResponse response = null;
187
		try {
188
			log.debug("执行GET请求:url= " + url);
189
			response = (CloseableHttpResponse) httpClient.execute(httpGet);
190
		} catch (Exception e) {
191
			log.error("sendGet Exception: " + e.getMessage());
192
			return "{}";
193
		}
194
		return responseEx(httpClient, response, encoding);
195
	}
196
197
	public static String sendPost(String url, Map<String, Object> paramsMap, Charset encoding) {
198
		HttpClient httpClient = HttpClients.createDefault();
199
		HttpPost httpPost = new HttpPost(url);
200
		httpPost.addHeader(HTTP.CONTENT_TYPE, HTTP_CONTENT_TYPE_JSON);
201
		if (!CollectionUtils.isEmpty(paramsMap)) {
202
			StringEntity se = new StringEntity(JSONObject.toJSONString(paramsMap), encoding);
203
			httpPost.setEntity(se);
204
		}
205
		CloseableHttpResponse response = null;
206
		try {
207
			log.debug("执行POST无参请求:url= " + url);
208
			response = (CloseableHttpResponse) httpClient.execute(httpPost);
209
		} catch (Exception e) {
210
			log.error("sendPost Exception: " + e.getMessage());
211
			return "{}";
212
		}
213
		return responseEx(httpClient, response, encoding);
214
	}
215
216
	public static String sendPost(String url, Map<String, Object> paramsMap, Charset encoding,
217
			Map<String, String> headerMap) {
218
		HttpClient httpClient = HttpClients.createDefault();
219
		HttpPost httpPost = new HttpPost(url);
220
221
		Iterator<String> iter = headerMap.keySet().iterator();
222
		String key = "";
223
		String value = "";
224
		while (iter.hasNext()) {
225
			key = iter.next();
226
			value = headerMap.get(key);
227
			httpPost.setHeader(key, value);
228
		}
229
230
		httpPost.addHeader(HTTP.CONTENT_TYPE, HTTP_CONTENT_TYPE_JSON);
231
		if (!CollectionUtils.isEmpty(paramsMap)) {
232
			log.debug("执行POST请求:url= " + url + ",参数= " + JSONObject.toJSONString(paramsMap));
233
			StringEntity se = new StringEntity(JSONObject.toJSONString(paramsMap), encoding);
234
			httpPost.setEntity(se);
235
		}
236
		CloseableHttpResponse response = null;
237
		try {
238
			response = (CloseableHttpResponse) httpClient.execute(httpPost);
239
		} catch (Exception e) {
240
			log.error("sendPost Exception: " + e.getMessage());
241
			return "{}";
242
		}
243
		return responseEx(httpClient, response, encoding);
244
	}
245
246
	public static String sendPut(String url, Map<String, Object> paramsMap, Charset encoding) {
247
		HttpClient httpClient = HttpClients.createDefault();
248
		String resp = "";
249
		HttpPut httpPut = new HttpPut(url);
250
		httpPut.addHeader(HTTP.CONTENT_TYPE, HTTP_CONTENT_TYPE_JSON);
251
		if (!CollectionUtils.isEmpty(paramsMap)) {
252
			StringEntity se = new StringEntity(JSONObject.toJSONString(paramsMap), encoding);
253
			httpPut.setEntity(se);
254
		}
255
		CloseableHttpResponse response = null;
256
		try {
257
			log.debug("执行PUT请求:url= " + url + ",参数= " + JSONObject.toJSONString(paramsMap));
258
			response = (CloseableHttpResponse) httpClient.execute(httpPut);
259
		} catch (Exception e) {
260
			log.error("sendPut Exception: " + e.getMessage());
261
			return "{}";
262
		}
263
264
		return responseEx(httpClient, response, encoding);
265
	}
266
267
	private static String responseEx(HttpClient httpClient, CloseableHttpResponse response, Charset encoding) {
268
		String resp = "";
269
		try {
270
			if (response == null) {
271
				resp = "{}";
272
				log.error("请求执行失败,无返回信息");
273
			} else if (200 != response.getStatusLine().getStatusCode()) {
274
				resp = "{}";
275
				log.error("请求执行失败,状态码=" + response.getStatusLine().getStatusCode() + ",返回信息="
276
						+ EntityUtils.toString(response.getEntity(), encoding));
277
			} else {
278
				log.debug("请求执行成功");
279
				resp = EntityUtils.toString(response.getEntity(), encoding);
280
			}
281
		} catch (Exception e) {
282
			log.error("responseEx Exception: " + e.getMessage());
283
		} finally {
284
			if (response != null) {
285
				try {
286
					response.close();
287
				} catch (Exception e) {
288
					log.error("responseEx Exception: " + e.getMessage());
289
				}
290
			}
291
		}
292
		return resp;
293
	}
294
295
}

+ 33 - 0
security-protection-service/src/main/java/com/ai/bss/security/protection/utils/IDUtils.java

@ -0,0 +1,33 @@
1
package com.ai.bss.security.protection.utils;
2
3
/**
4
 * @Auther: 王超
5
 * @Date: 2020/12/30 13:57
6
 * @Description:
7
 */
8
public class IDUtils {
9
10
    private static byte[] lock = new byte[0];
11
12
    // 位数,默认是8位
13
    private final static long w = 100000000;
14
15
16
    /**
17
     * 创建不重复id
18
     * @param
19
     *          timeSub 时间戳一共13位,截取前端的不需要的位数
20
     *          randSub 生成随机数一共9位,截取前端的不需要的位数
21
     *
22
     */
23
    public static String createID(int timeSub,int randSub) {
24
        long r = 0;
25
        synchronized (lock) {
26
            r = (long) ((Math.random() + 1) * w);
27
        }
28
        long timeMillis = System.currentTimeMillis();
29
        String time = String.valueOf(timeMillis);
30
        return time.substring(timeSub) + String.valueOf(r).substring(randSub);
31
    }
32
33
}

+ 12 - 0
security-protection-service/src/main/resources/application-iot.properties

@ -0,0 +1,12 @@
1
#\u5317\u5411\u767b\u5f55\u8d26\u53f7\u548c\u5bc6\u7801
2
aap.iot.userCode=IOT_ADMIN
3
aap.iot.passWord=123456
4
5
#iot\u7684\u5317\u5411\u63a5\u53e3\u6ce8\u518c\u5730\u5740
6
#url.iot.login=http://60.205.219.67:80/sso/login
7
url.iot.login=http://47.105.130.83:80/sso/login
8
9
#iot\u7684\u5317\u5411\u63a5\u53e3\u7edf\u4e00\u5730\u5740
10
#url.iot.service=http://60.205.219.67:80/dmp/terminalNorthApi/
11
url.iot.service=http://47.105.130.83:80/dmp/terminalNorthApi/
12

+ 21 - 0
security-protection-service/src/main/resources/application-minio.properties

@ -0,0 +1,21 @@
1
#minio
2
minio.endpoint=http://10.19.90.34
3
minio.port=19000
4
minio.accessKey=minioadmin
5
minio.secretKey=minioadmin
6
minio.secure=false
7
minio.faceAddServiceUrl=http://10.21.10.28:9018/api/face/add
8
minio.face-del-service-url=http://10.21.10.28:9018/api/face/del
9
minio.face-recog-service-url=http://10.21.10.28:9018/api/face/recog
10
11
# \u4eba\u8138\u8bc6\u522b
12
minio.bucketHeaderImage=prod-dev
13
14
# \u8bbe\u5907\u9ed8\u8ba4\u7167\u7247
15
spminio.bucketToolImage=tool-image
16
# \u76d1\u63a7\u89c6\u9891
17
spminio.bucketAiVideo=ai-video
18
# \u76d1\u63a7\u89c6\u9891\u622a\u56fe
19
spminio.bucketAiImage=ai-image
20
# \u76d1\u63a7\u89c6\u9891\u622a\u56fe
21
spminio.bucketM3U8=m3u8-index

+ 9 - 20
security-protection-service/src/main/resources/application.properties

@ -46,26 +46,6 @@ kafka.listener.batch-listener=false
46 46
kafka.listener.concurrencys=3,6
47 47
kafka.listener.poll-timeout=1500
48 48
49
#minio
50
minio.endpoint=http://10.19.90.34
51
minio.port=19000
52
minio.accessKey=minioadmin
53
minio.secretKey=minioadmin
54
minio.secure=false
55
minio.faceAddServiceUrl=http://10.21.10.28:9018/api/face/add
56
minio.face-del-service-url=http://10.21.10.28:9018/api/face/del
57
minio.face-recog-service-url=http://10.21.10.28:9018/api/face/recog
58
59
# \u4eba\u8138\u8bc6\u522b
60
minio.bucketHeaderImage=prod-dev
61
62
# \u8bbe\u5907\u9ed8\u8ba4\u7167\u7247
63
spminio.bucketToolImage=tool-image
64
# \u76d1\u63a7\u89c6\u9891
65
spminio.bucketAiVideo=ai-video
66
# \u76d1\u63a7\u89c6\u9891\u622a\u56fe
67
spminio.bucketAiImage=ai-image
68
69 49
70 50
# CACHE
71 51
#spring.cache.type=ehcache
@ -87,3 +67,12 @@ spring.servlet.multipart.resolve-lazily=false
87 67
# LOGGING
88 68
logging.level.com.ai=debug
89 69
logging.level.org.springframework.data=debug
70
71
uspa.login.url=http://10.19.90.34:20000/usermng/login
72
uspa.login.vercode=Hiz#8uAqkjhoPmXu8%aaa
73
74
uspa.login.menuUrl=http://10.19.90.34:20000/usermng/process/com.wframe.usermanager.services.impl.QueryMenuByUser
75
76
77
# \u5f15\u5165minio\u548ciot\u7684\u914d\u7f6e\u6587\u4ef6
78
spring.profiles.active=iot,minio

+ 81 - 0
security-protection-service/src/main/resources/sso.properties

@ -0,0 +1,81 @@
1
#\u7cfb\u7edf\u57df
2
SYSTEM_DOMAIN=LOGIN_CACHE_ROUTE
3
4
#------------------------------cookie\u914d\u7f6e-------------#
5
##COOKIE\u7684\u6709\u6548\u57df,\u4e0d\u8bbe\u7f6e\uff0c\u5219\u81ea\u52a8\u8bbe\u7f6e
6
#COOKIE_DOMAIN=crm.chinapost.yw.com
7
8
COOKIE_PATH=/
9
10
##Session \u8d85\u65f6\u65f6\u95f4(\u79d2)
11
SESSION_TIMEOUT=3600
12
COOKIE_MAXAGE=-1
13
14
15
TENANT_REGISTER_CLASS=com.ai.customermanager.services.impl.CustRegisterVercodeImpl
16
17
18
##\u8fdc\u7a0b\u7f13\u5b58\u8c03\u7528\u7c7b\uff0c\u8fd9\u4e2a\u7c7b\u5fc5\u987b\u6709\u4e09\u4e2a\u51fd\u6570 
19
##    public boolean set(String key,String value)
20
##    public String get(String key)
21
##    public boolean del(String key);
22
COOKIE_CACHE_CLASS=com.ai.sso.util.SessionRedisCache
23
24
LOGGING_INTERFACE_CLASS=com.wframe.baseinfo.util.BaseInfoUtil
25
26
##COOKIE_IS_CACHE \u662f\u5426\u7f13\u5b58\u5230\u8fdc\u7aef\u3002
27
COOKIE_IS_CACHE=1
28
29
30
##IS_CHECK_LOGIN \u662f\u5426\u68c0\u67e5\u767b\u9646\u3002
31
IS_CHECK_LOGIN=1
32
33
34
LOGIN_SERVICE=uspa_IOrgmodelClientCSV_loginIn
35
LOGINNOPASS_SERVICE=uspa_IOrgmodelClientCSV_loginWithNoPassword
36
37
38
Access-Control-Allow-origin=http://crm.chinapost.yw.com:18080/
39
40
##\u68c0\u67e5SesisonId,sign \u662f\u5426\u6b63\u786e
41
SESSION_CHECK_SIGN=com.ai.sso.util.SessionCheckSign
42
SESSION_CHECK_LOGIN=com.ai.sso.util.SessionCheckLogin
43
#redis
44
45
##MAIN_PAGE
46
#MAIN_PAGE=http://crm.chinapost.com:18880/
47
##RETURN TAG \u8fd4\u56de\u5b57\u7b26\u4e32
48
49
RETURN_TAG={"MESSAGE":"NOLOGIN","CODE":999999,"FLAG":"FAIL","RESULT":{"URL":"http://crm.chinapost.yw.com:18080/"}}
50
#RETURN_TAG=<html><script language="javascript"> function init(){ if(window.parent!=null) { window.parent.location.href ="http://crm.chinapost.com:18880"; } else window.location.href ="http://crm.chinapost.com:18880"; } </script><body onload="init()"></body></html>
51
52
53
54
#redis.single=10.11.20.117:6379
55
#redis.password=luMZulgbotmo71aa
56
redis.single=10.19.90.34:6379
57
redis.password=Ipu@321!
58
59
redis.pool.maxTotal=1000
60
redis.pool.minIdle=5
61
redis.pool.maxIdle=100
62
redis.pool.testOnBorrow=false
63
redis.pool.maxWait=5000
64
redis.pool.testOnReturn=true
65
redis.pool.testWhileIdle=true
66
redis.pool.timeBetweenEvictionRunsMillis=10000
67
68
69
SESSION_DEFAULT_VERCODE=Hiz#8uAqkjhoPmXu8%aaa
70
71
#\u662f\u5426\u8fdb\u884c\u63a5\u53e3\u6743\u9650\u63a7\u5236 1 \u8fdb\u884c\u63a5\u53e3\u6743\u9650\u63a7\u5236 
72
is_check_interface=0
73
74
75
#BJYM\u4f7f\u7528
76
#USER_LOGIN_AUTH_CLASS=com.wframe.msgmanager.services.impl.UserLoginAuth4TestImpl
77
##\u5c0f\u7a0b\u5e8f\u4f7f\u7528
78
USER_LOGIN_AUTH_CLASS=com.wframe.usermanager.services.impl.UserLoginAuthImpl
79
#USER_LOGIN_AUTH_CLASS=com.wframe.msgmanager.services.impl.UserLoginByTokenImpl
80
#USER_LOGIN_AUTH_CLASS=com.wframe.msgmanager.services.impl.UserLoginByToken4XblImpl
81
SIGN_KEY_CODE=TENANT_CODE

修改物联网北向接口的地址 · 15e2925c6a - Nuosi Git Service
ソースを参照

修改物联网北向接口的地址

konghl 4 年 前
コミット
15e2925c6a
共有1 個のファイルを変更した4 個の追加4 個の削除を含む
  1. 4 4
      location-rescue-service/src/main/resources/application-iot.properties

+ 4 - 4
location-rescue-service/src/main/resources/application-iot.properties

@ -3,12 +3,12 @@ aap.iot.userCode=IOT_ADMIN
3 3
aap.iot.passWord=123456
4 4
5 5
#iot\u7684\u5317\u5411\u63a5\u53e3\u6ce8\u518c\u5730\u5740
6
url.iot.login=http://60.205.219.67:80/sso/login
7
#url.iot.login=http://47.105.130.83:8083/sso/login
6
#url.iot.login=http://60.205.219.67:80/sso/login
7
url.iot.login=http://47.105.130.83:80/sso/login
8 8
9 9
#iot\u7684\u5317\u5411\u63a5\u53e3\u7edf\u4e00\u5730\u5740
10
url.iot.service=http://60.205.219.67:80/dmp/terminalNorthApi/
11
#url.iot.service=http://47.105.130.83:8083/dmp/terminalNorthApi/
10
#url.iot.service=http://60.205.219.67:80/dmp/terminalNorthApi/
11
url.iot.service=http://47.105.130.83:80/dmp/terminalNorthApi/
12 12
13 13
#\u7ec8\u7aef\u8d85\u65f6\u79bb\u7ebf\u65f6\u95f4(\u5206\u949f)
14 14
device.overtime.offline=20

rest/rest-guide - Nuosi Git Service

194 コミット (3e50353175c6295a9366d37f157e4d89d5be2fa7)

作者 SHA1 メッセージ 日付
  weihf 3e50353175 @IPU_FIXBUG_2021@为redis设置访问密码 4 年 前
  weihf 44f9b01359 @IPU_REQ_2021@调整dockerfile配置,新增docker配置 4 年 前
  weihf 5ae789cd50 @IPU_FIXBUG_2021@修改错误配置 4 年 前
  weihf 40fc9039b9 @IPU_FIXBUG_2021@使用迅捷redis 4 年 前
  weihf a72c3d12ab @IPU_FIXBUG_2021@规范化代码 4 年 前
  weihf 02a2714cc5 @IPU_REQ_2021@添加docker功能 4 年 前
  weihf dc06c2b348 @IPU_FIXBUG_2021@weihf@需要将ipu依赖放在前面,优先级更高。 4 年 前
  weihf 9b384da8d0 @IPU_FIXBUG_2021@weihf@将mongodb的事务控制类改名,避免和数据库事务控制类同名。自定义redis配置类里增加缺省值,避免不配置导致服务报错。 4 年 前
  huangbo 91dec1d58e 优化脚手架启动配置@20210326:1)设置访问portal的请求不做session验证;2)脚手架开发态连接迅捷单节点redis,测试态连接迅捷集群redis。 4 年 前
  huangbo f73d0ba3bb 优化ipu-assembly-parent注释@20210326:打成tar或者zip包的目录提升一层级。 4 年 前
  huangbo eef308e6a6 新增Session配置描述@20210326:增加关闭Session,不使用redis的描述说明 4 年 前
  weihf 75a232980e @IPU_REQ_2021@weihf@添加ipu-cache、ipu-spring-nacos使用示例 4 年 前
  weihf 72b4219843 @IPU_FIXBUG_2021@weihf@增加修改jdbcTypeForNull属性为NULL,否则当java变量为null,mybatis将java类型转换为数据库类型时,报错“无效的列类型1111” 4 年 前
  weihf 2f204ea25f @IPU_FIXBUG_2021@weihf@增加修改jdbcTypeForNull属性为NULL,否则当java变量为null,mybatis将java类型转换为数据库类型时,报错“无效的列类型1111” 4 年 前
  huangbo e2f6d01f1b 自定义spring redis@20210309@自定义spring redis,application.yml配置示例 4 年 前
  huangbo d920aa2224 Session功能优化@20210309:在application.yml中新增define.session.timeout属性,实现Session超时设置。 4 年 前
  huangbo 8033ca0f2f SpringUtil代码下沉@20210308 4 年 前
  weihf 881635a2d0 @IPU_REQ_2021@weihf@添加ipu-s3示例 4 年 前
  huangbo 5f25e26451 外部资源目录优化@20210226:1)建立backup备份目录,细分config、pom、sql目录。建立docker目录,装载docker相关资源。2)从研发规范中copy内容,补充.gitignore。 4 年 前
  huangbo 31d8b44682 业务目录优化@20210226:将传统的control、service、dao目录分别细分到具体的业务分类之下。 4 年 前
  huangbo d9bd46ab42 范例BUG修复@20210225:Spring Cache缓存使用范例的BUG修复,确保缓存的key不为null。 4 年 前
  huangbo 88ffbea324 脚手架工程代码精简@20210225:Spring Session相关代码下沉至ipu-restful 4 年 前
  huangbo d62517642d Spring Session管理@20210225:基于Spring Redis 4 年 前
  huangbo 00fb8b07b6 Merge branch 'master' of http://10.1.235.20:3000/rest/rest-guide.git 4 年 前
  huangbo a25026e4b9 代码优化@20200222:中间版本 4 年 前
  weihf 77347038a4 @IPU_REQ_2021@weihf@使用新pom 4 年 前
  weihf 3a30dae4bb @IPU_REQ_2021@weihf@增加上传docker仓库功能 4 年 前
  weihf 89e99a4707 @IPU_REQ_2021@weihf@使用.tar.gz 4 年 前
  weihf 44efecbc8a @IPU_FIXBUG_2021@weihf@修改命令中jar名称 4 年 前
  weihf 57bcd4f89b @IPU_REQ_2021@weihf@增加使用pom.xml快速生成镜像,将服务镜像上传docker仓库功能 4 年 前
  weihf 89545f503f @IPU_FIXBUG_2021@weihf@修复sonar违规 4 年 前
  weihf ca26a609f4 @IPU_FIXBUG_2021@weihf@修复sonar违规代码 4 年 前
  weihf 23191aa858 @IPU_REQ_0045@weihf@提交mybatisplus示例 4 年 前
  weihf c8f123ebac @IPU_REQ_0044@weihf@添加springboot cache功能 4 年 前
  weihf 452fe201c9 @IPU_FIXBUG_0042@weihf@提交ipu-cache配置文件,配置redis 4 年 前
  weihf 0142ad2255 @IPU_FIXBUG_0050@weihf@调整用户未登录的错误码为HTTP的错误码。 4 年 前
  weihf 722b1ab8dc @IPU_FIXBUG_0043@weihf@调整注释说明 4 年 前
  weihf 5a9c984478 @IPU_REQ_0043@weihf@添加spring session校验,使用ipu-cache.xml配置session所用redis。 4 年 前
  huangbo 3fb5293f81 app-conf.js配置文件迁移至应用工程中 4 年 前
  huangbo 1351b07699 ipu-db和ipu-rest由3.1-SNAPSHOT升级为3.2-SNAPSHOT 4 年 前
  huangbo f69854df98 Merge branch 'master' of http://10.1.235.20:3000/rest/rest-guide.git 4 年 前
  huangbo 98a4e18a7a DbSqlController中增加分页的Demo范例 4 年 前
  赖骏劼 5b1c5a94a6 Merge branch 'master' of http://10.1.235.20:3000/rest/rest-guide 4 年 前
  huangbo e3c3a43e67 简化Sql Mgmt的使用范例 4 年 前
  赖骏劼 dd5b24fca4 @laijj@忽略文件补充target目录忽略配置 4 年 前
  huangbo 4fc2ab04f0 1.初始化工程ipu-rest-part-libs。 4 年 前
  huangbo 0f9ab42019 简化pom。将spring-boot-maven-plugin的引入和调用下层至ipu-rest-libs中。 4 年 前
  huangbo 091c88d8d2 优化pom.xml文件,将spring-boot-maven-plugin中的<fork>true</fork>下沉至ipu-rest-libs 4 年 前
  huangbo 20d6a4accb 新增CRUD代码范例,遵循control、service、dao的代码结构。 4 年 前
  huangbo 325f7b532d 基于SQL管理工具的使用范例 4 年 前