切换导航条
此项目
正在载入...
登录
message_bus
/
message_bus_sdk
·
提交
转到一个项目
GitLab
转到群组
项目
活动
文件
提交
管道
0
构建
0
图表
里程碑
问题
0
合并请求
0
成员
标记
维基
派生
网络
创建新的问题
下载为
邮件补丁
差异文件
浏览文件
作者
王勇
5 years ago
提交
6d65c3231562bd49562ed392360e8c3e1d75df40
0 个父辈
搭建sdk基础架子
隐藏空白字符变更
内嵌
并排对比
正在显示
9 个修改的文件
包含
812 行增加
和
0 行删除
package-lock.json
pom.xml
src/main/java/com/sunyo/wlpt/message/bus/sdk/App.java
src/main/java/com/sunyo/wlpt/message/bus/sdk/request/BusMessage.java
src/main/java/com/sunyo/wlpt/message/bus/sdk/request/MessageRequest.java
src/main/java/com/sunyo/wlpt/message/bus/sdk/response/BusResult.java
src/main/java/com/sunyo/wlpt/message/bus/sdk/response/ResultJson.java
src/main/java/com/sunyo/wlpt/message/bus/sdk/utils/GsonUtil.java
src/main/java/com/sunyo/wlpt/message/bus/sdk/utils/OkHttpUtils.java
package-lock.json
0 → 100644
查看文件 @
6d65c32
{
"lockfileVersion"
:
1
}
...
...
pom.xml
0 → 100644
查看文件 @
6d65c32
<?xml version="1.0" encoding="UTF-8"?>
<project
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xmlns=
"http://maven.apache.org/POM/4.0.0"
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>
com.sunyo.wlpt.message.bus.sdk
</groupId>
<artifactId>
message_bus_sdk
</artifactId>
<version>
1.0.0
</version>
<name>
message_bus_sdk
</name>
<!-- FIXME change it to the project's website -->
<url>
http://www.example.com
</url>
<properties>
<project.reporting.outputEncoding>
UTF-8
</project.reporting.outputEncoding>
<project.build.sourceEncoding>
UTF-8
</project.build.sourceEncoding>
<maven.compiler.source>
1.8
</maven.compiler.source>
<maven.compiler.target>
1.8
</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>
com.squareup.okhttp3
</groupId>
<artifactId>
okhttp
</artifactId>
<version>
4.8.1
</version>
</dependency>
<dependency>
<groupId>
org.apache.httpcomponents
</groupId>
<artifactId>
httpclient
</artifactId>
<version>
4.5.12
</version>
</dependency>
<dependency>
<groupId>
org.apache.commons
</groupId>
<artifactId>
commons-lang3
</artifactId>
<version>
3.11
</version>
</dependency>
<dependency>
<groupId>
com.google.code.gson
</groupId>
<artifactId>
gson
</artifactId>
<version>
2.8.6
</version>
</dependency>
<dependency>
<groupId>
log4j
</groupId>
<artifactId>
log4j
</artifactId>
<version>
1.2.17
</version>
</dependency>
<dependency>
<groupId>
org.slf4j
</groupId>
<artifactId>
slf4j-nop
</artifactId>
<version>
1.7.30
</version>
</dependency>
<dependency>
<groupId>
org.slf4j
</groupId>
<artifactId>
slf4j-simple
</artifactId>
<version>
1.7.30
</version>
<scope>
test
</scope>
</dependency>
<dependency>
<groupId>
org.slf4j
</groupId>
<artifactId>
slf4j-log4j12
</artifactId>
<version>
1.7.30
</version>
<scope>
test
</scope>
</dependency>
<dependency>
<groupId>
org.slf4j
</groupId>
<artifactId>
slf4j-api
</artifactId>
<version>
1.7.30
</version>
</dependency>
</dependencies>
<build>
<pluginManagement>
<!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
<plugins>
<!-- clean lifecycle, see https://maven.apache.org/ref/current/maven-core/lifecycles.html#clean_Lifecycle -->
<plugin>
<artifactId>
maven-clean-plugin
</artifactId>
<version>
3.1.0
</version>
</plugin>
<!-- default lifecycle, jar packaging: see https://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_jar_packaging -->
<plugin>
<artifactId>
maven-resources-plugin
</artifactId>
<version>
3.0.2
</version>
</plugin>
<plugin>
<artifactId>
maven-compiler-plugin
</artifactId>
<version>
3.8.0
</version>
</plugin>
<plugin>
<artifactId>
maven-surefire-plugin
</artifactId>
<version>
2.22.1
</version>
</plugin>
<plugin>
<artifactId>
maven-jar-plugin
</artifactId>
<version>
3.0.2
</version>
</plugin>
<plugin>
<artifactId>
maven-install-plugin
</artifactId>
<version>
2.5.2
</version>
</plugin>
<plugin>
<artifactId>
maven-deploy-plugin
</artifactId>
<version>
2.8.2
</version>
</plugin>
<!-- site lifecycle, see https://maven.apache.org/ref/current/maven-core/lifecycles.html#site_Lifecycle -->
<plugin>
<artifactId>
maven-site-plugin
</artifactId>
<version>
3.7.1
</version>
</plugin>
<!-- <plugin>-->
<!-- <artifactId>maven-project-info-reports-plugin</artifactId>-->
<!-- <version>3.0.0</version>-->
<!-- </plugin>-->
</plugins>
</pluginManagement>
</build>
</project>
...
...
src/main/java/com/sunyo/wlpt/message/bus/sdk/App.java
0 → 100644
查看文件 @
6d65c32
package
com
.
sunyo
.
wlpt
.
message
.
bus
.
sdk
;
import
com.sunyo.wlpt.message.bus.sdk.request.MessageRequest
;
import
com.sunyo.wlpt.message.bus.sdk.response.BusResult
;
import
java.io.IOException
;
/**
* Hello world!
*/
public
class
App
{
public
static
void
main
(
String
[]
args
)
{
MessageRequest
request
=
new
MessageRequest
();
BusResult
result
=
request
.
getMessageOne
(
"zicheng"
,
"S_zicheng"
,
"V_zicheng"
,
"V_zicheng_zicheng_R"
);
System
.
out
.
println
(
result
);
}
}
...
...
src/main/java/com/sunyo/wlpt/message/bus/sdk/request/BusMessage.java
0 → 100644
查看文件 @
6d65c32
package
com
.
sunyo
.
wlpt
.
message
.
bus
.
sdk
.
request
;
import
com.sunyo.wlpt.message.bus.sdk.response.ResultJson
;
import
com.sunyo.wlpt.message.bus.sdk.utils.GsonUtil
;
import
com.sunyo.wlpt.message.bus.sdk.utils.OkHttpUtils
;
import
okhttp3.MediaType
;
import
java.io.IOException
;
import
java.util.HashMap
;
/**
* @author 子诚
* Description:
* 时间:2020/9/3 15:18
*/
public
class
BusMessage
{
private
static
final
String
URL_CONSUMER_ONE
=
"http://192.168.1.33:9032/bus/rabbit/consumer_one"
;
private
static
final
String
URL_CONSUMER_MORE
=
"http://192.168.1.33:9032/bus/rabbit/consumer_more"
;
private
static
final
MediaType
MEDIA_TYPE_TEXT
=
MediaType
.
parse
(
"application/x-www-form-urlencoded; charset=utf-8"
);
/**
* 指定队列,消费一条消息
*
* @param RUSR 接收者
* @param SERV 服务器名称
* @param VSHT 虚拟主机名称
* @param RCVR 队列名称
* @return
* @throws IOException
*/
public
static
ResultJson
consumerOne
(
String
RUSR
,
String
SERV
,
String
VSHT
,
String
RCVR
)
{
HashMap
<
String
,
String
>
params
=
new
HashMap
<>();
params
.
put
(
"RUSR"
,
RUSR
);
params
.
put
(
"SERV"
,
SERV
);
params
.
put
(
"VSHT"
,
VSHT
);
params
.
put
(
"RCVR"
,
RCVR
);
OkHttpUtils
okHttp
=
new
OkHttpUtils
();
String
json
=
okHttp
.
doGet
(
URL_CONSUMER_ONE
,
params
);
ResultJson
result
=
GsonUtil
.
GsonToBean
(
json
,
ResultJson
.
class
);
return
result
;
}
}
...
...
src/main/java/com/sunyo/wlpt/message/bus/sdk/request/MessageRequest.java
0 → 100644
查看文件 @
6d65c32
package
com
.
sunyo
.
wlpt
.
message
.
bus
.
sdk
.
request
;
import
com.sunyo.wlpt.message.bus.sdk.response.BusResult
;
import
com.sunyo.wlpt.message.bus.sdk.response.ResultJson
;
/**
* @author 子诚
* Description:
* 时间:2020/9/3 18:04
*/
public
class
MessageRequest
{
private
static
final
String
SUCCESS_ONE_CODE
=
"20200"
;
/**
* 接收消息,一条
*
* @param RUSR 接收人名称
* @param SERV 服务器名称
* @param VSHT 虚拟主机名称
* @param RCVR 接收队列名称
* @return
*/
public
BusResult
getMessageOne
(
String
RUSR
,
String
SERV
,
String
VSHT
,
String
RCVR
)
{
ResultJson
resultJson
=
BusMessage
.
consumerOne
(
RUSR
,
SERV
,
VSHT
,
RCVR
);
if
(
resultJson
==
null
)
{
}
String
code
=
resultJson
.
getCode
();
String
msg
=
resultJson
.
getMsg
();
if
(!
SUCCESS_ONE_CODE
.
equals
(
resultJson
.
getCode
()))
{
String
resultMessage
=
"错误代码:"
+
code
+
";错误信息:"
+
msg
;
BusResult
errorResult
=
new
BusResult
(
false
,
code
,
resultMessage
);
return
errorResult
;
}
String
data
=
(
String
)
resultJson
.
getData
();
BusResult
result
=
new
BusResult
(
true
,
code
,
msg
,
data
);
return
result
;
}
}
...
...
src/main/java/com/sunyo/wlpt/message/bus/sdk/response/BusResult.java
0 → 100644
查看文件 @
6d65c32
package
com
.
sunyo
.
wlpt
.
message
.
bus
.
sdk
.
response
;
import
java.util.List
;
/**
* @author 子诚
* Description:返回结果类
* 时间:2020/9/3 18:49
*/
public
class
BusResult
{
/**
* 是否成功?
* true,成功
* false,失败
*/
private
Boolean
isOk
;
/**
* 状态代码
*/
private
String
code
;
/**
* 对应状态信息
*/
private
String
message
;
/**
* 接收一条消息的存放属性
*/
private
String
data
;
/**
* 接收多条消息的存放属性
*/
private
List
<
String
>
dataList
;
public
BusResult
(
Boolean
isOk
,
String
code
,
String
message
)
{
this
.
isOk
=
isOk
;
this
.
code
=
code
;
this
.
message
=
message
;
}
public
BusResult
(
Boolean
isOk
,
String
code
,
String
message
,
String
data
)
{
this
.
isOk
=
isOk
;
this
.
code
=
code
;
this
.
message
=
message
;
this
.
data
=
data
;
}
public
BusResult
(
Boolean
isOk
,
String
code
,
String
message
,
List
<
String
>
dataList
)
{
this
.
isOk
=
isOk
;
this
.
code
=
code
;
this
.
message
=
message
;
this
.
dataList
=
dataList
;
}
public
Boolean
getOk
()
{
return
isOk
;
}
public
void
setOk
(
Boolean
ok
)
{
isOk
=
ok
;
}
public
String
getCode
()
{
return
code
;
}
public
void
setCode
(
String
code
)
{
this
.
code
=
code
;
}
public
String
getMessage
()
{
return
message
;
}
public
void
setMessage
(
String
message
)
{
this
.
message
=
message
;
}
public
String
getData
()
{
return
data
;
}
public
void
setData
(
String
data
)
{
this
.
data
=
data
;
}
public
List
<
String
>
getDataList
()
{
return
dataList
;
}
public
void
setDataList
(
List
<
String
>
dataList
)
{
this
.
dataList
=
dataList
;
}
}
...
...
src/main/java/com/sunyo/wlpt/message/bus/sdk/response/ResultJson.java
0 → 100644
查看文件 @
6d65c32
package
com
.
sunyo
.
wlpt
.
message
.
bus
.
sdk
.
response
;
import
java.io.Serializable
;
/**
* @author 子诚
* Description:返回结果封装类
* 时间:2020/7/01 10:06
*/
public
class
ResultJson
<
T
>
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 响应业务状态,默认为200
*/
private
String
code
;
/**
* 响应消息
*/
private
String
msg
;
/**
* 错误消息内容
*/
private
String
error
;
/**
* 数据总条数
*/
private
Integer
total
;
/**
* 响应数据
*/
private
T
data
;
/**
* JWT令牌
*/
private
String
jwtToken
;
/**
* 无参,构造方法
*/
public
ResultJson
()
{
}
/**
* 定义有参构造器
*
* @param code 响应状态
* @param msg 响应消息
*/
public
ResultJson
(
String
code
,
String
msg
)
{
this
.
code
=
code
;
this
.
msg
=
msg
;
}
/**
* 定义有参构造器
*
* @param code 响应状态
* @param msg 响应消息
* @param data 响应数据
*/
public
ResultJson
(
String
code
,
String
msg
,
T
data
)
{
this
.
code
=
code
;
this
.
msg
=
msg
;
this
.
data
=
data
;
}
public
ResultJson
(
String
code
,
String
msg
,
T
data
,
Integer
total
)
{
this
.
code
=
code
;
this
.
msg
=
msg
;
this
.
data
=
data
;
this
.
total
=
total
;
}
public
String
getCode
()
{
return
code
;
}
public
void
setCode
(
String
code
)
{
this
.
code
=
code
;
}
public
String
getMsg
()
{
return
msg
;
}
public
void
setMsg
(
String
msg
)
{
this
.
msg
=
msg
;
}
public
String
getError
()
{
return
error
;
}
public
void
setError
(
String
error
)
{
this
.
error
=
error
;
}
public
Integer
getTotal
()
{
return
total
;
}
public
void
setTotal
(
Integer
total
)
{
this
.
total
=
total
;
}
public
T
getData
()
{
return
data
;
}
public
void
setData
(
T
data
)
{
this
.
data
=
data
;
}
public
String
getJwtToken
()
{
return
jwtToken
;
}
public
void
setJwtToken
(
String
jwtToken
)
{
this
.
jwtToken
=
jwtToken
;
}
}
...
...
src/main/java/com/sunyo/wlpt/message/bus/sdk/utils/GsonUtil.java
0 → 100644
查看文件 @
6d65c32
package
com
.
sunyo
.
wlpt
.
message
.
bus
.
sdk
.
utils
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Map
;
import
com.google.gson.Gson
;
import
com.google.gson.GsonBuilder
;
import
com.google.gson.JsonArray
;
import
com.google.gson.JsonElement
;
import
com.google.gson.JsonParser
;
import
com.google.gson.reflect.TypeToken
;
/**
* @author 子诚
* Description:
* 时间:2020/6/5 10:49
*/
public
class
GsonUtil
{
private
static
Gson
gson
=
null
;
static
{
if
(
gson
==
null
)
{
gson
=
new
GsonBuilder
().
setDateFormat
(
"yyyy-MM-dd HH:mm:ss"
).
create
();
}
}
private
GsonUtil
()
{
}
/**
* 将对象转成json格式
*
* @param object
* @return String
*/
public
static
String
GsonString
(
Object
object
)
{
String
gsonString
=
null
;
if
(
gson
!=
null
)
{
gsonString
=
gson
.
toJson
(
object
);
}
return
gsonString
;
}
/**
* 将json转成特定的cls的对象
*
* @param gsonString
* @param cls
* @return
*/
public
static
<
T
>
T
GsonToBean
(
String
gsonString
,
Class
<
T
>
cls
)
{
T
t
=
null
;
if
(
gson
!=
null
)
{
t
=
gson
.
fromJson
(
gsonString
,
cls
);
}
return
t
;
}
/**
* json字符串转成list
*
* @param gsonString
* @param cls
* @return
*/
public
static
<
T
>
List
<
T
>
GsonToList
(
String
gsonString
,
Class
<
T
>
cls
)
{
List
<
T
>
list
=
null
;
if
(
gson
!=
null
)
{
list
=
gson
.
fromJson
(
gsonString
,
new
TypeToken
<
List
<
T
>>()
{
}.
getType
());
}
return
list
;
}
/**
* json字符串转成list
*
* @param json
* @param cls
* @return
*/
public
static
<
T
>
List
<
T
>
jsonToList
(
String
json
,
Class
<
T
>
cls
)
{
ArrayList
<
T
>
mList
=
new
ArrayList
<
T
>();
JsonArray
array
=
new
JsonParser
().
parse
(
json
).
getAsJsonArray
();
for
(
final
JsonElement
elem
:
array
)
{
mList
.
add
(
gson
.
fromJson
(
elem
,
cls
));
}
return
mList
;
}
/**
* json字符串转成list中有map的
*
* @param gsonString
* @return
*/
public
static
<
T
>
List
<
Map
<
String
,
T
>>
GsonToListMaps
(
String
gsonString
)
{
List
<
Map
<
String
,
T
>>
list
=
null
;
if
(
gson
!=
null
)
{
list
=
gson
.
fromJson
(
gsonString
,
new
TypeToken
<
List
<
Map
<
String
,
T
>>>()
{
}.
getType
());
}
return
list
;
}
/**
* json字符串转成map的
*
* @param gsonString
* @return
*/
public
static
<
T
>
Map
<
String
,
T
>
GsonToMaps
(
String
gsonString
)
{
Map
<
String
,
T
>
map
=
null
;
if
(
gson
!=
null
)
{
map
=
gson
.
fromJson
(
gsonString
,
new
TypeToken
<
Map
<
String
,
T
>>()
{
}.
getType
());
}
return
map
;
}
}
...
...
src/main/java/com/sunyo/wlpt/message/bus/sdk/utils/OkHttpUtils.java
0 → 100644
查看文件 @
6d65c32
package
com
.
sunyo
.
wlpt
.
message
.
bus
.
sdk
.
utils
;
import
lombok.extern.slf4j.Slf4j
;
import
okhttp3.*
;
import
org.apache.commons.lang3.StringUtils
;
import
java.net.URLEncoder
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.concurrent.TimeUnit
;
/**
* @author 子诚
* Description:
* 时间:2020/9/3 15:22
*/
@Slf4j
public
class
OkHttpUtils
{
private
static
final
MediaType
MEDIA_TYPE_JSON
=
MediaType
.
parse
(
"application/json; charset=utf-8"
);
private
static
final
MediaType
MEDIA_TYPE_TEXT
=
MediaType
.
parse
(
"application/x-www-form-urlencoded; charset=utf-8"
);
private
static
final
byte
[]
LOCKER
=
new
byte
[
0
];
private
static
OkHttpUtils
instance
;
private
OkHttpClient
okHttpClient
;
public
OkHttpUtils
()
{
okHttpClient
=
new
OkHttpClient
.
Builder
()
//10秒连接超时
.
connectTimeout
(
10
,
TimeUnit
.
SECONDS
)
//10m秒写入超时
.
writeTimeout
(
10
,
TimeUnit
.
SECONDS
)
//10秒读取超时
.
readTimeout
(
10
,
TimeUnit
.
SECONDS
)
.
build
();
}
public
static
OkHttpUtils
getInstance
()
{
if
(
instance
==
null
)
{
synchronized
(
LOCKER
)
{
if
(
instance
==
null
)
{
instance
=
new
OkHttpUtils
();
}
}
}
return
instance
;
}
public
String
doGet
(
String
url
)
{
if
(
isBlankUrl
(
url
))
{
return
null
;
}
Request
request
=
getRequestForGet
(
url
);
return
commonRequest
(
request
);
}
public
String
doGet
(
String
url
,
HashMap
<
String
,
String
>
params
)
{
if
(
isBlankUrl
(
url
))
{
return
null
;
}
Request
request
=
getRequestForGet
(
url
,
params
);
return
commonRequest
(
request
);
}
public
String
doPostJson
(
String
url
,
String
json
)
{
if
(
isBlankUrl
(
url
))
{
return
null
;
}
Request
request
=
getRequestForPostJson
(
url
,
json
);
return
commonRequest
(
request
);
}
public
String
doPostForm
(
String
url
,
Map
<
String
,
String
>
params
)
{
if
(
isBlankUrl
(
url
))
{
return
null
;
}
Request
request
=
getRequestForPostForm
(
url
,
params
);
return
commonRequest
(
request
);
}
private
Boolean
isBlankUrl
(
String
url
)
{
if
(
StringUtils
.
isBlank
(
url
))
{
log
.
info
(
"url is not blank"
);
return
true
;
}
else
{
return
false
;
}
}
private
String
commonRequest
(
Request
request
)
{
String
re
=
""
;
try
{
Call
call
=
okHttpClient
.
newCall
(
request
);
Response
response
=
call
.
execute
();
if
(
response
.
isSuccessful
())
{
re
=
response
.
body
().
string
();
log
.
info
(
"request url:{};response:{}"
,
request
.
url
().
toString
(),
re
);
}
else
{
log
.
info
(
"request failure url:{};message:{}"
,
request
.
url
().
toString
(),
response
.
message
());
}
}
catch
(
Exception
e
)
{
log
.
error
(
"request execute failure"
,
e
);
}
return
re
;
}
private
Request
getRequestForPostJson
(
String
url
,
String
json
)
{
RequestBody
body
=
RequestBody
.
create
(
MEDIA_TYPE_JSON
,
json
);
Request
request
=
new
Request
.
Builder
()
.
url
(
url
)
.
post
(
body
)
.
build
();
return
request
;
}
private
Request
getRequestForPostForm
(
String
url
,
Map
<
String
,
String
>
params
)
{
if
(
params
==
null
)
{
params
=
new
HashMap
<>();
}
FormBody
.
Builder
builder
=
new
FormBody
.
Builder
();
if
(
params
!=
null
&&
params
.
size
()
>
0
)
{
for
(
Map
.
Entry
<
String
,
String
>
entry
:
params
.
entrySet
())
{
builder
.
addEncoded
(
entry
.
getKey
(),
entry
.
getValue
());
}
}
RequestBody
requestBody
=
builder
.
build
();
Request
request
=
new
Request
.
Builder
()
.
url
(
url
)
.
post
(
requestBody
)
.
build
();
return
request
;
}
private
Request
getRequestForGet
(
String
url
,
HashMap
<
String
,
String
>
params
)
{
Request
request
=
new
Request
.
Builder
()
.
url
(
getUrlStringForGet
(
url
,
params
))
.
build
();
return
request
;
}
private
Request
getRequestForGet
(
String
url
)
{
Request
request
=
new
Request
.
Builder
()
.
url
(
url
)
.
build
();
return
request
;
}
private
String
getUrlStringForGet
(
String
url
,
HashMap
<
String
,
String
>
params
)
{
StringBuilder
urlBuilder
=
new
StringBuilder
();
urlBuilder
.
append
(
url
);
urlBuilder
.
append
(
"?"
);
if
(
params
!=
null
&&
params
.
size
()
>
0
)
{
for
(
Map
.
Entry
<
String
,
String
>
entry
:
params
.
entrySet
())
{
try
{
urlBuilder
.
append
(
"&"
).
append
(
entry
.
getKey
()).
append
(
"="
).
append
(
URLEncoder
.
encode
(
entry
.
getValue
(),
"UTF-8"
));
}
catch
(
Exception
e
)
{
urlBuilder
.
append
(
"&"
).
append
(
entry
.
getKey
()).
append
(
"="
).
append
(
entry
.
getValue
());
}
}
}
return
urlBuilder
.
toString
();
}
}
\ No newline at end of file
...
...
请
注册
或
登录
后发表评论