⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xmlparse.java

📁 openblog是一个博客管理系统
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package org.openblog.utils;
import org.dom4j.*;

import java.text.SimpleDateFormat;
import java.util.Date;
import org.dom4j.io.*;
import org.openblog.hibernate.Photo;

import java.io.*;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class XmlParse 
{
	StringBuffer result = new StringBuffer();
	Document doc = null;
	private String PHOTO="";
	private String MUSIC ="";
	public XmlParse(String src)
	{	
		this.MUSIC=src;
		this.PHOTO=src;
	}
	private void read(String fileName)throws Exception
	{
		SAXReader reader = new SAXReader(); 
		doc = reader.read(new File(fileName));
	}
	private void output(String fileName)
	{	
		
        OutputFormat format = OutputFormat.createPrettyPrint();

        /** 指定XML字符集编码 */

        format.setEncoding("gbk");
        XMLWriter writer;
		try {
		writer = new XMLWriter(new FileWriter(new File(fileName)),format);
		writer.write(doc);
		writer.close();
		} catch (IOException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
		}
	}
	
	private String musictree(Element element) 
	{
		String result = "";
		Iterator iterator = element.elementIterator();
		while(iterator.hasNext())
		{
			Element temp= (Element)iterator.next();
			if(temp.getName().equals("music"))
			{
				result= result+"<tr><td>"+temp.attributeValue("Music_id")+"</td>";
				result= result+"<td>"+temp.attributeValue("Music_name")+"</td>";
				result= result+"<td>"+temp.attributeValue("Music_singer")+"</td>";
				//if(temp.attributeValue("Music_url").length()>60)
					//result= result+"<td>"+temp.attributeValue("Music_url").substring(0, 60)+"..</td><td align=\"center\"><a href=\"delMusic.do?musicid="+temp.attributeValue("Music_id")+"\">删除</a></td></tr>";
				//else 
				result= result+"<td>"+temp.attributeValue("Music_url")+"</td><td align=\"center\"><a href=\"delMusic.do?musicid="+temp.attributeValue("Music_id")+"\">删除</a></td></tr>";
				//System.out.println(temp.attributeValue("Music_url"));
			}
		}
		return result;
	}
	public String music()
	{
		try {
			read(MUSIC);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return musictree(doc.getRootElement());
	}
	public boolean addMusic(String src,String title,String singer)
	{
		try {
			read(MUSIC);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		int maxid=0;
		Element element = doc.getRootElement();
		Iterator iterator = element.elementIterator();
		while(iterator.hasNext())
		{
			Element temp= (Element)iterator.next();
			if(temp.getName().equals("music"))
			{
				int currentId = Integer.parseInt(temp.attributeValue("Music_id"));
				if(currentId > maxid) maxid = currentId; 
			}
		}
		
		maxid = maxid + 1;
		Element newElement = element.addElement("music");
		newElement.addAttribute("Music_name", title);
		newElement.addAttribute("Music_url", src);
		newElement.addAttribute("Music_singer", singer);
		newElement.addAttribute("Music_id", Integer.toString(maxid));
		//newElement.addAttribute("a", singer);
		output(MUSIC);
		return true;
	}
	public Element selectMusic(String src)
	{

		Element selectElement=(Element)doc.selectSingleNode("//music[@Music_id='"+src+"']");  
		return selectElement;
	}
	public boolean delMusic(String musicid)
	{
		try {
			read(MUSIC);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		Element element = doc.getRootElement();
		element.remove(selectMusic(musicid));
		output(MUSIC);
		return true;
	}
	public boolean updateMusic(String newname,String newsrc,String src)
	{
		try {
			read(MUSIC);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		Element updateElement=selectMusic(src);
		updateElement.setAttributeValue("Music_name", newname);
		updateElement.setAttributeValue("Music_url", newsrc);
		output(MUSIC);
		return true;
	}
	
	
	private String photocategory(Element element)
	{
		String result ="<tr>";
		Iterator iterator = element.elementIterator();
		while(iterator.hasNext())
		{
			Element temp= (Element)iterator.next();
			if(temp.getName().equals("category"))
			{
				result=result+"<td>"+temp.attributeValue("categoryid")+"</td>";
				result=result+"<td>"+temp.attributeValue("name")+"</td>";
				result=result+"<td align=\"center\"><a href=\"delPhotoSort.do?categoryid="+temp.attributeValue("categoryid")+"\">删除</a></td></tr>";
			}
		}
		return result;
	}
	public String photocategory()
	{
		try {
			read(PHOTO);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return photocategory(doc.getRootElement());
		
	}
	
	private List categorylist(Element element)
	{
		List list = new ArrayList();
		Iterator iterator = element.elementIterator();
		while(iterator.hasNext())
		{
			Element temp= (Element)iterator.next();
			if(temp.getName().equals("category"))
			{
				Photo category =new Photo();
				category.setCategoryid(temp.attributeValue("categoryid"));
				category.setCategoryname(temp.attributeValue("name"));
				list.add(category);
			}
			
		}
		return list;
	}
	public List categorylist()
	{
		try {
			read(PHOTO);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return categorylist(doc.getRootElement());
		
	}
	
	
	public String phototree()
	{
		try {
			read(PHOTO);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return phototree(doc.getRootElement());
		
	}
	
	public String phototree(Element element)
	{
		String result = "";
		Iterator iterator = element.elementIterator();
		while(iterator.hasNext())
		{
			Element temp= (Element)iterator.next();
			if(temp.getName().equals("category"))
			{
				String categoryname= temp.attributeValue("name");
				Iterator subiterator = temp.elementIterator();
				while(subiterator.hasNext())
				{
					Element sub= (Element)subiterator.next();
					result = result +"<tr>";
					result = result +"<td>"+ sub.attributeValue("imageid")+"</td>";
					result = result +"<td>"+ categoryname+"</td>";
					Iterator subsubiterator =sub.elementIterator();
					while(subsubiterator.hasNext())
					{
						Element subsub = (Element)subsubiterator.next();
						if(subsub.getName().equals("date"))	result = result +"<td>"+ subsub.getText()+"</td>";
						if(subsub.getName().equals("title"))result = result +"<td>"+ subsub.getText()+"</td>";
						if(subsub.getName().equals("img"))	result = result +"<td align=\"center\"><img  src=\"../../photoalbum/images/"+ subsub.getText()+"\" width=\"200\" height=\"180\"></td>";
					}
						result = result +"<td align=\"center\"><a href=\"delPhoto.do?imageid="+sub.attributeValue("imageid")+"\">删除</a></td></tr>";
				}
			}
		}
		return result;
	}




	public boolean addPhoto(String category)
	{
		try {
			read(PHOTO);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		int maxid=0;
		Element element = doc.getRootElement();
		Iterator iterator = element.elementIterator();
		while(iterator.hasNext())
		{
			Element temp= (Element)iterator.next();
			if(temp.getName().equals("category"))
			{
				int currentId = Integer.parseInt(temp.attributeValue("categoryid"));
				if(currentId > maxid) maxid = currentId; 
			}
		}
		
		maxid = maxid + 1;	
		
		Element newElement = element.addElement("category");
		newElement.addAttribute("name", category);
		newElement.addAttribute("categoryid", Integer.toString(maxid));
		//newElement.addAttribute("a", singer);
		output(PHOTO);
		return true;
	}
	public boolean addPhoto(String category,String title,String src,String photoinfo)
	{
		try {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -