read读取控制台输入:
vim testRead.sh
#!/bin/bash
read -p “请输入一个数num=” NUM1
echo “你输入的值是 num1=$NUM1”
chmood744 testRead.sh
read -t 10 -p “请输入一个数num=” NUM2
echo “你输入的值是 num2=$NUM2”
basename /home/aaa/test.txt .txt
basename /home/aaa/test.txt
dirname /home/aaa/test.txt
//
Semaphore信号灯:
final Semaphore sp = new Semaphore(3);
while(hasnext()){
next(){cursor++}
}
hasnext(){
if(cursor==count){
return false;
}
return true;
}
remove(){
count–; count=3;
}
//ActiveMQ生产者代码(Queue)
//1、创建ConnectionFactory对象
ConnectionFactory factory = new ActiveMQConnectionFactory(“tcp://IP:port”);
//2、创建connection对象
Connection conn = factory.createConnection();
//3、开启链接
conn.start();
//4、创建Session对象:第一个参数是开启事务,一般不使用事务。保证数据的最终一致,可以使用消息队列实现
//如果第一个参数未true,第二个参数自动忽略,如果不开启事务false,第二个参数未消息的应答模式,一般为自动应答模式就可以了
Session session = conn.createSession(false,Session.AUTO_ACKNOWLEDGE);
//5、使用Session对象创建一个Destination对象,两种形式queue、topic,现在应该使用queue
Queue queue = session.createQueue(“test-queue”);
//6、使用Session创建一个Producer
MessageProducer producer = session.createProducer(queue);
//7、创建一个TextMessage对象
TextMessage message = new ActiveMQTextMessage();
message.setText(“hello”);
//或者
TextMessage message = session.createTextMessage(“hello”);
//8、发送消息
producer.send(message);
//9、关闭资源
producer.close();
session.close();
conn.close();
//ActiveMQ消费者代码(Queue)
//1、创建一个链接工厂对象
ConnectionFactory factory = new ActiveMQConnectionFactory(“tcp://IP:port”);
//使用链接工厂对象创建一个链接
Connection conn = factory.createConnection();
//开启链接
conn.start();
//使用连接对象创建一个Session对象
Session session = conn.createSession(false,Session.AUTO_ACKNOWLEDGE);
//使用Session创建一个Destination,Destination应该和消息的发送端一致
Queue queue = session.createQueue(“test-queue”);
//使用Session创建一个Consumer对象
MessageConsumer con = session.createConsumer(queue);
//向Consumer对象中设置一个MessageListener对象(消息的监听对象,接受消息)
con.setMessageListener(new MessageListener(){
public void onMessage(Message message){
//取消息的内容,打印消息内容
if(message instanceof TextMessage){
TextMessage text = (TextMessage)message;
String m = text.getText();
Sysout.out.println(“收到的消息为:”+m);
}
}
});
//系统等待接受消息
while(true){
Thread.sleep(100);
}
//或者
System.in.read();
//关闭资源
con.close();
session.close();
conn.close();
//ActiveMQ生产者代码(Topic)
//1、创建ConnectionFactory对象
ConnectionFactory factory = new ActiveMQConnectionFactory(“tcp://IP:port”);
//2、创建connection对象
Connection conn = factory.createConnection();
//3、开启链接
conn.start();
//4、创建Session对象:第一个参数是开启事务,一般不使用事务。保证数据的最终一致,可以使用消息队列实现
//如果第一个参数未true,第二个参数自动忽略,如果不开启事务false,第二个参数未消息的应答模式,一般为自动应答模式就可以了
Session session = conn.createSession(false,Session.AUTO_ACKNOWLEDGE);
//5、使用Session对象创建一个Destination对象,两种形式queue、topic,现在应该使用topic
Topic topic = session.createTopic(“test-topic”);
//6、使用Session创建一个Producer
MessageProducer producer = session.createProducer(topic);
//7、创建一个TextMessage对象
TextMessage message = new ActiveMQTextMessage();
message.setText(“hello”);
//或者
TextMessage message = session.createTextMessage(“hello activeMQ”);
//8、发送消息
producer.send(message);
//9、关闭资源
producer.close();
session.close();
conn.close();
//ActiveMQ消费者代码(Topic)
//1、创建一个链接工厂对象
ConnectionFactory factory = new ActiveMQConnectionFactory(“tcp://IP:port”);
//使用链接工厂对象创建一个链接
Connection conn = factory.createConnection();
//开启链接
conn.start();
//使用连接对象创建一个Session对象
Session session = conn.createSession(false,Session.AUTO_ACKNOWLEDGE);
//使用Session创建一个Destination,Destination应该和消息的发送端一致
Topic topic = session.createTopic(“test-topic”);
//使用Session创建一个Consumer对象
MessageConsumer con = session.createConsumer(topic);
//向Consumer对象中设置一个MessageListener对象(消息的监听对象,接受消息)
con.setMessageListener(new MessageListener(){
public void onMessage(Message message){
//取消息的内容,打印消息内容
if(message instanceof TextMessage){
TextMessage text = (TextMessage)message;
String m = text.getText();
Sysout.out.println(“收到的消息为:”+m);
}
}
});
//系统等待接受消息
while(true){
Thread.sleep(100);
}
//或者
System.in.read();
//关闭资源
con.close();
session.close();
conn.close();
//Spring整合ActiveMQ
//消息的生产者
//初始化Spring容器
ApplicationContext application = new ClassPathXmlApplicationContext(“classpath:spring/application-activemq.xml”);
//从容器中获取JmsTeplate对象
JmsTeplate jmsTemplate = application.getBean(JmsTemplate.class);
//从容器中获得Destination对象
Destination destination = (Destination)application.getBean(“test-queue”);
//发送消息
jmsTemplate.send(new MassgeCreator(){
public Message createMessage(Session session) throws JMSException{
TextMessage message = session.createTextMessage(“hello 这里是Spring整合ActiveMQ的实例!”);
return message;
}
});
//消息的消费者(接受消息)
public class MyMessageListener implements MessageListener{
public void onMessage(Message message){
TextMessage textmessage = (Textmessage)message;
String text = textmessage.getText();
System.out.println("接受到的消息为:"+text);
}
}
//初始化Spring容器
//等待
System.in.read();