📄 struts+ejb.txt
字号:
package struts;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionForm;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.Action;
import javax.naming.Context;
import atm.EnterHome;
import javax.rmi.PortableRemoteObject;
import java.util.Properties;
import atm.Enter;
import java.util.ArrayList;
import org.apache.struts.actions.DispatchAction;
import java.util.List;
//EJB加Struts的应用
//主要是对Action的改写
//默认的Action类的继承对象是Action类,这样的话,那就是要求一个操作就要对应多个Actio类,那样会造成项目的难以维护和可扩展性不强的问题
//当继承DispatchAction这个Action的子类后就可以书写多个ActionForward方法。
//唯一的要求就是要修改配置文件struts-config.xml在<Action perporty="method"></Action>添加perporty="method".就是在提交给Action.do?method=delprice参数
public class MainAction extends DispatchAction {
public ActionForward addprice(ActionMapping mapping, ActionForm form,
HttpServletRequest request,
HttpServletResponse response) {
ATMActionForm atmForm = (ATMActionForm) form;
String cardid = request.getSession().getAttribute("cardid").toString();
Float bal = atmForm.getBalance();
float balance = bal.floatValue();
System.out.println("传过来的卡号是:" + cardid);
System.out.println("传过来的钱为:" + balance);
System.out.println("开始存款......");
String mess = save(cardid, balance);
request.setAttribute("message", mess);
return mapping.findForward("addprice");
}
public ActionForward delprice(ActionMapping mapping, ActionForm form,
HttpServletRequest request,
HttpServletResponse response) {
ATMActionForm atmForm = (ATMActionForm) form;
String cardid = request.getSession().getAttribute("cardid").toString();
Float bal = atmForm.getBalance();
float balance = bal.floatValue();
System.out.println("传过来的卡号是:" + cardid);
System.out.println("传过来的钱为:" + balance);
System.out.println("开始取款......");
String mess = fetch(cardid, balance);
request.setAttribute("message", mess);
return mapping.findForward("delprice");
}
public ActionForward query(ActionMapping mapping, ActionForm form,
HttpServletRequest request,
HttpServletResponse response) {
ATMActionForm atmForm = (ATMActionForm) form;
String cardid = request.getSession().getAttribute("cardid").toString();
System.out.println("开始查询余额.....");
String mess = querylist(cardid);
request.setAttribute("mess", mess);
return mapping.findForward("query");
}
//virement
public ActionForward updatepassword(ActionMapping mapping, ActionForm form,
HttpServletRequest request,
HttpServletResponse response) {
ATMActionForm atmForm = (ATMActionForm) form;
String cardid = request.getSession().getAttribute("cardid").toString();
String oldpassword = atmForm.getPassword();
System.out.println("老密码:"+oldpassword);
String password = request.getParameter("upassword");
System.out.println("新密码:"+password);
System.out.println("开始修改密码.....");
String mess = remakpassword(cardid, oldpassword, password);
request.setAttribute("message", mess);
return mapping.findForward("update");
}
public ActionForward virement(ActionMapping mapping, ActionForm form,
HttpServletRequest request,
HttpServletResponse response) {
ATMActionForm atmForm = (ATMActionForm) form;
String cardid = request.getSession().getAttribute("cardid").toString();
String inputcardid = atmForm.getCardid();
Float bal = atmForm.getBalance();
float price = bal.floatValue();
System.out.println("开始转帐.....");
String mess = virement(cardid,price,inputcardid);
request.setAttribute("message", mess);
return mapping.findForward("virement");
}
public String remakpassword(String cardid, String oldpassword,
String password) {
String mess = "";
Enter ter = ter();
try {
mess = ter.Reworkpassword(cardid, oldpassword, password);
} catch (Exception e) {
e.printStackTrace();
}
return mess;
}
public String virement(String cardid, float price,
String inputcardid) {
String mess = "";
Enter ter = ter();
try {
mess = ter.Virement(cardid,price,inputcardid);
} catch (Exception e) {
e.printStackTrace();
}
return mess;
}
public String querylist(String cardid) {
String mess = "";
Enter ter = ter();
try {
mess = ter.Querybalance(cardid).toString();
} catch (Exception e) {
e.printStackTrace();
}
return mess;
}
public String fetch(String accoutNo, float price) {
String mess = "";
try {
Enter ter = ter();
mess = ter.Fetch(accoutNo, price);
} catch (Exception ne) {
ne.printStackTrace();
}
return mess;
}
public String save(String accoutNo, float price) {
String mess = "";
try {
Enter ter = ter();
mess = ter.Saving(accoutNo, price);
} catch (Exception ne) {
ne.printStackTrace();
}
return mess;
}
public Enter ter() {
Enter ter = null;
try {
Context context = getInitialContext();
Object ref = context.lookup("Enter");
EnterHome enterHome = (EnterHome) PortableRemoteObject.narrow(ref,
EnterHome.class);
ter = enterHome.create();
} catch (Exception ex) {
ex.printStackTrace();
}
return ter;
}
public Context getInitialContext() throws Exception {
String url = "t3://127.0.0.1:7001";
String user = null;
String password = null;
Properties properties;
try {
properties = new Properties();
properties.put(Context.INITIAL_CONTEXT_FACTORY,
"weblogic.jndi.WLInitialContextFactory");
properties.put(Context.PROVIDER_URL, url);
if (user != null) {
properties.put(Context.SECURITY_PRINCIPAL, user);
properties.put(Context.SECURITY_CREDENTIALS,
password == null ? "" : password);
}
return new javax.naming.InitialContext(properties);
} catch (Exception e) {
throw e;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -