亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? blogservice.java

?? ajax example 經典。。。。。。。。。。。。。。
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
package com.eamoi.ajax;

import java.io.File;
import java.io.FileOutputStream;
import java.io.PrintWriter;
import java.util.*;
import org.jdom.*;
import org.jdom.input.SAXBuilder;
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;

public class BlogService {
	private Document blogdom;
	private Document listdom;
	/**
	 * 構造函數,初始化DOM連接
	 *
	 */
	public BlogService() {
		try {
			SAXBuilder builder = new SAXBuilder();
			this.blogdom = builder.build(BlogService.class.getResource("blog.xml"));
			this.listdom = builder.build(BlogService.class.getResource("list.xml"));
		}catch(Exception ex) {
			this.handleError(ex);
		}
	}
	/**
	 * 獲取日志列表,以對象數組的形式返回,用于顯示,不包含評論和引用
	 * @return
	 */
	public Blog[] getAllBlog() {
		Collection bloges = new ArrayList();
		if(this.blogdom.getRootElement().getChildren().size()!=0) {
			Iterator iterator = this.blogdom.getRootElement().getChildren().iterator();
			do {
				Element element = (Element)iterator.next();
				Blog blog = new Blog(element);
				bloges.add(blog);
			}while(iterator.hasNext());
			return (Blog[])bloges.toArray(new Blog[0]);
		}
		else 
			return new Blog[0];
	}
	/**
	 * 獲取日志列表,以Map的形式返回,用戶持久化,包含評論和引用
	 * @return
	 */
	public Map getAllBlogMap() {
		Map bloges = new HashMap();
		if(this.blogdom.getRootElement().getChildren().size()!=0) {
			Iterator iterator = this.blogdom.getRootElement().getChildren().iterator();
			do {
				Element element = (Element)iterator.next();
				Blog blog = new Blog();
				blog.initialBlog(element);
				bloges.put(blog.getId(),blog);
			}while(iterator.hasNext());
		}
		return bloges;
	}
	/**
	 * 獲取指定的日志,包含其評論和引用
	 * @param id
	 * @return
	 */
	public Blog getBlog(String id) {
		Blog blog = null;
		if(this.blogdom.getRootElement().getChildren().size()!=0) {
			Iterator iterator = this.blogdom.getRootElement().getChildren().iterator();
			do {
				Element element = (Element)iterator.next();
				if(element.getAttributeValue("id").equalsIgnoreCase(id)){
					blog = new Blog();
					blog.initialBlog(element);
				}
			}while(iterator.hasNext());
		}
		return blog;
	}
	/**
	 * 增加日志
	 * @param blog
	 * @throws Exception
	 */
	public void addBlog(Blog blog) throws Exception {
		Map bloges = this.getAllBlogMap();
		blog.setId(String.valueOf(bloges.size()));
		bloges.put(blog.getId(),blog);
		this.outputXMLDocument((Blog[])bloges.values().toArray(new Blog[0]));
	}
	/**
	 * 獲取指定日志的評論列表,以對象數組的形式返回
	 * @param blogid
	 * @return
	 */
	public BlogComment[] getComment(String blogid) {
		Collection commentes = new ArrayList();
		if(this.blogdom.getRootElement().getChildren().size()!=0) {
			Iterator iterator = this.blogdom.getRootElement().getChildren().iterator();
			do {
				Element element = (Element)iterator.next();
				if(element.getAttributeValue("id").equalsIgnoreCase(blogid)) {
					if(element.getChild("comments").getChildren().size()!=0) {
						Iterator cIterator = element.getChild("comments").getChildren().iterator();
						do {
							Element cElement = (Element)cIterator.next();
							BlogComment comment = new BlogComment(cElement);
							commentes.add(comment);
						}while(cIterator.hasNext());
					}
				}
			}while(iterator.hasNext());
		}
		return (BlogComment[])commentes.toArray(new BlogComment[0]);
	}
	/**
	 * 獲取指定日志的評論列表,以Map對象的形式返回
	 * @param blogid
	 * @return
	 * @throws Exception
	 */
	public Map getCommentMap(String blogid) throws Exception {
		Map comments = new HashMap();
		if(this.blogdom.getRootElement().getChildren().size()!=0) {
			Iterator iterator = this.blogdom.getRootElement().getChildren().iterator();
			do {
				Element element = (Element)iterator.next();
				if(element.getAttributeValue("id").equalsIgnoreCase(blogid)) {
					if(element.getChild("comments").getChildren().size()!=0) {
						Iterator cIterator = element.getChild("comments").getChildren().iterator();
						do {
							Element cElement = (Element)cIterator.next();
							BlogComment comment = new BlogComment(cElement);
							comments.put(comment.getCommentdate(),comment);
						}while(cIterator.hasNext());
					}
				}
			}while(iterator.hasNext());
		}
		return comments;
	}
	/**
	 * 添加指定日志的評論
	 * @param comment
	 * @param blogid
	 * @throws Exception
	 */
	public void addComment(BlogComment comment, String blogid) throws Exception {
		Map bloges= this.getAllBlogMap();
		if((bloges!=null)&&(bloges.size()!=0)) {
			Blog[] bArray = (Blog[])bloges.values().toArray(new Blog[0]);
			for(int i=0;i<bArray.length;i++) {
				if(blogid.equalsIgnoreCase(bArray[i].getId())) {
					bArray[i].addComment(comment);
					break;
				}
			}
			this.outputXMLDocument(bArray);
		}
		else throw new Exception("未找到指定日志。");
	}
	/**
	 * 獲取指定日志的引用列表,以對象數組的形式返回
	 * @param blogid
	 * @return
	 */
	public BlogReference[] getReference(String blogid) {
		Collection references = new ArrayList();
		if(this.blogdom.getRootElement().getChildren().size()!=0) {
			Iterator iterator = this.blogdom.getRootElement().getChildren().iterator();
			do {
				Element element = (Element)iterator.next();
				if(element.getAttributeValue("id").equalsIgnoreCase(blogid)) {
					if(element.getChild("references").getChildren().size()!=0) {
						Iterator cIterator = element.getChild("references").getChildren().iterator();
						do {
							Element cElement = (Element)cIterator.next();
							BlogReference reference = new BlogReference(cElement);
							references.add(reference);
						}while(cIterator.hasNext());
					}
				}
			}while(iterator.hasNext());
		}
		return (BlogReference[])references.toArray(new BlogReference[0]);
	}
	/**
	 * 將日志輸出為持久化的XML文檔
	 * @param bloges
	 * @throws Exception
	 */
	public void outputXMLDocument(Blog[] bloges) throws Exception {
		File file = new File(BlogService.class.getResource("blog.xml").getPath());
		if(file.exists()) file.delete();
		if(!file.exists()) file.createNewFile();
		FileOutputStream stream = new FileOutputStream(file);
		Document doc = new Document();
		Element root = new Element("bloges");
		if((bloges!=null)&&(bloges.length!=0)) {
			for(int i=0;i<bloges.length;i++) {
				Element element = new Element("blog");
				element.setAttribute("id",bloges[i].getId());
				Element title = new Element("title").addContent(bloges[i].getTitle());
				Element catalogue = new Element("catalogue").addContent(bloges[i].getCatalogue());
				Element publishdate = new Element("publishdate").addContent(bloges[i].getPublishdate());
				CDATA conCDATA = new CDATA(bloges[i].getContent());
				Element content = new Element("content").addContent(conCDATA);
				Element entry = new Element("entry").addContent(bloges[i].getEntry());
				Element track = new Element("track").addContent(bloges[i].getTrack());
				Element images = new Element("images");
				if((bloges[i].getImages()!=null)&&(bloges[i].getImages().size()!=0)) {
					BlogImage[] iArray = (BlogImage[])bloges[i].getImages().toArray(new BlogImage[0]);
					for(int j=0;j<iArray.length;j++) {
						Element image = new Element("image");
						image.addContent(new Element("imageName").addContent(iArray[j].getImageName()));
						image.addContent(new Element("url").addContent(iArray[j].getUrl()));
						images.addContent(image);
					}
				}
				Element comments = new Element("comments");
				BlogComment[] cArray = (BlogComment[])bloges[i].getComments().toArray(new BlogComment[0]);
				if((cArray!=null)&&(cArray.length!=0)) {
					for(int j=0;j<cArray.length;j++) {
						Element comment = new Element("comment");
						comment.addContent(new Element("author").addContent(cArray[j].getAuthor()));
						comment.addContent(new Element("blogimage").addContent(cArray[j].getBlogimage()));
						comment.addContent(new Element("commentdate").addContent(cArray[j].getCommentdate()));
						comment.addContent(new Element("blogurl").addContent(cArray[j].getBlogurl()));
						comment.addContent(new Element("email").addContent(cArray[j].getEmail()));
						CDATA cdata = new CDATA(cArray[j].getCommentcontent());
						comment.addContent(new Element("commentcontent").addContent(cdata));
						comments.addContent(comment);
					}
				}
				Element commenttotal = new Element("commenttotal").addContent(String.valueOf(cArray.length));
				Element references = new Element("references");
				BlogReference[] rArray = 
					(BlogReference[])bloges[i].getReferences().toArray(new BlogReference[0]);
				if((rArray!=null)&&(rArray.length!=0)) {
					for(int j=0;j<rArray.length;j++) {
						Element reference = new Element("reference");
						reference.addContent(new Element("refername").addContent(rArray[i].getRefername()));
						reference.addContent(new Element("referurl").addContent(rArray[i].getReferurl()));
						references.addContent(reference);
					}
				}
				Element referencetotal = 
					new Element("referencetotal").addContent(String.valueOf(rArray.length));
				element.addContent(title);
				element.addContent(catalogue);
				element.addContent(publishdate);
				element.addContent(content);
				element.addContent(entry);
				element.addContent(track);
				element.addContent(images);
				element.addContent(comments);
				element.addContent(commenttotal);
				element.addContent(references);
				element.addContent(referencetotal);
				root.addContent(element);
			}
		}
		doc.addContent(root);
		XMLOutputter outputter = 
			new XMLOutputter(Format.getPrettyFormat().setEncoding("gb2312"));
		outputter.output(doc,stream);
	}
	/**
	 * 輸出指定日志的全部評論為XML文檔
	 * @param out
	 * @param blogid
	 * @throws Exception
	 */
	public void outputComment(PrintWriter out, String blogid) throws Exception {
		BlogComment[] commentes = this.getComment(blogid);
		Document doc = new Document();
		Element root = new Element("commentes");
		if((commentes!=null)&&(commentes.length!=0)) {
			for(int i=0;i<commentes.length;i++) {
				Element element = new Element("comment");
				Element author = new Element("author").addContent(commentes[i].getAuthor());
				Element blogimage = new Element("blogimage").addContent(commentes[i].getBlogimage());
				Element commentdate = new Element("commentdate").addContent(commentes[i].getCommentdate());
				Element blogurl = new Element("blogurl").addContent(commentes[i].getBlogurl());
				Element email = new Element("email").addContent(commentes[i].getEmail());
				Element commentcontent = new Element("commentcontent").addContent(commentes[i].getCommentcontent());
				element.addContent(author);
				element.addContent(blogimage);
				element.addContent(commentdate);
				element.addContent(blogurl);
				element.addContent(email);
				element.addContent(commentcontent);
				root.addContent(element);
			}
		}
		doc.addContent(root);
		XMLOutputter outputter = new XMLOutputter(Format.getPrettyFormat().setEncoding("ISO8859-1"));

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产真实乱对白精彩久久| 午夜成人免费电影| 国产日韩欧美在线一区| 精品国产免费视频| 26uuu精品一区二区在线观看| 欧美v日韩v国产v| 2023国产精品自拍| 国产三级久久久| 亚洲人成网站影音先锋播放| 亚洲欧美另类久久久精品2019 | 首页国产欧美日韩丝袜| 亚洲一区二区四区蜜桃| 亚洲国产日韩精品| 免费观看久久久4p| 国产精品中文字幕日韩精品| 国产福利电影一区二区三区| youjizz国产精品| 日本高清视频一区二区| 91麻豆精品国产91久久久久| 精品少妇一区二区三区免费观看| 国产精品污污网站在线观看| 亚洲精品免费播放| 精品一区二区三区在线观看国产| 懂色av一区二区夜夜嗨| 在线看一区二区| 欧美www视频| 亚洲女爱视频在线| 久久精品99久久久| www.久久久久久久久| 7777精品伊人久久久大香线蕉 | 在线不卡一区二区| 精品毛片乱码1区2区3区| 国产精品色婷婷| 日韩综合在线视频| 成人18视频在线播放| 欧美一级在线观看| 亚洲欧美一区二区三区久本道91| 欧美aaaaa成人免费观看视频| 成人黄色在线看| 51精品国自产在线| 中文字幕在线不卡一区| 男女男精品视频| 欧亚一区二区三区| 国产亚洲综合色| 日日骚欧美日韩| 在线亚洲一区观看| 中文欧美字幕免费| 国产一区 二区| 欧美一级艳片视频免费观看| 亚洲免费电影在线| 成人免费三级在线| 日韩视频123| 日韩电影在线一区二区三区| 99久久精品国产一区二区三区| 欧美电视剧免费观看| 亚洲成人777| 欧美性受xxxx黑人xyx| 中国色在线观看另类| 国产美女一区二区三区| 精品久久久久一区| 三级欧美韩日大片在线看| 在线观看成人小视频| 亚洲欧洲成人自拍| 成人黄色小视频| 国产人妖乱国产精品人妖| 国产一区二区三区国产| 日韩女优av电影在线观看| 日日欢夜夜爽一区| 欧美一级久久久| 七七婷婷婷婷精品国产| 欧美一区日韩一区| 麻豆精品国产91久久久久久 | 国产一区二区导航在线播放| 日韩欧美国产一区二区三区| 日韩国产一区二| 日韩一区二区三区视频在线观看| 男男视频亚洲欧美| 精品黑人一区二区三区久久| 久久草av在线| 欧美高清在线视频| 99久久婷婷国产精品综合| **性色生活片久久毛片| 色综合天天综合网天天看片| 亚洲综合在线观看视频| 欧美日韩性生活| 日本欧美久久久久免费播放网| 日韩三级精品电影久久久| 国产一区二区三区不卡在线观看| 久久精品一区四区| 成人av午夜影院| 亚洲一区二三区| 日韩欧美国产一二三区| 成人免费视频视频在线观看免费| 一区二区三区在线视频免费观看| 欧美日韩一区二区三区四区| 免费视频最近日韩| 国产精品色在线观看| 97精品超碰一区二区三区| 亚洲午夜激情av| 久久久精品2019中文字幕之3| 91同城在线观看| 日韩av在线发布| 国产精品沙发午睡系列990531| 在线免费一区三区| 精品一区二区av| 亚洲精品福利视频网站| 欧美成人精品1314www| jvid福利写真一区二区三区| 日本sm残虐另类| 中文字幕在线一区免费| 精品日韩在线观看| 欧美视频第二页| 懂色av一区二区三区免费观看 | 99久久精品国产麻豆演员表| 日韩av电影天堂| 亚洲女人****多毛耸耸8| 精品美女一区二区| 欧美日韩一区二区欧美激情| 国产成人av电影在线| 偷拍与自拍一区| 亚洲欧美电影一区二区| 亚洲精品一区二区精华| 在线观看欧美日本| 波多野结衣欧美| 国产在线不卡视频| 日本女人一区二区三区| 伊人婷婷欧美激情| 国产精品伦理一区二区| 精品少妇一区二区三区免费观看| 欧美视频在线观看一区二区| a4yy欧美一区二区三区| 激情图区综合网| 麻豆精品一二三| 日韩av电影天堂| 日本中文一区二区三区| 亚洲国产精品一区二区久久恐怖片| 国产色产综合色产在线视频| 欧美成人欧美edvon| 欧美一区2区视频在线观看| 欧美亚洲免费在线一区| 色综合天天做天天爱| 99久久精品国产麻豆演员表| 99麻豆久久久国产精品免费| 成人性生交大片免费| 成人高清在线视频| 97se亚洲国产综合自在线观| 99久久婷婷国产综合精品电影| 99久久精品国产网站| 97精品电影院| 欧美在线视频不卡| 欧美日韩精品一区二区三区蜜桃| 欧美午夜片在线观看| 欧美亚洲另类激情小说| 欧美精品自拍偷拍动漫精品| 欧美日韩不卡一区二区| 91精品婷婷国产综合久久性色 | 国产精品狼人久久影院观看方式| 久久久无码精品亚洲日韩按摩| 国产无人区一区二区三区| 国产日韩精品久久久| 国产精品不卡在线| 一区二区三区四区乱视频| 亚洲综合免费观看高清完整版 | 欧美日本在线播放| 制服丝袜中文字幕一区| 日韩美一区二区三区| 久久这里只有精品首页| 亚洲国产精品成人综合 | 精品亚洲国产成人av制服丝袜| 久久精品噜噜噜成人88aⅴ| 国产一区二区网址| 99亚偷拍自图区亚洲| 欧美体内she精视频| 日韩美女视频在线| 国产精品理论片| 亚洲成va人在线观看| 国产美女久久久久| 在线亚洲一区二区| 欧美一级专区免费大片| 日本一区二区三区在线不卡 | 另类小说视频一区二区| 国产福利一区二区三区视频在线| thepron国产精品| 日韩一级片在线观看| 欧美激情一区在线观看| 亚洲成人你懂的| 成人一区二区在线观看| 欧美一区二区免费| 亚洲欧美成aⅴ人在线观看| 精品一区二区三区免费毛片爱| 99视频精品在线| 精品欧美乱码久久久久久1区2区| 中文字幕一区三区| 久久99久久久欧美国产| 在线亚洲高清视频| 亚洲欧美综合色| 国产综合色精品一区二区三区| 色先锋资源久久综合| 久久久久久久久久久电影| 丝袜美腿亚洲一区二区图片|