4-7的路径问题。

4-7的路径问题。

老师对于xml写入的路径有些疑问

我刚开始的xml文件是放在/src/mgallery/painting.xml

但在写入里面打印出来的路径是 

/mgallery/build/classes/painting.xml

而且的确只有这个里面的数据更改了,src目录下的那个xml数据没有变,问下这个是为什么呢? 为什么src底下的那个xml数据不变呢? 

正在回答

登陆购买课程后可参与讨论,去登陆

9回答

同学你好,这里可以这样理解一下:  当项目发布到tomcat中启动执行后,它就会执行在Tomcat的目录下的发布项目中的内容,比如:

http://img1.sycdn.imooc.com//climg/5f1a4f1e09a8284203920248.jpg

而此时并不会修改源代码中的内容,项目发布出去后,它执行的是发布到服务器中的内容,而不会修改源码项目中的内容。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

慕前端8369922 提问者 2020-07-24 02:44:14

老师不好意思更新一下,tomcat重新启动以后就会自动读取我exlips目录下build里面的xml并且把tomcat-webapp目录下面的xml覆盖,所以就只有src下面和build下面两个不同的xml

慕前端8369922 提问者 2020-07-24 02:21:40
package mgallery.dao;


import java.util.ArrayList;
import java.util.List;
import mgallery.entity.Painting;
import mgallery.utils.PageModel;
import mgallery.utils.XmlDataSource;

public class PaintingDao {
    
    public PageModel pagination(int page, int rows) {
     List<Painting> list = XmlDataSource.getRawData();
     PageModel pageModel  = new PageModel(list,page,rows);    
     return pageModel;
    }
  
    public PageModel pagination(int category, int page, int rows) {
      List<Painting> list = XmlDataSource.getRawData();
      List<Painting> categoryList = new ArrayList();
      for(Painting p: list) {
        if(p.getCategroy() ==category ) {
          categoryList.add(p);
        }        
      }
      PageModel pageModel  = new PageModel(categoryList,page,rows);  
      return pageModel;
    }
    
    public void create(Painting painting) {
      XmlDataSource.append(painting);
    }
    
}
package mgallery.service;

import javax.management.RuntimeErrorException;
import mgallery.dao.PaintingDao;
import mgallery.entity.Painting;
import mgallery.utils.PageModel;

public class PaintingService {
    private PaintingDao paintingDao = new PaintingDao();
    
    public PageModel pagination(int page,int rows, String...category) {
      if (rows == 0) {
        throw new RuntimeException("无效的rows 参数");
      }      
      if(category.length ==0 || category[0]==null) {
        return paintingDao.pagination(page, rows);
      }else {
        return paintingDao.pagination(Integer.parseInt(category[0]), page, rows);
      }
    }
    
    public void create(Painting painting) {
      paintingDao.create(painting);
    }
    
    
    

}
package mgallery.controller;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import mgallery.service.PaintingService;
import mgallery.utils.PageModel;

/**
 * Servlet implementation class PaintingController
 */
@WebServlet("/page")
public class PaintingController extends HttpServlet {
	private static final long serialVersionUID = 1L;
	private PaintingService paintingSerivce = new PaintingService();
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public PaintingController() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
	  String page = request.getParameter("p");
	  String rows = request.getParameter("r");
	  String category = request.getParameter("c");
	  if(page == null) {
	    page = "1";
	  }
	  if(rows == null) {
	    rows = "6";
	  }
	  PageModel pageModel =paintingSerivce.pagination(Integer.parseInt(page), Integer.parseInt(rows),category);
	  
	  request.setAttribute("pageModel", pageModel);
	  request.getRequestDispatcher("/WEB-INF/jsp/index.jsp").forward(request, response);
	  
	}

}
package mgallery.controller;

import java.io.File;
import java.io.IOException;
import java.util.List;
import java.util.UUID;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileItemFactory;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import mgallery.entity.Painting;
import mgallery.service.PaintingService;
import mgallery.utils.PageModel;

/**
 * Servlet implementation class ManagementController
 */
@WebServlet("/management")
public class ManagementController extends HttpServlet {
	private static final long serialVersionUID = 1L;
	private PaintingService paintingService = new PaintingService();
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public ManagementController() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
	    request.setCharacterEncoding("utf-8");
	    response.setContentType("text/html;charset=utf-8");
	    String method = request.getParameter("method");
	    if(method.equals("list")) {
	      this.list(request,response);
	    }else if(method.equals("show_create")){
	      this.showCreatePage(request,response);
	    }else if(method.equals("create")) {
	      this.create(request, response);
	    }
	    
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

	private void list(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
	  String p = request.getParameter("p");
	  String r = request.getParameter("r");
	  if(p==null) {
	    p="1";
	  }
	  if(r == null) {
	    r ="6";
	  }
	  PageModel pageModel = paintingService.pagination(Integer.parseInt(p),Integer.parseInt(r));
	  request.setAttribute("pageModel", pageModel);
	  request.getRequestDispatcher("/WEB-INF/jsp/list.jsp").forward(request, response);
	  
	}
	
	private void showCreatePage(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
	    request.getRequestDispatcher("/WEB-INF/jsp/create.jsp").forward(request, response);
	}
	
	private void create(HttpServletRequest request, HttpServletResponse response) {
	  FileItemFactory factory = new DiskFileItemFactory();
	  ServletFileUpload sf = new ServletFileUpload(factory);
	  
	  try {
      List<FileItem> formData = sf.parseRequest(request);
      Painting painting = new Painting();
      for (FileItem fi:formData) {
        if(fi.isFormField() ) {
          //System.out.println(fi.getFieldName() );
          switch (fi.getFieldName()) {
            case "pname":
              painting.setPname(fi.getString("UTF-8"));
              break;
            case "category":
              painting.setCategroy(Integer.parseInt(fi.getString("UTF-8")));
              break;
            case "price":
              painting.setPrice(Integer.parseInt(fi.getString("UTF-8")));
              break;
            case "description":
              painting.setDescrption(fi.getString("UTF-8"));
              break;
            default:
              break;
          }
          
          
        }else {
          String path = request.getServletContext().getRealPath("/upload");
          //System.out.println(path);
          String fileName = UUID.randomUUID().toString();
          String suffix = fi.getName().substring(fi.getName().lastIndexOf("."));
          fi.write(new File(path,fileName + suffix));
          painting.setPreview("/upload/" + fileName + suffix);
          
        }
      }
      
      paintingService.create(painting);
      response.sendRedirect("/management?method=list");
    } catch ( Exception e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    }
	  
	}
	
}


慕前端8369922 提问者 2020-07-24 02:20:41
package mgallery.utils;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException;
import java.io.Writer;
import java.net.URLDecoder;
import java.util.ArrayList;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.Node;
import org.dom4j.io.SAXReader;
import mgallery.entity.Painting;

//将xml对象解析为java对象
public class XmlDataSource {
//通过static关键字保证全局唯一
    private static List data = new ArrayList();
    private static String dataFile;
    static { 
      //在程序运行以后得到类路径目录下的painint.xml的路径地址
       dataFile =  XmlDataSource.class.getResource("/painting.xml").getPath();
       //System.out.println(dataFile);
       //倘若上面读取到的路径包含有特殊字符,类似于空格,
       //会被自动转换为%20,导致读取时出错,底下为解决方法
       reload();
    }
    
     private static void reload() {
       URLDecoder decode = new URLDecoder();
       try {
        dataFile = decode.decode(dataFile,"UTF-8");
        //利用dom4j对xml文档进行解析
        SAXReader reader = new SAXReader();
        //1.获取Document对象
        Document document = reader.read(dataFile);
        //2.利用xpath得到xml节点集合,导入一定是org.dom4j.node
        List<Node> nodes = document.selectNodes("/root/painting");
        data.clear();
        for (Node node:nodes) {
          Element element = (Element)node;
          String id = element.attributeValue("id");
          String pname = element.elementText("pname");
          Painting painting = new Painting();
          painting.setId(Integer.parseInt(id));
          painting.setPname(pname);
          painting.setCategroy(Integer.parseInt(element.elementText("category")));
          painting.setPrice(Integer.parseInt(element.elementText("price")));
          painting.setPreview(element.elementText("preview"));
          painting.setDescrption(element.elementText("description"));
          data.add(painting);
        }
      } catch (UnsupportedEncodingException | DocumentException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
      }
       
    }
     
    
    public static List<Painting> getRawData(){
      return data;
    }
    
    public static void append(Painting painting) {
        SAXReader reader = new SAXReader();
        Writer writer = null;
        try {
          Document document = reader.read(dataFile);
          Element root = document.getRootElement();
          Element p = root.addElement("painting");
          p.addAttribute("id", String.valueOf(data.size()+1));
          p.addElement("pname").setText(painting.getPname());
          p.addElement("category").setText(painting.getCategroy().toString());
          p.addElement("price").setText(painting.getPrice().toString());
          p.addElement("preview").setText(painting.getPreview());
          p.addElement("description").setText(painting.getDescrption());
          writer = new OutputStreamWriter(new FileOutputStream(dataFile),"UTF-8");
          System.out.println(dataFile);
          document.write(writer);
        } catch (Exception e) {
          // TODO Auto-generated catch block
          e.printStackTrace();
        }finally {
          if(writer != null) {
            try {
              writer.close();
            } catch (IOException e) {
              // TODO Auto-generated catch block
              e.printStackTrace();
            }
          }
          reload();
        }
    }
        
    public static void main(String[] args) {
      Painting p = new Painting();
      p.setPname("测试油画");
      p.setCategroy(1);
      p.setPrice(4000);
      p.setPreview("/upload/1.jpg");
      p.setDescrption("描述信息");
      XmlDataSource.append(p);
      
    }
  
}
package mgallery.entity;

public class Painting {
    private Integer id;
    private String pname;
    private Integer categroy;
    private Integer price;
    private String preview;
    private String descrption;
    
    public Painting() {
      
    }
    
    
    @Override
    public String toString() {
      return "Painting [id=" + id + ", pname=" + pname + ", categroy=" + categroy + ", price="
          + price + ", preview=" + preview + ", descrption=" + descrption + "]";
    }


    public Painting(Integer id, String pname, Integer categroy, Integer price, String preview,
        String descrption) {
      super();
      this.id = id;
      this.pname = pname;
      this.categroy = categroy;
      this.price = price;
      this.preview = preview;
      this.descrption = descrption;
    }
    /**
     * @return the id
     */
    public Integer getId() {
      return id;
    }
    /**
     * @param id the id to set
     */
    public void setId(Integer id) {
      this.id = id;
    }
    /**
     * @return the pname
     */
    public String getPname() {
      return pname;
    }
    /**
     * @param pname the pname to set
     */
    public void setPname(String pname) {
      this.pname = pname;
    }
    /**
     * @return the categroy
     */
    public Integer getCategroy() {
      return categroy;
    }
    /**
     * @param categroy the categroy to set
     */
    public void setCategroy(Integer categroy) {
      this.categroy = categroy;
    }
    /**
     * @return the price
     */
    public Integer getPrice() {
      return price;
    }
    /**
     * @param price the price to set
     */
    public void setPrice(Integer price) {
      this.price = price;
    }
    /**
     * @return the preview
     */
    public String getPreview() {
      return preview;
    }
    /**
     * @param preview the preview to set
     */
    public void setPreview(String preview) {
      this.preview = preview;
    }
    /**
     * @return the descrption
     */
    public String getDescrption() {
      return descrption;
    }
    /**
     * @param descrption the descrption to set
     */
    public void setDescrption(String descrption) {
      this.descrption = descrption;
    }
    
    
    
    
}


慕前端8369922 提问者 2020-07-24 02:20:10
<root>
<painting id="1">
<pname>古典油画鉴赏1</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/1.jpg</preview>
<description>古典油画鉴赏1的描述文本</description>
</painting>
<painting id="2">
<pname>古典油画鉴赏2</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/2.jpg</preview>
<description>古典油画鉴赏2的描述文本</description>
</painting>
<painting id="3">
<pname>古典油画鉴赏3</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/3.jpg</preview>
<description>古典油画鉴赏3的描述文本</description>
</painting>
<painting id="4">
<pname>古典油画鉴赏4</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/4.jpg</preview>
<description>古典油画鉴赏4的描述文本</description>
</painting>
<painting id="5">
<pname>古典油画鉴赏5</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/5.jpg</preview>
<description>古典油画鉴赏5的描述文本</description>
</painting>
<painting id="6">
<pname>古典油画鉴赏6</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/6.jpg</preview>
<description>古典油画鉴赏6的描述文本</description>
</painting>
<painting id="7">
<pname>古典油画鉴赏7</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/7.jpg</preview>
<description>古典油画鉴赏7的描述文本</description>
</painting>
<painting id="8">
<pname>古典油画鉴赏8</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/8.jpg</preview>
<description>古典油画鉴赏8的描述文本</description>
</painting>
<painting id="9">
<pname>古典油画鉴赏9</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/9.jpg</preview>
<description>古典油画鉴赏9的描述文本</description>
</painting>
<painting id="10">
<pname>抽象派油画鉴赏1</pname>
<category>2</category>
<price>3800</price>
<preview>/upload/10.jpg</preview>
<description>抽象派油画鉴赏1的描述文本</description>
</painting>
<painting id="11">
<pname>抽象派油画鉴赏2</pname>
<category>2</category>
<price>3800</price>
<preview>/upload/11.jpg</preview>
<description>抽象派油画鉴赏2的描述文本</description>
</painting>
<painting id="12">
<pname>抽象派油画鉴赏3</pname>
<category>2</category>
<price>3800</price>
<preview>/upload/12.jpg</preview>
<description>抽象派油画鉴赏3的描述文本</description>
</painting>
<painting id="13">
<pname>抽象派油画鉴赏4</pname>
<category>2</category>
<price>3800</price>
<preview>/upload/13.jpg</preview>
<description>抽象派油画鉴赏4的描述文本</description>
</painting>
<painting id="14">
<pname>抽象派油画鉴赏5</pname>
<category>2</category>
<price>3800</price>
<preview>/upload/14.jpg</preview>
<description>抽象派油画鉴赏5的描述文本</description>
</painting>
<painting id="15">
<pname>抽象派油画鉴赏6</pname>
<category>2</category>
<price>3800</price>
<preview>/upload/15.jpg</preview>
<description>抽象派油画鉴赏6的描述文本</description>
</painting>
<painting id="16">
<pname>测试油画</pname>
<category>1</category>
<price>4000</price>
<preview>/upload/1.jpg</preview>
<description>描述信息</description>
</painting>
<painting id="17">
<pname>测试油画</pname>
<category>1</category>
<price>4000</price>
<preview>/upload/1.jpg</preview>
<description>描述信息</description>
</painting>
<painting id="18">
<pname>测试油画2</pname>
<category>1</category>
<price>1200</price>
<preview>/upload/e2896ea4-1208-4927-8490-a8305b7a88eb.jpg</preview>
<description>测试油画2</description>
</painting>
<painting id="19">
<pname>测试油画3</pname>
<category>2</category>
<price>1111</price>
<preview>/upload/4add04d4-fca4-49a3-905a-a90c3dcb6143.png</preview>
<description>测试油画3</description>
</painting>
</root>

D:/apache-tomcat-8.5.57/webapps/mgallery/WEB-INF/classes/painting.xml

慕前端8369922 提问者 2020-07-24 02:19:44

eclipse-workspace/mgallery/src/painting.xml

<root>
<painting id="1">
<pname>古典油画鉴赏1</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/1.jpg</preview>
<description>古典油画鉴赏1的描述文本</description>
</painting>
<painting id="2">
<pname>古典油画鉴赏2</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/2.jpg</preview>
<description>古典油画鉴赏2的描述文本</description>
</painting>
<painting id="3">
<pname>古典油画鉴赏3</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/3.jpg</preview>
<description>古典油画鉴赏3的描述文本</description>
</painting>
<painting id="4">
<pname>古典油画鉴赏4</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/4.jpg</preview>
<description>古典油画鉴赏4的描述文本</description>
</painting>
<painting id="5">
<pname>古典油画鉴赏5</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/5.jpg</preview>
<description>古典油画鉴赏5的描述文本</description>
</painting>
<painting id="6">
<pname>古典油画鉴赏6</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/6.jpg</preview>
<description>古典油画鉴赏6的描述文本</description>
</painting>
<painting id="7">
<pname>古典油画鉴赏7</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/7.jpg</preview>
<description>古典油画鉴赏7的描述文本</description>
</painting>
<painting id="8">
<pname>古典油画鉴赏8</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/8.jpg</preview>
<description>古典油画鉴赏8的描述文本</description>
</painting>
<painting id="9">
<pname>古典油画鉴赏9</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/9.jpg</preview>
<description>古典油画鉴赏9的描述文本</description>
</painting>
<painting id="10">
<pname>抽象派油画鉴赏1</pname>
<category>2</category>
<price>3800</price>
<preview>/upload/10.jpg</preview>
<description>抽象派油画鉴赏1的描述文本</description>
</painting>
<painting id="11">
<pname>抽象派油画鉴赏2</pname>
<category>2</category>
<price>3800</price>
<preview>/upload/11.jpg</preview>
<description>抽象派油画鉴赏2的描述文本</description>
</painting>
<painting id="12">
<pname>抽象派油画鉴赏3</pname>
<category>2</category>
<price>3800</price>
<preview>/upload/12.jpg</preview>
<description>抽象派油画鉴赏3的描述文本</description>
</painting>
<painting id="13">
<pname>抽象派油画鉴赏4</pname>
<category>2</category>
<price>3800</price>
<preview>/upload/13.jpg</preview>
<description>抽象派油画鉴赏4的描述文本</description>
</painting>
<painting id="14">
<pname>抽象派油画鉴赏5</pname>
<category>2</category>
<price>3800</price>
<preview>/upload/14.jpg</preview>
<description>抽象派油画鉴赏5的描述文本</description>
</painting>
<painting id="15">
<pname>抽象派油画鉴赏6</pname>
<category>2</category>
<price>3800</price>
<preview>/upload/15.jpg</preview>
<description>抽象派油画鉴赏6的描述文本</description>
</painting>
</root>


慕前端8369922 提问者 2020-07-24 02:17:31

eclipse-workspace/mgallery/build/classes/painting.xml

<root>
<painting id="1">
<pname>古典油画鉴赏1</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/1.jpg</preview>
<description>古典油画鉴赏1的描述文本</description>
</painting>
<painting id="2">
<pname>古典油画鉴赏2</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/2.jpg</preview>
<description>古典油画鉴赏2的描述文本</description>
</painting>
<painting id="3">
<pname>古典油画鉴赏3</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/3.jpg</preview>
<description>古典油画鉴赏3的描述文本</description>
</painting>
<painting id="4">
<pname>古典油画鉴赏4</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/4.jpg</preview>
<description>古典油画鉴赏4的描述文本</description>
</painting>
<painting id="5">
<pname>古典油画鉴赏5</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/5.jpg</preview>
<description>古典油画鉴赏5的描述文本</description>
</painting>
<painting id="6">
<pname>古典油画鉴赏6</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/6.jpg</preview>
<description>古典油画鉴赏6的描述文本</description>
</painting>
<painting id="7">
<pname>古典油画鉴赏7</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/7.jpg</preview>
<description>古典油画鉴赏7的描述文本</description>
</painting>
<painting id="8">
<pname>古典油画鉴赏8</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/8.jpg</preview>
<description>古典油画鉴赏8的描述文本</description>
</painting>
<painting id="9">
<pname>古典油画鉴赏9</pname>
<category>1</category>
<price>3800</price>
<preview>/upload/9.jpg</preview>
<description>古典油画鉴赏9的描述文本</description>
</painting>
<painting id="10">
<pname>抽象派油画鉴赏1</pname>
<category>2</category>
<price>3800</price>
<preview>/upload/10.jpg</preview>
<description>抽象派油画鉴赏1的描述文本</description>
</painting>
<painting id="11">
<pname>抽象派油画鉴赏2</pname>
<category>2</category>
<price>3800</price>
<preview>/upload/11.jpg</preview>
<description>抽象派油画鉴赏2的描述文本</description>
</painting>
<painting id="12">
<pname>抽象派油画鉴赏3</pname>
<category>2</category>
<price>3800</price>
<preview>/upload/12.jpg</preview>
<description>抽象派油画鉴赏3的描述文本</description>
</painting>
<painting id="13">
<pname>抽象派油画鉴赏4</pname>
<category>2</category>
<price>3800</price>
<preview>/upload/13.jpg</preview>
<description>抽象派油画鉴赏4的描述文本</description>
</painting>
<painting id="14">
<pname>抽象派油画鉴赏5</pname>
<category>2</category>
<price>3800</price>
<preview>/upload/14.jpg</preview>
<description>抽象派油画鉴赏5的描述文本</description>
</painting>
<painting id="15">
<pname>抽象派油画鉴赏6</pname>
<category>2</category>
<price>3800</price>
<preview>/upload/15.jpg</preview>
<description>抽象派油画鉴赏6的描述文本</description>
</painting>
<painting id="16">
<pname>测试油画</pname>
<category>1</category>
<price>4000</price>
<preview>/upload/1.jpg</preview>
<description>描述信息</description>
</painting>
<painting id="17">
<pname>测试油画</pname>
<category>1</category>
<price>4000</price>
<preview>/upload/1.jpg</preview>
<description>描述信息</description>
</painting>
</root>


好帮手慕小班 2020-07-23 14:53:14

同学你好,1、src目录下的那个xml数据没有变,老师也不是很清楚,同学可以尝试刷新项目,清理缓存再来看看呐。

    2、前面单独运行datasorce类里面增加的两个油画 没有被读取到,同学新增成功了吗,是不是没有添加成功导致的。

同学可以具体描述一下自己的问题,或者尝试将自己的代码贴出老师来测试一下,注意不要贴代码截图。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

  • 提问者 慕前端8369922 #1
    我现在painting xml 有了三个版本,eclipse workspace 下面的原本的版本, build底下的是我运行了未启动tomcat后加的两个,tomcat - web app下面是我加了其他的图片的版本,为什么会有这么多不同的版本呢? 我把所有代码都传上来
    2020-07-24 02:12:52
慕前端8369922 提问者 2020-07-23 08:30:47

增加一点 在最后在tomcat上面运行的时候增加的路径是

D:/apache-tomcat-8.5.57/webapps/mgallery/WEB-INF/classes/painting.xml


并且前面单独运行datasorce类里面增加的两个油画 没有被读取到,这个又是什么原因呢? 

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师