Centos7安装
安装
yum --enablerepo=epel -y install rabbitmq-server
systemctl start rabbitmq-server
开启Web管理后台(http://ip:15672/ )
rabbitmq-plugins enable rabbitmq_management
操作用户
rabbitmqctl add_user linuxprobe password
rabbitmqctl list_users
rabbitmqctl change_password linuxprobe strongpassword
rabbitmqctl set_user_tags linuxprobe administrator
rabbitmqctl delete_user linuxprobe
下载安装后,http://localhost:15672
可以访问控制台,用户名和密码都是guest,在admin选项卡可以任意新增用户,分配权限和主机路径,queue选项卡可以查看队列,一些图表可以查看队列状态。
配置
项目一般有两种方式配置,先把配置写到.properties
文件里。
- 一个xml,${名字}加载配置,调用时getbean(xxx.xml)
- 在class里用注解加载配置,项目启动后会自动加载
@Configuration
@EnableRabbit
public class RMQConfigurer {
@Value("${spring.rabbitmq.addresses}")
private String addresses;
@Value("${spring.rabbitmq.username}")
private String username;
@Value("${spring.rabbitmq.password}")
private String password;
@Value("${spring.rabbitmq.virtual-host}")
private String virtualHost;
@Value("${spring.rabbitmq.publisher-confirms}")
private boolean publisherConfirms;
@Bean
public ConnectionFactory connectionFactory() {
CachingConnectionFactory connectionFactory = new CachingConnectionFactory();
connectionFactory.setAddresses(addresses);
connectionFactory.setUsername(username);
connectionFactory.setPassword(password);
connectionFactory.setVirtualHost(virtualHost);
connectionFactory.setPublisherConfirms(publisherConfirms);
return connectionFactory;
}
}
接收Queue
@Component
public class ClazzReceiver {
@RabbitListener(queues = "queue名字")
public void test1(@Payload byte[] text) throws UnsupportedEncodingException {
String message = new String(text, "UTF-8");
}
mysql数据导入mongondb
mysql的sql文件可以转换excel,excel内容复制后到excel转json网站可以转换为json,json可以在mongondb insert document,需要先删掉每个}
后的,
,将一个json转化为多条json才能插入多条数据,否则会插入一条二维数据。
获取 json key值集合
JSONObject jsonObject = JSONObject.parseObject(jsonStr);
String jsonKey = jsonObject.keySet().toString().trim().substring(1,jsonObject.keySet().toString().trim().length()-1);
遍历json key
Set<String> keySet = jsonObject.keySet();
Iterator it=keySet.iterator();
List <String> keyList = new ArrayList<String>();
while(it.hasNext()){
String key=(String) it.next();
keyList.add(key);
}