Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in / Register
Toggle navigation
Y
yzg-util
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
YZG
yzg-util
Commits
7b578beb
Commit
7b578beb
authored
Aug 16, 2022
by
yanzg
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'ver1.1' of
http://192.168.0.204/yzg/yzg-util
parents
6a601cc5
7d35fcd5
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
91 additions
and
0 deletions
+91
-0
MqService.java
...q/src/main/java/com/yanzuoguang/mq/service/MqService.java
+55
-0
MqServiceImpl.java
...n/java/com/yanzuoguang/mq/service/impl/MqServiceImpl.java
+36
-0
No files found.
yzg-util-mq/src/main/java/com/yanzuoguang/mq/service/MqService.java
View file @
7b578beb
...
@@ -9,6 +9,8 @@ import org.springframework.amqp.core.Message;
...
@@ -9,6 +9,8 @@ import org.springframework.amqp.core.Message;
import
org.springframework.amqp.rabbit.core.ChannelAwareMessageListener
;
import
org.springframework.amqp.rabbit.core.ChannelAwareMessageListener
;
import
org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer
;
import
org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer
;
import
java.util.function.Consumer
;
/**
/**
* 消息队列服务
* 消息队列服务
*
*
...
@@ -62,6 +64,59 @@ public interface MqService {
...
@@ -62,6 +64,59 @@ public interface MqService {
@ApiOperation
(
value
=
"消息收到确认"
)
@ApiOperation
(
value
=
"消息收到确认"
)
void
basicAck
(
Message
message
,
Channel
channel
);
void
basicAck
(
Message
message
,
Channel
channel
);
/**
* 消息收到确认,出错时不需要重发
*
* @param messageBody 消息体
* @param channel 收到的通道
* @param message 消息内容
* @param consumerMessage 消费者,具体业务处理函数
*/
@ApiOperation
(
value
=
"消息收到确认"
)
void
basicHandle
(
Message
messageBody
,
Channel
channel
,
String
message
,
Consumer
<
String
>
consumerMessage
);
/**
* 消息收到确认,出错时重发
*
* @param messageBody 消息体
* @param channel 收到的通道
* @param exchangeNameAndRouteKey 出错时重发的路由
* @param message 消息内容
* @param consumerMessage 消费者,具体业务处理函数
*/
@ApiOperation
(
value
=
"消息收到确认"
)
void
basicHandle
(
Message
messageBody
,
Channel
channel
,
String
exchangeNameAndRouteKey
,
String
message
,
Consumer
<
String
>
consumerMessage
);
/**
* 消息收到确认,出错时重发
*
* @param messageBody 消息体
* @param channel 收到的通道
* @param exchangeNameAndRouteKey 出错时重发的路由
* @param message 消息内容
* @param dedTime 消息延迟处理时间
* @param consumerMessage 消费者,具体业务处理函数
*/
@ApiOperation
(
value
=
"消息收到确认"
)
void
basicHandle
(
Message
messageBody
,
Channel
channel
,
String
exchangeNameAndRouteKey
,
String
message
,
long
dedTime
,
Consumer
<
String
>
consumerMessage
);
/**
* 消息收到确认,出错时重发
*
* @param messageBody 消息体
* @param channel 收到的通道
* @param exchangeName 出错时重发的交换器
* @param routeKey 出错时重发的路由
* @param message 消息内容
* @param dedTime 消息延迟处理时间
* @param consumerMessage 消费者,具体业务处理函数
*/
@ApiOperation
(
value
=
"消息收到确认"
)
void
basicHandle
(
Message
messageBody
,
Channel
channel
,
String
exchangeName
,
String
routeKey
,
String
message
,
long
dedTime
,
Consumer
<
String
>
consumerMessage
);
/**
/**
* 动态注册消费者回调队列
* 动态注册消费者回调队列
*
*
...
...
yzg-util-mq/src/main/java/com/yanzuoguang/mq/service/impl/MqServiceImpl.java
View file @
7b578beb
...
@@ -6,7 +6,9 @@ import com.yanzuoguang.mq.service.*;
...
@@ -6,7 +6,9 @@ import com.yanzuoguang.mq.service.*;
import
com.yanzuoguang.mq.vo.MessageVo
;
import
com.yanzuoguang.mq.vo.MessageVo
;
import
com.yanzuoguang.mq.vo.QueueVo
;
import
com.yanzuoguang.mq.vo.QueueVo
;
import
com.yanzuoguang.mq.vo.req.*
;
import
com.yanzuoguang.mq.vo.req.*
;
import
com.yanzuoguang.util.exception.CodeException
;
import
com.yanzuoguang.util.helper.StringHelper
;
import
com.yanzuoguang.util.helper.StringHelper
;
import
com.yanzuoguang.util.log.Log
;
import
org.springframework.amqp.core.Message
;
import
org.springframework.amqp.core.Message
;
import
org.springframework.amqp.rabbit.core.ChannelAwareMessageListener
;
import
org.springframework.amqp.rabbit.core.ChannelAwareMessageListener
;
import
org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer
;
import
org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer
;
...
@@ -14,6 +16,8 @@ import org.springframework.beans.factory.annotation.Autowired;
...
@@ -14,6 +16,8 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.core.annotation.Order
;
import
org.springframework.core.annotation.Order
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
java.util.function.Consumer
;
/**
/**
* 消息队列服务实现类
* 消息队列服务实现类
*
*
...
@@ -101,6 +105,38 @@ public class MqServiceImpl implements MqService {
...
@@ -101,6 +105,38 @@ public class MqServiceImpl implements MqService {
messageSendService
.
basicAck
(
message
,
channel
);
messageSendService
.
basicAck
(
message
,
channel
);
}
}
@Override
public
void
basicHandle
(
Message
messageBody
,
Channel
channel
,
String
message
,
Consumer
<
String
>
consumerMessage
)
{
this
.
basicHandle
(
messageBody
,
channel
,
StringHelper
.
EMPTY
,
StringHelper
.
EMPTY
,
message
,
0
,
consumerMessage
);
}
@Override
public
void
basicHandle
(
Message
messageBody
,
Channel
channel
,
String
exchangeNameAndRouteKey
,
String
message
,
Consumer
<
String
>
consumerMessage
)
{
this
.
basicHandle
(
messageBody
,
channel
,
exchangeNameAndRouteKey
,
exchangeNameAndRouteKey
,
message
,
60
*
1000
,
consumerMessage
);
}
@Override
public
void
basicHandle
(
Message
messageBody
,
Channel
channel
,
String
exchangeNameAndRouteKey
,
String
message
,
long
dedTime
,
Consumer
<
String
>
consumerMessage
)
{
this
.
basicHandle
(
messageBody
,
channel
,
exchangeNameAndRouteKey
,
exchangeNameAndRouteKey
,
message
,
dedTime
,
consumerMessage
);
}
@Override
public
void
basicHandle
(
Message
messageBody
,
Channel
channel
,
String
exchangeName
,
String
routeKey
,
String
message
,
long
dedTime
,
Consumer
<
String
>
consumerMessage
)
{
try
{
consumerMessage
.
accept
(
message
);
}
catch
(
CodeException
e
)
{
Log
.
error
(
MqServiceImpl
.
class
,
e
);
}
catch
(
Exception
e
)
{
Log
.
error
(
MqServiceImpl
.
class
,
e
);
if
(
StringHelper
.
isEmpty
(
exchangeName
,
routeKey
))
{
return
;
}
this
.
message
(
new
MessageVo
(
exchangeName
,
routeKey
,
message
,
dedTime
));
}
finally
{
this
.
basicAck
(
messageBody
,
channel
);
}
}
/**
/**
* 动态注册消费者回调队列
* 动态注册消费者回调队列
*
*
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment