nodejs 数据库操作,消息的发送和接收,模拟同步
var deasync = require('deasync'); //导入模板
var mysql=require('mysql');
var Stomp = require('stompjs');
var wordname=null;
var url=null;
var row1=null;
var row2=null;
var conn=mysql.createConnection(
{
host:'localhost',
user:'root',
password:'Aa1234',
database:'ec_spc',
port:3306
}
);
conn.connect();
select();//数据库的操作
wordname=new String(row1[0].WORD_NAME);//取得字段值
url=new String(row2[0].BAITAI_URL);//取得字段值
sendMessage(wordname,url);//发送消息
function select(){
var selectSql1="select * from spc_word_mst where WORD_ID=? limit 0,1 "
var selectSql2="select * from spc_baitai_mst where BAITAI_ID=? limit 0,1"
//SPC_Result_JH
var key1='001';
var key2='001';
var sync1=true;
var sync2=true;
conn.query(selectSql1,[key1],function(error,rows){
if(error) console.log(error)
row1=rows;
sync1=false;
});
while(sync1){deasync.sleep(400);}
conn.query(selectSql2,[key2],function(error1,rows){
if(error1) console.log(error1)
row2=rows;
sync2=false; });
while(sync2){deasync.sleep(400);}
return row1;
return row2;
}
function sendMessage(wordname,url)
{
// Use raw TCP sockets
// 用原始的tcp接口
var client = Stomp.overTCP('localhost', 61613);
// uncomment to print out the STOMP frames //client.debug = console.log; var connectCallback = function(frame) {
console.log ('Connected! sending some message');
client.send('/queue/FirstQueue', {}, "wordname:" + wordname+",url:"+url);
}; var errorCallback = function(error){
console.log(error.headers.message);
}; client.connect('admin', 'admin', connectCallback,connectCallback);
}
前提 启动activemq
接收消息
var Stomp=require('stompjs');
var args=process.argv.slice(2); //get param from bat
var flag=args[0];// get flag
var key_=args[1];// get key
var clientTime=new Date().toLocaleString();
var client=Stomp.overTCP('localhost',61613);
var connectCallBack=function(frame)
{
console.log ('Connected! sending some message');
client.send('/queue/FirstQueue', {}, "flag:" + flag+",key:"+key_+",clientTime:"+clientTime);
}
var errorCallBack=function(error)
{
console.log(error.headers.message);
}
client.connect('admin','admin',connectCallBack,errorCallBack);
nodejs 数据库操作,消息的发送和接收,模拟同步。nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步nodejs 数据库操作,消息的发送和接收,模拟同步
nodejs 数据库操作,消息的发送和接收,模拟同步的更多相关文章
- 探索 OpenStack 之(15):oslo.messaging 和 Cinder 中 MessageQueue 消息的发送和接收
前言:上一篇文章 只是 RabbitMQ 的科普,本文将仔细分析 Cinder 中 RabbitMQ 的各组件的使用.消息的发送和接收等.由于各流程步骤很多,本文只会使用若干流程图来加以阐述,尽量做到 ...
- Queue 消息的发送与接收(PTP 消息传递模型)
上篇博客写到了JMS两种消息模型(P2P.pub/sub)<JMS两种消息模型>.本篇博客通过一个实例来进一步了解P2P模型. Queue消息的发送与接收--PTP消息传递模型,样例: Q ...
- Udp实现消息的发送和接收、以及图片的上传
//Udp实现消息的发送和接收 import java.io.IOException; import java.net.DatagramPacket; import java.net.Datagram ...
- msgrcv,msgsnd进程通信,消息的发送和接收
//进程通信,消息的发送和接收 //client.c #include <unistd.h> #include <sys/types.h> #include <sys/s ...
- 【Spring Boot】Spring Boot之整合RabbitMQ并实现消息的发送和接收
一.项目配置 1)引入maven坐标 <!--amqp--> <dependency> <groupId>org.springframework.boot</ ...
- 用PHP尝试RabbitMQ(amqp扩展)实现消息的发送和接收
消费者:接收消息 逻辑:创建连接-->创建channel-->创建交换机-->创建队列-->绑定交换机/队列/路由键-->接收消息 <?php /********* ...
- RabbitMQ消息确认(发送确认,接收确认)
前面几篇记录了收发消息的demo,今天记录下关于 消息确认方面的 问题. 下面是几个问题: 1.为什么要进行消息确认? 2.rabbitmq消息确认 机制是什么样的? 3.发送方如何确认消息发送成功? ...
- 使用spring-rabbit测试RabbitMQ消息确认(发送确认,接收确认)
1.首先是rabbitmq的配置文件: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns ...
- DICOM医学图像处理:DIMSE消息发送与接收“大同小异”之DCMTK fo-dicom mDCM
背景: 从DICOM网络传输一文开始,相继介绍了C-ECHO.C-FIND.C-STORE.C-MOVE等DIMSE-C服务的简单实现,博文中的代码给出的实例都是基于fo-dicom库来实现的,原因只 ...
随机推荐
- volatile的内存语义
volatile的特性 理解volatile特性的一个好方法是把对volatile变量的单个读/写,堪称是使用同一个锁对这些单个读/写操作做了同步. 锁的happens-before规则保证释放锁和获 ...
- B1003. 我要通过!
“答案正确”是自动判题系统给出的最令人欢喜的回复.本题属于PAT的“答案正确”大派送 —— 只要读入的字符串满足下列条件,系统就输出“答案正确”,否则输出“答案错误”. 得到“答案正确”的条件是: 1 ...
- STM32 一直进入串口接收中断
解决方法一: .串口初始化配置时,需要打开ORE 溢出中断,否则串口中断没有及时读取数据会触发溢出中断(打开接收中断默认开启溢出中断,但是为了读取溢出标志位还需要明确执行以下打开溢出中断),如果没有清 ...
- python 数据类型 datatype
python 数据类型 datatype 列表list 元组tuple 集合set 字典dictionary 字符串string 一.列表list list :python的一种数据类型.是可变的, ...
- 设计模式---对象创建模式之构建器模式(Builder)
一:概念 Builder模式也叫建造者模式或者生成器模式,是由GoF提出的23种设计模式中的一种.Builder模式是一种对象创建型模式之一,用来隐藏复合对象的创建过程,它把复合对象的创建过程加以抽象 ...
- 学习windows编程 day5 之按键消息
case WM_KEYDOWN://带sys的按键消息大多是系统需要自己处理的,我们一般不需要,默认处理 //wParam 指定按键的虚拟键代码 //lParam 指定技术,扫描码,闲钱状态,转换状态 ...
- Redis主从加Sentinel模式部署
总体部署 一主二从三哨兵 ip地址分配分别为 主 127.0.0.1:6379 从 127.0.0.1:6389 从 127.0.0.1:6399 哨兵 127.0.0.1:26379 哨兵 127. ...
- HDU - 3973 AC's String(Hash+线段树)
http://acm.hdu.edu.cn/showproblem.php?pid=3973 题意 给一个词典和一个主串.有两种操作,查询主串某个区间,问这主串区间中包含多少词典中的词语.修改主串某一 ...
- Hibernate or 的用法
转自baidu estrictions.or(Restrictions.like(),Restrictions.or(Restrictions.like,........))里面的or可以无限加的.还 ...
- MySql Workbench导出ER图并存为PDF文件
一.登陆数据库 二.点击Database => Reverse Engineer 三.填入登陆信息后next => next,选择要生成ER模型的数据库 四.点击next => n ...