오라클자바커뮤니티에서 설립한 오엔제이프로그래밍 실무교육센터
(오라클SQL, 튜닝, 힌트,자바프레임워크, 안드로이드, 아이폰, 닷넷 실무전문 강의)
---------------------------------------------------------------
1. 상품상세보기 에서는 다음과 같이 HTML FORM 태그를 구성합니다.
---------------------------------------------------------------
<html:form action="/CartInsert">
----------------------------------------------------------------
2. CartInsert를 위한 struts-config.xml은 다음과 같습니다.
----------------------------------------------------------------
<!-- Insert ShoppingCart -->
<action
path="/CartInsert"
type="goods.action.CartInsertAction"
name="cartForm"
/>
혹시 몰라 말씀드리는데... 스트럿츠의 <html:form>에는 html이나 jsp에서 from name을 주지않도록 되어 있는데,.,, 이는 struts-config.xml안에서 정의하기 때문이죠... html 소스 보기를 하면 자동으로 form name이 변환되어져 있는 것을 확인 할 수 있습니다.
----------------------------------------------------------------
3. CartInsertAction.java
----------------------------------------------------------------
//============================================================================
/**
* 시스템명 : goods / 장바구니
* 작 성 일 : 2005-05-15
* 작 성 자 : Lee, Jong-Cheol
* 수 정 자 :
* 파 일 명 : goods.action.CartInsertAction
* 버 전 : 1.0
* 개 요 : 쇼핑카트의 물품 추가 Action
* 이 력 : 2005-05-15 : 초기 작성
*
*/
//============================================================================
package goods.action;
import java.util.ArrayList;
import goods.model.Cart;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.DynaActionForm;
import oraclejava.BaseActionLogin;
import oraclejava.Constants;
import oraclejava.YLog;
/**
* @author 이종철
*
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
*/
public class CartInsertAction extends BaseActionLogin{
public ActionForward cartInsert(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
throws Exception {
DynaActionForm dForm = (DynaActionForm)form;
String gCode = dForm.get("gcode").toString();
String gName = dForm.get("gname").toString();
String gName2 = dForm.get("gname2").toString();
String price = dForm.get("price").toString();
String cnt = dForm.get("cnt").toString();
String juklip_ratio = dForm.get("juklip_ratio").toString();
String unit = dForm.get("unit").toString();
String image_path3 = dForm.get("image_path3").toString();
String is_taekbae_discount = dForm.get("is_taekbae_discount").toString();
String is_direct = dForm.get("is_direct").toString();
Cart cart = getCart(request);
cart.addItem(gCode, gName, gName2, price, cnt, juklip_ratio, unit, image_path3, is_taekbae_discount);
ArrayList cartList = (ArrayList)cart.getCartItems();
HttpSession session = request.getSession();
session.setAttribute(Constants.CART_LIST, cartList);
//장바구니 보기
if (is_direct.equals("N")) {
return mapping.findForward(Constants.CARTOK);
}
//바로 주문하기
else {
return mapping.findForward(Constants.ORDERPAGE);
}
}
}
Cart.java, CartItem.java는 이전 강좌를 참고 하세요~
댓글 없음:
댓글 쓰기