jsp页面<%@ page language="java" import="java.util.*" contentType="text/html; charset=GBK"%><html>
  <head>
  </head>
  
  <body>
   <!-- 表单用enctype封装之后就无法用request得到参数了 -->
<form action="upload?status=insert" method="post" enctype="multipart/form-data">
上传图片:<input type="file" name="pic">
<input type="submit"  value="提交" >
</form>
  </body>
</html>servlet 页面package com.fit.servlet;import java.io.IOException;import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.jsp.PageContext;import org.lxh.smart.SmartUpload;
import org.lxh.smart.SmartUploadException;import com.fit.DAOFactory.DAOFactory;
import com.fit.util.IPTimeStamp;
import com.fit.vo.Person;public class uploadServlet extends HttpServlet{
private ServletConfig config;
final public void init(ServletConfig config) throws ServletException{
this.config=config;
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
} @Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("GBK");
SmartUpload smartload=new SmartUpload();
boolean flag=false;
String path="";
String status=request.getParameter("status");

if("insert".equals(status)){
SmartUpload smartupload=new SmartUpload();
Person person=new Person();
String p_name=smartupload.getRequest().getParameter("pname");
IPTimeStamp its=new IPTimeStamp();
smartupload.initialize(this.config, request, response); //初始化上传
try {
smartupload.upload(); //准备上传
String name=its.getTimeStamp()+"."+smartupload.getFiles().getFile(0).getFileExt();
String fileName=this.getServletConfig().getServletContext().getRealPath("/")+"upload/"+name;
System.out.println(name+fileName);
smartupload.getFiles().getFile(0).saveAs(fileName); String p_photo=request.getParameter("pic");
System.out.println(p_photo);
person.setP_name(p_name);
person.setP_photo(p_photo);
flag=DAOFactory.getUploadDAOInstance().insert(person);
if(flag){
path="smartUpload.jsp";
request.getRequestDispatcher(path).forward(request, response);
}
} catch (SmartUploadException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}



}

}

}
实现类 代码 public boolean insert(Person person) {
String sql="insert person values(?,?)";
System.out.println("进入insert方法!");
try {
ps=mycon.getcon().prepareStatement(sql);
String name=smartupload.getRequest().getParameter("name");
String path=smartupload.getRequest().getParameter("pic");
System.out.println("IMP"+name+path);
ps.setString(1, name);
ps.setString(2, path);
int a=ps.executeUpdate();
if(a>0){
flag=true;
System.out.println(flag);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return flag;
}