📄 caraction.java
字号:
import java.io.IOException;
import java.util.ArrayList;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
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.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
/**
* @author Chao Wu
*
* Description:
* <p>
*
* Copyright:
* <p>
*/
public class CarAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
CarForm carForm = (CarForm) form;
String mode = request.getParameter("mode");
if ("add".equalsIgnoreCase(mode)) {
return executeAddAction(mapping, carForm, request, response);
} else if ("view".equalsIgnoreCase(mode)) {
return executeViewAction(mapping, carForm, request, response);
} else if ("done".equalsIgnoreCase(mode)) {
return executeDoneAction(mapping, carForm, request, response);
} else
{
return executeManageAction(mapping, carForm, request, response);
}
}
private ActionForward executeAddAction(ActionMapping mapping, CarForm form,
HttpServletRequest request, HttpServletResponse response) {
CarForm carForm = (CarForm) form;
String hid = request.getParameter("hid");
SessionFactory sf = new Configuration().configure()
.buildSessionFactory();
Session session = sf.openSession();
Transaction tx = session.beginTransaction();
String sqlQuery = "select c from Car c where c.name='" + hid + "'";
Query lQuery = session.createQuery(sqlQuery);
ArrayList carList = (ArrayList) lQuery.list();
Car car = (Car) carList.get(0);
tx.commit();
session.close();
HttpSession httpSession = request.getSession();
ArrayList buylist = (ArrayList) httpSession.getAttribute("buylist");
Double totalprice = (Double)httpSession.getAttribute("totalprice");
buylist.add(car);
httpSession.setAttribute("buylist", buylist);
httpSession.setAttribute("totalprice",Double.valueOf(totalprice.doubleValue()+car.getPrice()));
return executeManageAction(mapping, carForm, request, response);
}
private ActionForward executeViewAction(ActionMapping mapping,
CarForm form, HttpServletRequest request,
HttpServletResponse response) {
CarForm carForm = (CarForm) form;
String hid = request.getParameter("hid");
SessionFactory sf = new Configuration().configure()
.buildSessionFactory();
Session session = sf.openSession();
Transaction tx = session.beginTransaction();
String sqlQuery = "select c from Car c where c.name='" + hid + "'";
Query lQuery = session.createQuery(sqlQuery);
ArrayList carList = (ArrayList) lQuery.list();
Car car = (Car) carList.get(0);
tx.commit();
session.close();
carForm.setViewCar(car);
return mapping.findForward("viewcar");
}
private ActionForward executeDoneAction(ActionMapping mapping,
CarForm form, HttpServletRequest request,
HttpServletResponse response) {
CarForm carForm = (CarForm) form;
HttpSession httpSession = request.getSession();
Double totalprice = (Double)httpSession.getAttribute("totalprice");
carForm.setTotalPrice(String.valueOf(totalprice));
return mapping.findForward("done");
}
private ActionForward executeManageAction(ActionMapping mapping,
CarForm form, HttpServletRequest request,
HttpServletResponse response) {
CarForm carForm = (CarForm) form;
ArrayList carList = new ArrayList();
SessionFactory sf = new Configuration().configure()
.buildSessionFactory();
Session session = sf.openSession();
Transaction tx = session.beginTransaction();
String sqlQuery = "from Car";
Query lQuery = session.createQuery(sqlQuery);
carList = (ArrayList) lQuery.list();
tx.commit();
session.close();
HttpSession httpSession = request.getSession();
ArrayList buylist = (ArrayList) httpSession.getAttribute("buylist");
carForm.setBuyList(buylist);
carForm.setCarList(carList);
return mapping.findForward("cars");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -