8第三方控件实现新闻编辑
1为新闻添加图片(准备工作)
commons下载地址
http://commons.apache.org/fileupload/download_fileupload.cgi
http://commons.apache.org/io/download_io.cgi
api:
commons fileupload1.2.2 api
Commons IO 2.4 API
http://commons.apache.org/proper/commons-io/javadocs/api-2.4/index.html
第一步下载,commons-fileupload-1.2.2.jar和commons-io-2.4.jar
建议在API中参考使用到的类和接口
将jar导入项目中(WEB-INF/lib)
准备添加新闻的页面newsDetailCreate.jsp,把表单提交到doAdd.jsp
注意:
1.表单form标签中,method="post" enctype="multipart/form-data"
2.上传图片的标签为:<input type="file" name="picPath" value=""/>
在doAdd.jsp中提取表单提交的新闻相关字段,并保存上传的文件,实现新闻的保存功能
注意:
1.需要在doAdd.jsp中导入需要的包
<%@page import="java.io.*,java.util.*,org.apache.commons.fileupload.*"%>
<%@page import="org.apache.commons.fileupload.disk.DiskFileItemFactory"%>
<%@page import="org.apache.commons.fileupload.servlet.ServletFileUpload"%>
2.在newsDetailList.jsp中点击“增加”打开newsDetailCreate.jsp页面;“新闻标题”链接到newsDetailView.jsp并传递新闻Id参数,用以查看指定Id的新闻详情。
3.修改Dao和Service相关的类,完善“增加新闻信息”方法public boolean add(News news),增加“picPath”字段。增加“通过新闻id获取新闻”的方法public News getNewsById(int id)
<form name ="dataForm" id="dataForm" action="<%=request.getContextPath()%>/jsp/admin/doAdd.jsp" method="post" enctype="multipart/form-data">
<td><input type="file" name="picPath" value=""/></td>
2为新闻添加图片(实现上传)
doadd.jsp
<%@page import="java.util.Date"%>
<%@page import="com.pb.news.entity.News"%>
<%@page import="java.io.*,java.util.*,org.apache.commons.fileupload.*"%>
<%@page import="org.apache.commons.fileupload.disk.DiskFileItemFactory"%>
<%@page import="org.apache.commons.fileupload.servlet.ServletFileUpload"%>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8