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

📄 737_4.asp.htm

📁 实战留言簿(EJB+Struts+weblogic应用),主要是实现留言簿的全过程
💻 HTM
📖 第 1 页 / 共 4 页
字号:
     Context ctx = getInitialContext();
     try{
       Object object = ctx.lookup("BookControl");
       BookControlHome bookcHome = (BookControlHome) PortableRemoteObject.narrow(object, 

BookControlHome.class);
       control = bookcHome.create();
     }catch(Exception e){
       e.printStackTrace();
     }
     return control;
  }

}</textarea><br>[Ctrl+A 全部选择 然后拷贝]</p>
<p>  接着我们编写LyListAction.java文件,得到所有的留言信息LIST。<br><strong>LyListAction.java的源代码:<br></strong><textarea class="codeTextarea">package guestbook.maxuan.action;
import javax.naming.*;
import java.util.Properties;
import javax.rmi.PortableRemoteObject;
import java.util.*;

import java.util.Locale;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.ServletConfig;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ForwardingActionForward;
import org.apache.struts.action.ActionServlet;
import org.apache.struts.util.MessageResources;
import guestbook.maxuan.ejb.control.*;

public class LyListAction extends PAction{
  public ActionForward perform(ActionMapping mapping,
                                ActionForm    form,
                                HttpServletRequest request,
                                HttpServletResponse response) {
     Locale locale = getLocale(request);
     HttpSession session = request.getSession();
     Context ctx = (Context)session.getAttribute("ctx");

     if(ctx==null){
       ctx = getInitialContext();
       session.setAttribute("ctx",ctx);
     }

     try{
       Object object = ctx.lookup("BookControl");
       BookControlHome bookHome = (BookControlHome) PortableRemoteObject.narrow(object, 

BookControlHome.class);
       BookControl bookControl = bookHome.create();
       ArrayList lyList = bookControl.getLyList();
       session.setAttribute("lyList",lyList);
     }catch(Exception e){
       e.printStackTrace();
     }
     return (mapping.findForward("success"));
   }
}</textarea><br>[Ctrl+A 全部选择 然后拷贝]</p>
<p>  由于我们需要新加留言,所以这次比上次的EJB教程多出了存储部份,留言需要一个FORM来提交,最后进行存储,所以我们需要新加入LyForm.java、LyEditAction.java、LySaveAction.java三个文件的编写。<br><strong>LyForm.java的源代码:<br></strong><textarea class="codeTextarea">package guestbook.maxuan.action;

import javax.servlet.http.HttpServletRequest;
import org.apache.struts.action.ActionError;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import guestbook.maxuan.ejb.entity.value.*;

public final class LyForm extends ActionForm{
  public String action="add";
  public String name;
  public String email;
  public String qq;
  public String comment;
  private BookValue value = new BookValue();

  public String getAction() {
    return action;
  }
  public void setAction(String action) {
    this.action = action;
  }
  public String getName() {
    return name;
  }
  public void setName(String name) {
    this.name = name;
  }
  public String getEmail() {
    return email;
  }
  public void setEmail(String email) {
    this.email = email;
  }
  public String getQq() {
    return qq;
  }
  public void setQq(String qq) {
    this.qq = qq;
  }
  public String getComment() {
    return comment;
  }
  public void setComment(String comment) {
    this.comment = comment;
  }
  public BookValue getValue(){
   value.setName(name);
   value.setEmail(email);
   value.setQq(qq);
   value.setComment(comment);
   value.setAction(action);
   return value;
 }
 public void setValue(BookValue value){
   name = value.getName();
   email = value.getEmail();
   qq = value.getQq();
   comment = value.getComment();
   action = value.getAction();
  }
}</textarea><br>[Ctrl+A 全部选择 然后拷贝]</p>
<p><strong>LyEditAction.java的源代码:</strong><br><textarea class="codeTextarea">package guestbook.maxuan.action;

import javax.naming.*;
import java.util.Properties;
import java.util.*;
import javax.rmi.PortableRemoteObject;

import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.util.Locale;
import java.util.Vector;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.beanutils.PropertyUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionServlet;
import org.apache.struts.util.MessageResources;
import guestbook.maxuan.action.PAction;
import guestbook.maxuan.ejb.entity.value.*;
import guestbook.maxuan.ejb.entity.*;
import guestbook.maxuan.ejb.control.*;
import java.util.Collection;

public class LyEditAction extends PAction{
  public ActionForward execute(ActionMapping mapping,
                              ActionForm form,
                              HttpServletRequest request,
                              HttpServletResponse response)
     throws Exception {
     Locale locale = getLocale(request);
     MessageResources messages = getResources(request);
     HttpSession session = request.getSession();
     String action = request.getParameter("action");
     Context ctx = (Context)session.getAttribute("ctx");
     BookValue value  =(BookValue) request.getAttribute("value");
     //errors.clear();
     if (form == null) {
       form = new LyForm();
       if ("request".equals(mapping.getScope())) {
         request.setAttribute(mapping.getAttribute(), form);
       } else {
         session.setAttribute(mapping.getAttribute(), form);
       }
     }

     if(ctx==null){
       ctx = getInitialContext();
       session.setAttribute("ctx",ctx);
     }

     LyForm lyForm = (LyForm) form;
     if(action!=null){
       lyForm.setAction(action);
     }
     if (value!=null){
       try {
         PropertyUtils.copyProperties(lyForm, value);
       } catch (Exception e) {
       }
     }

     return (mapping.findForward("success"));
  }
}</textarea><br>[Ctrl+A 全部选择 然后拷贝]</p>
<p><strong>LySaveAction.java的源代码:</strong><br><textarea class="codeTextarea">package guestbook.maxuan.action;

import javax.naming.*;
import java.util.Properties;

⌨️ 快捷键说明

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