📄 shopform.java
字号:
package jsp.servlet.chapter8.session;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.URL;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import jsp.servlet.util.ServletUtil;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
@SuppressWarnings("serial")
public class ShopForm extends HttpServlet {
List<CatalogItem> itemList = new ArrayList<CatalogItem>();
public void doGet(HttpServletRequest request,
HttpServletResponse response) throws IOException{
HttpSession session = request.getSession();
Cookie custom = ServletUtil.getCookie(request, "custom", "");
if(custom.getValue().equals("")){
Orders orders = new Orders();
custom = new Cookie("custom", request.getParameter("custom"));
response.addCookie(custom);
session.putValue(request.getParameter("custom"), orders);
}
response.setContentType("text/html");
response.setCharacterEncoding("utf-8");
PrintWriter out = response.getWriter();
out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">\n");
out.println("<html>\n<head>\n<title>购物车</title>\n</head>\n" +
"<body bgcolor=\"#FDF5E6\">\n");
out.println("<center>\n" + XMLparser("book.xml", request));
// out.println("客户姓名:<input type='text' value='' name='custom'> " +
// " ");
// out.println("<input type='submit' value='提交'></center>\n");
Orders order = (Orders) session.getAttribute(custom.getValue());
if(order!= null){
out.println("订单:\n");
List<ItemOrder> orderList = order.getOrderList();
for(int i =0; i<orderList.size(); i++){
ItemOrder itemOrder = orderList.get(i);
out.println(itemOrder.getItem().getTitle() + ": shuliang:" + itemOrder.getNumItem() + "<br>\n");
}
}
out.println("\n</body>\n</html>");
}
@SuppressWarnings("deprecation")
public String XMLparser(String file, HttpServletRequest request){
itemList.removeAll(itemList);
ClassLoader cl = Thread.currentThread().getContextClassLoader();
URL fileUrl = cl.getResource(file);
while(cl != null){
if(fileUrl != null){
break;
}
else{
cl = cl.getParent();
fileUrl = cl.getResource(file);
}
}
StringBuffer sb = new StringBuffer("<table>\n<tr>\n<td width='20%'>书名</td>\n<td width='20%'>作者</td>\n<td width='20%'>出版时间</td>" +
"\n<td width='20%'>价格</td>\n<td width='20%'>订购数量</td>\n</tr>\n");
SAXReader reader = new SAXReader();
Document doc = null;
List bookList = new ArrayList();
try {
doc = reader.read(fileUrl);
bookList = doc.selectNodes("/bookstore/book");
} catch (DocumentException e) {
e.printStackTrace();
}
Iterator iter = bookList.iterator();
while(iter.hasNext()){
CatalogItem item = new CatalogItem();
Element book = (Element) iter.next();
Iterator bookChild = (Iterator) book.elementIterator();
String title="", author="", year="", price="";
String id = book.attributeValue("id");
while(bookChild.hasNext()){
Element child = (Element) bookChild.next();
if(child.getName().equals("title")){
title += child.getText();
item.setTitle(title);
}if(child.getName().equals("author")){
if("".equals(author)){
author += child.getText();
}else{
author += "&" +child.getText();
}
item.setAuthor(author);
}
if(child.getName().equals("year")){
year += child.getText();
item.setYear(year);
}
if(child.getName().equals("price")){
price = child.getText();
item.setPrice(Double.parseDouble(price));
}
// id = ((Attribute)idList.get(0)).getValue();
}
item.setId(id);
sb.append("<form action='AddItem'>\n<table width='80%'>\n<tr>\n<td width='20%'>" + title + "</td>\n<td width='20%'>" + author + "</td>\n<td width='20%'>" + year +
"</td>\n<td width='20%'>" + price + "</td>\n<td width='20%'>" +
"<input type='text' name='" + id + "'>" +
"<input type='hidden' name='bookId' value='" + id + "'>" +
"<input type='submit' value='tijiao'></td>\n</tr>\n<table>\n</form>\n");
itemList.add(item);
}
sb.append("</table>\n");
HttpSession session = request.getSession();
if(session.getAttribute("itemList") == null){
session.putValue("itemList", itemList);
}else{
session.setAttribute("itemList", itemList);
}
return sb.toString();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -