⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 postnotice.java

📁 介绍了j2ee开发常用的学习知识,如servlet,javamail,EJB等知识,并有项目源码.
💻 JAVA
字号:
/*
 * PostNotice.java
 *
 * Created on 2007年11月27日, 下午5:14
 */

package com.ejb.test;

import com.ejb.Notice;
import java.io.*;
import javax.annotation.Resource;
import javax.jms.Connection;
import javax.jms.ConnectionFactory;
import javax.jms.JMSException;
import javax.jms.MessageProducer;
import javax.jms.ObjectMessage;
import javax.jms.Queue;
import javax.jms.Session;

import javax.servlet.*;
import javax.servlet.http.*;

/**
 *
 * @author hyl
 * @version
 */
public class PostNotice extends HttpServlet {

    @Resource(mappedName = "jms/NewNoticeFactory")
    private ConnectionFactory newNoticeFactory;

    @Resource(mappedName = "jms/NewNotice")
    private Queue newNotice;
    
    /** Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
     * @param request servlet request
     * @param response servlet response
     */
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        
// Add the following code to send the JMS message
        request.setCharacterEncoding("UTF-8");
        String title=request.getParameter("title");
        String body=request.getParameter("body");
        String author=request.getParameter("author");
        if(author==null)author="";
        if(author.equals(""))author="匿名";
        if ((title!=null) && (body!=null)) {
            try {
                Connection connection = newNoticeFactory.createConnection();
                Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
                MessageProducer messageProducer = session.createProducer(newNotice);
                
                ObjectMessage message = session.createObjectMessage();
                Notice e = new Notice();
                e.setTitle(title);
                e.setBody(body);
                e.setAuthor(author);
                e.setPublishDate(new java.sql.Timestamp(System.currentTimeMillis()));
                message.setObject(e);
                messageProducer.send(message);
                messageProducer.close();
                connection.close();
                response.sendRedirect("NoticeList");
                
            } catch (JMSException ex) {
                ex.printStackTrace();
            }
        }
        
        PrintWriter out = response.getWriter();
        
        out.println("<html>");
         out.println("<meta http-equiv='Content-Type' content='text/html'; charset='UTF-8'>");
        out.println("<head>");
        out.println("<title>公告发布栏</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<form>");
        out.println("作者: <input type='text' name='author'><br/>");
        out.println("标题: <input type='text' name='title'><br/>");
        out.println("内容: <textarea name='body'></textarea><br/>");
        out.println("<input type='submit' value='发布'><br/>");
        out.println("</form>");
        out.println("</body>");
        out.println("</html>");
        
        out.close();

    }
    
    // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
    /** Handles the HTTP <code>GET</code> method.
     * @param request servlet request
     * @param response servlet response
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        processRequest(request, response);
    }
    
    /** Handles the HTTP <code>POST</code> method.
     * @param request servlet request
     * @param response servlet response
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        processRequest(request, response);
    }
    
    /** Returns a short description of the servlet.
     */
    public String getServletInfo() {
        return "Short description";
    }
    // </editor-fold>

    
}

⌨️ 快捷键说明

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