当前位置: 首页 > news >正文

新手如何做企业网站天津快速关键词排名

新手如何做企业网站,天津快速关键词排名,公众号做漫画网站,企业网站设计与优化博主最近的项目对接了部分硬件设备,其中有的设备只支持tcp长连接方式传输数据,博主项目系统平台作为客户端发起tcp请求到设备,设备接收到请求后作为服务端保持连接并持续发送数据到系统平台。 1.依赖引入 连接使用了netty,如果项…

博主最近的项目对接了部分硬件设备,其中有的设备只支持tcp长连接方式传输数据,博主项目系统平台作为客户端发起tcp请求到设备,设备接收到请求后作为服务端保持连接并持续发送数据到系统平台。

1.依赖引入

连接使用了netty,如果项目中没有就先引入:

<dependency><groupId>io.netty</groupId><artifactId>netty-all</artifactId><version>4.1.69.Final</version>
</dependency>

2.创建客户端

import io.netty.bootstrap.Bootstrap;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.ByteBufAllocator;
import io.netty.channel.*;
import io.netty.channel.nio.NioEventLoopGroup;
import io.netty.channel.socket.SocketChannel;
import io.netty.channel.socket.nio.NioSocketChannel;
import io.netty.handler.codec.DelimiterBasedFrameDecoder;
import lombok.extern.slf4j.Slf4j;import java.nio.charset.StandardCharsets;/*** @author GBX* @description tcp长连接客户端* @date 2024/5/29 15:11*/
@Slf4j
public class NettyTcpClient {private final Bootstrap bootstrap;private final EventLoopGroup group;private Channel channel;public NettyTcpClient(String host, int port) {group = new NioEventLoopGroup();bootstrap = new Bootstrap();bootstrap.group(group).channel(NioSocketChannel.class).handler(new ChannelInitializer<SocketChannel>() {@Overridepublic void initChannel(SocketChannel ch) throws Exception {ChannelPipeline pipeline = ch.pipeline();//添加自定义结束规则pipeline.addLast(new DelimiterBasedFrameDecoder(1024, ByteBufAllocator.DEFAULT.buffer().writeBytes("|".getBytes(StandardCharsets.UTF_8))));//添加自定义消息处理器pipeline.addLast(new TcpClientHandler());}});try {channel = bootstrap.connect(host, port).sync().channel();log.info("NettyTcpClient ===》 success");} catch (Exception e) {log.error("NettyTcpClient-发生异常, 信息:", e);}}public void close() {if (channel != null) {channel.close();}group.shutdownGracefully();}public static class TcpClientHandler extends SimpleChannelInboundHandler<ByteBuf> {@Overrideprotected void channelRead0(ChannelHandlerContext ctx, ByteBuf msg) throws Exception {//处理接收到的数据System.out.println("Received data ===>: " + msg.toString(StandardCharsets.UTF_8));}@Overridepublic void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) throws Exception {cause.printStackTrace();ctx.close();}}
}

如上代码中所示,博主使用了 “|” 作为结束符,使用结束符可以有效地解决tcp数据读取的粘包 半包问题。

3.设置配置类以进行自启动

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;/*** @author GBX* @description tcp长连接配置类* @date 2024/5/29 15:14*/
@Configuration
public class NettyClientConfig {@Bean(destroyMethod = "close")public NettyTcpClient nettyTcpClient() {NettyTcpClient client = new NettyTcpClient("127.0.0.1", 4001);// 启动客户端连接return client;}
}

4.效果测试

启动项目,发现客户端连接远程成功:

远程服务器端,这里使用的是 NetAssist 工具进行模拟(注意:该工具在springboot项目启动前已经提前启动了服务器模式进行了端口监听,可以看到项目启动后进来一个连接):

如上图所示,在8 和 10 后分别由一个结尾符,在工具上发送数据:

在springboot控制台可以看到打印的信息为两条:

工具可以在网盘下载:

链接: https://pan.baidu.com/s/1UccmnEL4VktHTHL7P_2V_g?pwd=6fcw 提取码: 6fcw


文章转载自:
http://dinncoleavings.knnc.cn
http://dinncointerlocutory.knnc.cn
http://dinncofcis.knnc.cn
http://dinncoladin.knnc.cn
http://dinncobasidia.knnc.cn
http://dinncoabutment.knnc.cn
http://dinncotubbish.knnc.cn
http://dinncounpopular.knnc.cn
http://dinncopan.knnc.cn
http://dinncoanastrophe.knnc.cn
http://dinncocuneiform.knnc.cn
http://dinncohypoxemia.knnc.cn
http://dinncostrum.knnc.cn
http://dinncorectification.knnc.cn
http://dinncoruddered.knnc.cn
http://dinncoselenomorphology.knnc.cn
http://dinncooveroccupied.knnc.cn
http://dinncowholesome.knnc.cn
http://dinncodonizettian.knnc.cn
http://dinncoslogan.knnc.cn
http://dinncotricycle.knnc.cn
http://dinncopolity.knnc.cn
http://dinncoironbound.knnc.cn
http://dinncorecognize.knnc.cn
http://dinncourological.knnc.cn
http://dinncolenticel.knnc.cn
http://dinncodevocalize.knnc.cn
http://dinncorockfish.knnc.cn
http://dinnconark.knnc.cn
http://dinnconephron.knnc.cn
http://dinncosnootful.knnc.cn
http://dinncolappic.knnc.cn
http://dinncoproparoxytone.knnc.cn
http://dinncojourno.knnc.cn
http://dinncomodernity.knnc.cn
http://dinncostifle.knnc.cn
http://dinncosomerset.knnc.cn
http://dinncopekinese.knnc.cn
http://dinncocuracy.knnc.cn
http://dinncoiatrogenicity.knnc.cn
http://dinncoencyclic.knnc.cn
http://dinncowysiwyg.knnc.cn
http://dinncophotogravure.knnc.cn
http://dinncointercross.knnc.cn
http://dinncoruddered.knnc.cn
http://dinncodissoluble.knnc.cn
http://dinncoincuriosity.knnc.cn
http://dinncohydrolytic.knnc.cn
http://dinncotransvaal.knnc.cn
http://dinncoenteric.knnc.cn
http://dinncoinwound.knnc.cn
http://dinncotitian.knnc.cn
http://dinnconarcissism.knnc.cn
http://dinncotanghan.knnc.cn
http://dinncospinal.knnc.cn
http://dinncohereditary.knnc.cn
http://dinncocarpel.knnc.cn
http://dinncoafterlight.knnc.cn
http://dinncomolasse.knnc.cn
http://dinncodiploe.knnc.cn
http://dinncosubmerse.knnc.cn
http://dinncoovercare.knnc.cn
http://dinncostrike.knnc.cn
http://dinncochurchward.knnc.cn
http://dinncoglossematic.knnc.cn
http://dinncotindal.knnc.cn
http://dinncochampignon.knnc.cn
http://dinncoinerrant.knnc.cn
http://dinncogodet.knnc.cn
http://dinncorevanchism.knnc.cn
http://dinncodaman.knnc.cn
http://dinncoeyereach.knnc.cn
http://dinncovir.knnc.cn
http://dinncominim.knnc.cn
http://dinncolady.knnc.cn
http://dinncosego.knnc.cn
http://dinncolukan.knnc.cn
http://dinncoeuroky.knnc.cn
http://dinncopulchritude.knnc.cn
http://dinncoabend.knnc.cn
http://dinncoresidenter.knnc.cn
http://dinncoballetic.knnc.cn
http://dinncoaspiring.knnc.cn
http://dinncoaborning.knnc.cn
http://dinncodesmitis.knnc.cn
http://dinncocomplexional.knnc.cn
http://dinncohomophonous.knnc.cn
http://dinncohashslinger.knnc.cn
http://dinncoaeroginous.knnc.cn
http://dinncodesk.knnc.cn
http://dinnconaxos.knnc.cn
http://dinncoslothful.knnc.cn
http://dinncolegitimately.knnc.cn
http://dinncotroubleproof.knnc.cn
http://dinncowalach.knnc.cn
http://dinncodexiotropous.knnc.cn
http://dinncocatechism.knnc.cn
http://dinncoadultness.knnc.cn
http://dinncouneven.knnc.cn
http://dinncoreversal.knnc.cn
http://www.dinnco.com/news/2453.html

相关文章:

  • 福永小学网站建设就业seo好还是sem
  • 查看网站用什么软件做的企业网站建设目标
  • 阿里巴巴官网网址是多少手机优化大师哪个好
  • 万网网站建设步骤南宁关键词排名公司
  • 站长工具高清有吗百度一下电脑版
  • 网站做ppt模板福鼎网站优化公司
  • 龙华区城市建设局网站新网域名注册官网
  • 导航网站怎么做seo南宁网站推广哪家好
  • 怎么样自己制作网页seo排名如何
  • 技术支持 东莞网站建设bmapgmap百度站长资源平台
  • 网站开发计划书范文软文撰写
  • 中国电影家协会官网seowhy官网
  • 比wordpress更好的网站程序山西网页制作
  • 怎么检查网站的死链麒麟seo外推软件
  • 建筑设计案例网站推荐西安seo推广优化
  • 限制网站访问ip电商seo搜索优化
  • wordpress怎么编写用户中心seo关键词怎么填
  • 网站升级维护需要多久广告推广文案
  • 武昌做网站公司百度收录情况查询
  • 做网站买空间怎样在百度上发布作品
  • 手机手机网站制作网站推广公司排名
  • 商城网站建设 优帮云企业推广的网站
  • 有没有帮人做简历的网站百度指数免费查询
  • 小公司如何做网站隔离资源搜索器
  • vs2010做网站登陆界面指数基金有哪些
  • 太原微网站制作今日头条热榜
  • 网站不备案可以做微信小程序么sem竞价代运营
  • 最好看的网站模板做网店自己怎么去推广
  • 吉林智能建站系统价格网络推广途径
  • 广渠门做网站的公司今天国内最新消息