锁定老帖子 主题:JMS接收消息实例
精华帖 (0) :: 良好帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-04-25
最后修改:2009-07-08
import java.io.Serializable; import java.util.ArrayList; import java.util.List; import javax.jms.JMSException; import javax.jms.ObjectMessage; import javax.jms.Queue; import javax.jms.QueueConnection; import javax.jms.QueueConnectionFactory; import javax.jms.QueueSender; import javax.jms.QueueSession; import javax.jms.Session; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; import com.eway.pojo.Inhospitaldata; import com.eway.util.Propertie; /** * * @author yanghui * @2009-07-03 * @消息发送 * */ public class QMProducer { /** * 定义JNDI上下文构造器 */ public final static String JNDI_FACTORY = "weblogic.jndi.WLInitialContextFactory"; /** * 定义JMS上下文构造器 */ public final static String JMS_FACTORY = "jms/QueueConnectionFactory"; /*************************************************************************** * 定义消息列队 */ public final static String QUEUE = "jms/fileQueue"; // 声明队列连接构造器 private QueueConnectionFactory queueConnectionFactory = null; // 声明队列连接 private QueueConnection queueConnection = null; // 声明队列会话 private QueueSession queueSession = null; // 声明队列发送 private QueueSender queueSender = null; // 声明队列 private Queue queue = null; // 声明发送对象方式 private ObjectMessage msg = null; public void init(Context ctx, String queueName) { try { queueConnectionFactory = (QueueConnectionFactory) ctx .lookup(JMS_FACTORY); queueConnection = queueConnectionFactory.createQueueConnection(); queueSession = queueConnection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE); queue = (Queue) ctx.lookup(queueName); queueSender = queueSession.createSender(queue); msg = queueSession.createObjectMessage(); queueConnection.start(); } catch (NamingException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (JMSException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public void send(List<Inhospitaldata> message) throws JMSException { msg.setObject((Serializable) message); queueSender.send(msg); } public void close() throws JMSException { queueSender.close(); queueSession.close(); queueConnection.close(); } public void sendInfo(List<Inhospitaldata> inhospitaldataList) { try { System.setProperty(Context.INITIAL_CONTEXT_FACTORY, JNDI_FACTORY); System.setProperty(Context.PROVIDER_URL, Propertie.getPropertie() .getProperty("provider")); Context context = new InitialContext(); init(context, QUEUE); send(inhospitaldataList); } catch (NamingException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (JMSException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { try { close(); } catch (JMSException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } public static void main(String[] args) { QMProducer producer = new QMProducer(); Inhospitaldata inhospitaldata = new Inhospitaldata(); inhospitaldata.setXm("yanghui131"); List<Inhospitaldata> list = new ArrayList<Inhospitaldata>(); list.add(inhospitaldata); producer.sendInfo(list); System.out.println("发送成功"); } } 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-04-26
觉得楼主没有把题目描述清楚。
|
|
返回顶楼 | |
发表时间:2008-04-26
6246850 写道 1,用字符串输入数组里面的数据
达到效果: 'A','B','C' 2,wo jiao shenzhen 这是一个字符串,输入出里面字母出现的次数。 如:a(2)j(1)` 汉语没学好。 |
|
返回顶楼 | |
发表时间:2008-04-26
第二题是很经典的C语言的例题嘛
去翻翻那本C的课本就会了 |
|
返回顶楼 | |
发表时间:2008-04-26
GreenForest 写道 觉得楼主没有把题目描述清楚。
不好意思!前面没注意!现在应该清楚了吧! |
|
返回顶楼 | |
发表时间:2008-04-26
aniken 写道 6246850 写道 1,用字符串输入数组里面的数据
达到效果: 'A','B','C' 2,wo jiao shenzhen 这是一个字符串,输入出里面字母出现的次数。 如:a(2)j(1)` 汉语没学好。 是啊....真有点想回去读小学.... |
|
返回顶楼 | |
发表时间:2008-04-26
Illum 写道 第二题是很经典的C语言的例题嘛
去翻翻那本C的课本就会了 没课本啦...都不知道到那去了... 这题我是这样做的 String str = "dcba"; Map tree = new TreeMap(); for (int i = 0; i < str.length(); i++) { char ch = str.charAt(i); if ((ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z')) { if (!tree.containsKey(ch)) { tree.put(ch,1); } else { Integer in = (Integer) tree.get(ch) + 1; tree.put(ch, in); } } } Iterator tit = tree.keySet().iterator(); while (tit.hasNext()) { Object temp = tit.next(); System.out.print(temp.toString() + "(" + tree.get(temp) + ")"); } 不知道你有没有更简单的方法 |
|
返回顶楼 | |
发表时间:2008-04-26
还是没搞懂你的题是啥意思!!
|
|
返回顶楼 | |
发表时间:2008-04-26
第一个题用集合并实现排序接口不可以么?
|
|
返回顶楼 | |
发表时间:2008-04-26
pure 写道 第一个题用集合并实现排序接口不可以么?
应该可以的,用冒炮排序应该更好点! |
|
返回顶楼 | |