queuemdb.java

来自「mdb 消息驱动bean实例 mdb 消息驱动bean实例」· Java 代码 · 共 36 行

JAVA
36
字号
package testmdb.ejb;

import javax.ejb.ActivationConfigProperty;
import javax.ejb.MessageDriven;
import javax.jms.Message;
import javax.jms.MessageListener;
import javax.jms.TextMessage;
import javax.persistence.*;

@MessageDriven(mappedName = "jms/QueueMDB", activationConfig = {
		@ActivationConfigProperty(propertyName = "acknowledgeMode", propertyValue = "Auto-acknowledge"),
		@ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue"),
		@ActivationConfigProperty(propertyName = "destination", propertyValue = "queue/queueMDB")})
public class QueueMDB implements MessageListener {
	@PersistenceContext(unitName="testMDB3PU")
	EntityManager em; //容器对象(DAO对象)
	
	public void onMessage(Message msg) {
		// TODO Auto-generated method stub
		try{
			if(msg instanceof TextMessage){
				TextMessage tmsg = (TextMessage)msg;
				//System.out.println("[ejb2.1,queue]" + tmsg.getText());
				//write to db
				MDB mdb = new MDB();
				mdb.setContent(tmsg.getText());
				em.persist(mdb);
			}
		}catch(Exception ex){
			ex.printStackTrace();
		}

	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?