تشارك هذه المقالة معك الطرق ذات الصلة لاستخدام ملفات تعريف الارتباط لعرض الكتب التي تم عرضها مؤخرًا للرجوع إليها. المحتوى المحدد كما يلي
1. الحزمة
استيراد java.io.serializable ؛ كتاب الطبقة العامة يطبق التسلسل {private string id ؛ اسم السلسلة الخاصة ؛ سعر السلسلة الخاص ؛ مصادقة سلسلة خاصة سلسلة خاصة. وصف السلسلة الخاصة ؛ الكتاب العام () {} الكتاب العام (معرف السلسلة ، اسم السلسلة ، سعر السلسلة ، سلسلة السلسلة ، سلسلة النشر ، الوصف السلسلة) {super () ؛ this.id = id ؛ this.name = name ؛ this.price = السعر ؛ this.auth = auth ؛ this.publish = publish ؛ this.description = الوصف ؛ } السلسلة العامة getDescription () {return description ؛ } public void setDescription (وصف السلسلة) {this.description = description ؛ } السلسلة العامة getId () {return id ؛ } public void setId (string id) {this.id = id ؛ } السلسلة العامة getName () {return name ؛ } public void setName (اسم السلسلة) {this.name = name ؛ } السلسلة العامة getPrice () {سعر الإرجاع ؛ } public void setPrice (سعر السلسلة) {this.price = price ؛ } السلسلة العامة getauth () {return auth ؛ } public void setauth (string up) {this.auth = auth ؛ } السلسلة العامة getPublish () {return publish ؛ } public void setPublish (سلسلة publish) {this.publish = publish ؛ }} 2. حزمة داو
استيراد java.util.linkedhashmap ؛ استيراد java.util.map ؛ استيراد cn.huiyu.ben.book ؛ الفئة العامة bookdao {private static map <String ، Book> bookmap = new LinkedHashMap <string ، book> () ؛ private bookdao () {} static {bookmap.put ("1" ، كتاب جديد ("1" ، "1111" ، "11.0" ، "zqwang" ، "111 Press" ، "11111111" ")) ؛ bookmap.put ("2" ، كتاب جديد ("2" ، "2222" ، "22.0" ، "zqwang" ، "222222222")) ؛ bookmap.put ("3" ، كتاب جديد ("3" ، "3333" ، "33.0" ، "zqwang" ، "333333333")) ؛ } الخريطة الثابتة العامة <string ، book> getBooks () {return bookmap ؛ } getBook book static public (معرف السلسلة) {return bookmap.get (id) ؛ }} 3. Servlet
DOGED void public (طلب httpservletrequest ، استجابة httpservletresponse) يلقي servletexception ، ioException {response.setContentType ("text/html ؛ charset = utf-8") ؛ // 1. استعلام جميع الكتب في قاعدة البيانات لعرض الخريطة <string ، book> map = bookdao.getbooks () ؛ لـ (map.entry <string ، book> الإدخال: map.entryset ()) {book book = entry.getValue () ؛ desponse.getWriter (). الكتابة ("<a href = '"+request.getContextPath ()+"/servlet/bookinfoservlet؟ id ="+book.getId ()+"'>"+book.getName ()+"</a> <br>") ؛ } response.getWriter (). الكتابة ("<hr>") ؛ // 2. إظهار الكتب التي قرأتها قبل ملف تعريف الارتباط [] cs = request.getCoOkies () ؛ ملف تعريف الارتباط Cookie = NULL ؛ if (cs! = null) {for (cookie c: cs) {if ("last" .equals (c.getName ())) {findc = c ؛ }}} if (findC == null) {reponse.getWriter (). الكتابة ("لم أقرأ أي كتب!") ؛ } آخر {desponse.getWriter (). الكتابة ("الكتب التي قمت بتصفحها: <br>") ؛ string [] ids = findC.GetValue (). split ("،") ؛ لـ (معرف السلسلة: ids) {book book = bookdao.getBook (id) ؛ desponse.getWriter (). الكتابة (book.getName ()+"<br>") ؛ }}} 4.Servlet
DOGED void public (طلب httpservletrequest ، استجابة httpservletresponse) يلقي servletexception ، ioException {response.setContentType ("text/html ؛ charset = utf-8") ؛ // 1. احصل على معرف الكتاب المراد قراءته ، والاستعلام عن قاعدة البيانات للعثور على الكتاب ، وإخراج المعلومات التفصيلية لمعرف سلسلة الكتاب = request.getParameter ("ID") ؛ كتاب كتاب = bookdao.getbook (id) ؛ if (book == null) {response.getWriter (). الكتابة ("لا يمكن العثور على هذا الكتاب!") ؛ يعود؛ } آخر {desponse.getWriter (). الكتابة ("<h1> العنوان:"+book.getName ()+"</h1>") ؛ Response.getWriter (). الكتابة ("<h3> المؤلف:"+book.getauth ()+"</h3>") ؛ Response.getWriter (). الكتابة ("<h3> سعر البيع:"+book.getPrice ()+"</h3>") ؛ Response.getWriter (). write ("<h3> Publisher:"+book.getPublish ()+"</h3>") ؛ desponse.getWriter (). write ("<h3> الوصف:"+book.getDescription ()+"</h3>") ؛ } // 2. أرسل ملفات تعريف الارتباط لحفظ آخر كتاب تقرأه // --- 1-> 1 // 1-2،1-> 2،1 // 2،1--3،2،1-> 3،2،1 // 3،2،1-> 3،2،1-> 4،3،2-> 4،3،2 // ملف تعريف الارتباط [] cs = request.getCoOkies () ؛ ملف تعريف الارتباط Cookie = NULL ؛ if (cs! = null) {for (cookie c: cs) {if ("last" .equals (c.getName ())) {findc = c ؛ }}} if (findC == null) {// explanation Records التي لم تقرأ الكتاب قبل ids += book.getId () ؛ } آخر {// شرح سجلات الكتب التي تمت قراءتها في التاريخ من قبل ، ويجب حساب سجل جديد بناءً على سلسلة التاريخ [] olds = findC.GetValue (). StringBuffer Buffer = new StringBuffer () ؛ buffer.append (book.getId ()+"،") ؛ لـ (int i = 0 ؛ i <olds.length && buffer.toString (). split ("،"). الطول <3 ؛ i ++) {string old = olds [i] ؛ if (! old.equals (book.getId ())) {buffer.append (old+"،") ؛ }} ids = buffer.substring (0 ، buffer.length ()-1) ؛ } cookie lastc = cookie new ("last" ، ids) ؛ LastC.SetMaxage (3600*24*30) ؛ lastC.SetPath (request.getContextPath ()) ؛ Response.addcookie (LastC) ؛ }ما سبق هو كل شيء عن هذا المقال. آمل أن يكون من المفيد للجميع أن يتعلموا كيفية استخدام ملفات تعريف الارتباط لعرض الكتب التي تم عرضها مؤخرًا.