centos建设网站,东莞三网合一网站制作,响应式布局页面,国际贸易平台哪个好会话跟踪技术--session的使用会话跟踪#xff1a;1、使用隐藏表单字段2、URL重写http://host/path/file.jsp?sessionidlandril3、持久Cookie4、会话HttpSession一、使用session的简单步骤获取HttpSession(request.getSession()方法)对象#xff0c;查找与该会话相关的信息(s…会话跟踪技术--session的使用会话跟踪1、使用隐藏表单字段2、URL重写http://host/path/file.jsp?sessionidlandril3、持久Cookie4、会话HttpSession一、使用session的简单步骤获取HttpSession(request.getSession()方法)对象查找与该会话相关的信息(session.getAttribute())存储会话中的信息(session.setAttribute())删除会话中的数据(session.removeAttribute())删除当前会话(session.invalidate())在session中可以存储任意数量的键值对通过键即可获取相应的值即使用session.getAttribute(“key”);。二、session的常用方法1、getAttribute()从session中获取以前存储的值2、getAttributeNames()返回session中所有属性的名称3、setAttribute()将键与值关联起来存储进session4、removeAttribute()删除session中存储的对应键的值5、invalidate()删除整个session及其存储的键值6、logout()注销当前用户7、getId()获取每个session对应的唯一ID8、getCreationTime()获取session创建的时间9、getLastAccessedTime()获取session最后被访问的时间10、getMaxInactiveInterval()在用户没有访问的情况下会话在被自动废弃之前应该保持多长时间三、使用session的一个例子拥有购物车的在线商店1、CatalogPage.javapackagecom.landril.session;importjava.io.IOException;importjava.io.PrintWriter;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;publicclassCatalogPageextendsHttpServlet {privateCatalogItem[]items;privateString[]itemIds;privateStringtitle;protectedvoidsetItems(String[] itemIds) {this.itemIds itemIds;itemsnewCatalogItem[itemIds.length];for(inti 0; i items[i] Catalog.getItem(itemIds[i]);}}protectedvoidsetTitle(String title) {this.title title;}publicvoiddoGet(HttpServletRequest request, HttpServletResponse response)throwsServletException, IOException {if(itemsnull){response.sendError(response.SC_NOT_FOUND,Missing Items:);return;}response.setContentType(text/html);PrintWriter out response.getWriter();out.println(titletitle);CatalogItem item;for(inti 0; i out.println();item items[i];if(item null)out.println(Unknow itemId: itemIds[i]);else{out.println();String formURL request.getContextPath()/orderPage;formURL response.encodeURL(formURL);out.println();out.println();out.println(newString(item.getSDesc().getBytes(utf-8),GBK)$item.getPrice()item.getLDesc());out.println();}}}}2、ComputerBook.javapackagecom.landril.session;publicclassComputerBookextendsCatalogPage{publicvoidinit(){String[] ids {book1,book2,book3,book4};setItems(ids);setTitle(Japanese Book);}}3、JapaneseBook.javapackagecom.landril.session;publicclassJapaneseBookextendsCatalogPage{publicvoidinit(){String[] ids {book5,book6};setItems(ids);setTitle(Computer Book);}}4、OrderPage.javapackagecom.landril.session;importjava.io.IOException;importjava.io.PrintWriter;importjava.util.List;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjavax.servlet.http.HttpSession;publicclassOrderPageextendsHttpServlet {publicvoiddoGet(HttpServletRequest request, HttpServletResponse response)throwsServletException, IOException {HttpSession session request.getSession();ShoppingCart cart;synchronized(session){cart (ShoppingCart)session.getAttribute(shop);if(cart null){cart newShoppingCart();session.setAttribute(shop, cart);}String itemId request.getParameter(itemId);if(itemId !null){String num request.getParameter(num);if(num null)cart.addItem(itemId);else{intnumItems;try{numItems Integer.parseInt(num);}catch(NumberFormatException e) {numItems 1;}cart.setNum(itemId, numItems);}}}response.setContentType(text/html);PrintWriter out response.getWriter();String title Your Order;out.println(titletitle);synchronized(session){List itemOrders cart.getItemOrders();if(itemOrders.size() 0)out.println(No items);else{out.println(Item IDShort DescriptionLong DescriptionUnit PriceNumberTotal Price);ItemOrder order;for(inti 0; i itemOrders.size(); i) {order (ItemOrder)itemOrders.get(i);out.println(order.getItemId()order.getSDesc()order.getLDesc()order.getUnitPrice());out.println();out.println();out.println();out.println(order.getTotalPrice());}String checkURL response.encodeURL(request.getContextPath()/check.html);out.println();out.println();}}}}5、ShoppingCart.javapackagecom.landril.session;importjava.util.ArrayList;importjava.util.List;publicclassShoppingCart {privateListitemOrders;publicShoppingCart() {itemOrdersnewArrayList();}publicList getItemOrders(){returnitemOrders;}publicsynchronizedvoidaddItem(String itemId){ItemOrder order;for(inti0;iorder (ItemOrder)itemOrders.get(i);if(itemId.equals(order.getItemId())){order.addNum();return;}}ItemOrder newOrd newItemOrder(Catalog.getItem(itemId));itemOrders.add(newOrd);}publicsynchronizedvoidsetNum(String itemId,intnum){ItemOrder order;for(inti 0; i order (ItemOrder)itemOrders.get(i);if(itemId.equals(order.getItemId())){if(num 0)itemOrders.remove(i);elseorder.setNum(num);}return;}ItemOrder newOrd newItemOrder(Catalog.getItem(itemId));itemOrders.add(newOrd);}}6、CatalogItem.javapackagecom.landril.session;publicclassCatalogItem {privateStringitemId;privateStringsDesc;privateStringlDesc;privatefloatprice;publicString getItemId() {returnitemId;}publicvoidsetItemId(String itemId) {this.itemId itemId;}publicString getLDesc() {returnlDesc;}publicvoidsetLDesc(String desc) {lDesc desc;}publicfloatgetPrice() {returnprice;}publicvoidsetPrice(floatprice) {this.price price;}publicString getSDesc() {returnsDesc;}publicvoidsetSDesc(String desc) {sDesc desc;}publicCatalogItem(String itemId, String desc, String desc2,floatprice) {super();this.itemId itemId;sDesc desc;lDesc desc2;this.price price;}}7、ItemOrder.javapackagecom.landril.session;publicclassItemOrder {privateCatalogItemitem;privateintnum;publicItemOrder(CatalogItem item) {setItem(item);setNum(1);}publicCatalogItem getItem() {returnitem;}publicvoidsetItem(CatalogItem item) {this.item item;}publicintgetNum() {returnnum;}publicvoidsetNum(intnum) {this.num num;}publicString getItemId() {returnitem.getItemId();}publicString getSDesc() {returnitem.getSDesc();}publicString getLDesc() {returnitem.getLDesc();}publicfloatgetUnitPrice() {returnitem.getPrice();}publicvoidaddNum() {setNum(num 1);}publicvoidcancelOrder() {setNum(0);}publicfloatgetTotalPrice() {returnnum* getUnitPrice();}}8、Catalog.javapackagecom.landril.session;publicclassCatalog {privatestaticCatalogItem[]items {newCatalogItem(book1,Hibernate,HibernateHibernate, 57),newCatalogItem(book2,Spring,SpringSpring, 36),newCatalogItem(book3,Tomcat,TomcatTomcat, 23),newCatalogItem(book4,Jboss,JbossJboss, 35),newCatalogItem(book5,Japanese1,Japanese1Japanese1, 35),newCatalogItem(book6,Japanese2,Japanese2Japanese2, 23) };publicstaticCatalogItem getItem(String itemId) {CatalogItem item;if(itemId null)returnnull;for(inti 0; i item items[i];if(itemId.equals(item.getItemId()))returnitem;}returnnull;}}9、check.htmlchecking outChecking outposted on 2007-04-28 21:33 landril 阅读(2497) 评论(1) 编辑 收藏 所属分类: JspServlet