我想实现图片中的功能,其它的都能实现,但是要实现图片上传功能,我就懵了,请问该怎样写呢?

解决方案 »

  1.   

    我不会框架~
    servlet中写了一段package cn.ac.learn.servlet;import java.io.IOException;import javax.servlet.RequestDispatcher;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.swing.JOptionPane;import cn.ac.learn.service.usermanage;
    import cn.ac.learn.service.impl.usermanageImpl;public class usermanege extends HttpServlet {
    /**
     * 
     */
    private static final long serialVersionUID = 1L; public usermanege() {
    super();
    }
    public void destroy() {
    super.destroy(); 
    }
    public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    } public void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    response.setContentType("text/html;charset=utf-8;");
    String username=request.getParameter("username");
    String password=request.getParameter("password");
    int permission=Integer.valueOf(request.getParameter("Permission"));
    String name=request.getParameter("name");
    String sexy=request.getParameter("sexy");
    String photo=request.getParameter("photo");

    if(username==""||password==""||name==""||sexy=="")
    {
    request.setAttribute("flag", "请将信息填写完整!");
    RequestDispatcher requestDis = request.getRequestDispatcher("admin/userAdd.jsp");
    requestDis.forward(request, response);
    }
    else
    {
    try
    {
    usermanage user=new usermanageImpl();
    int count=user.addUser(username, password, permission, name, photo, sexy);
    if(count==1)
    {
    int choose=JOptionPane.showConfirmDialog(null, "添加成功,是否继续上传","消息框",JOptionPane.YES_NO_OPTION);
    if(choose==0)
    {
    response.sendRedirect("admin/userAdd.jsp");
    }
    else
    {
    response.sendRedirect("admin/right_default.jsp");
    }
    }
    else if(count==0)
    {
    request.setAttribute("flag", "用户名已经存在!");
    RequestDispatcher requestDis = request.getRequestDispatcher("admin/userAdd.jsp");
    requestDis.forward(request, response);
    }
    }catch (Exception e) {
    e.printStackTrace();
    }
    }
    } public void init() throws ServletException {
    // Put your code here
    }}
      

  2.   

    java文件上传
      

  3.   

    Struts 2中实现文件上传
    Struts2的上传组件是一个拦截器
    在Struts2中,用于获得和设置java.io.File对象(Struts2将文件上传到临时路径,并使用java.io.File打开这个临时文件)的方法是getUpload和setUpload。获得和设置文件名的方法是getUploadFileName和setUploadFileName,获得和设置上传文件内容类型的方法是getUploadContentType和setUploadContentType。
      

  4.   

    怎么在servlet里面把swing的对话框拿来用了?汗。
      

  5.   

    图片上传一般可以用struts的组件实现,具体的代码上google/baidu搜一下应该很多的
      

  6.   

    不用框架?建议用框架,struts都有实现了
      

  7.   

    不知道楼主是否用过struts,那就用jsp+servlet搞定
    JSP:
    <form action="uploadServlet" enctype="multipart/form-data" method="post">
      <input type="file" name="myfile">
    .....
    </form>Servelet:
    doPost()方法中:
    InputStream is = request.getInputStream();
    //上传图片,可以把图片保存在服务器的文件系统下,然后将图片的路径保存在数据库中。
    FileOutputStream fos = new FileOutputStream("temp/images/myPic.jpg");
    byte[]buf = new byte[1024];
    int len = 0;
    while((len = is.read(buf))!=-1){
       fos.write(buf,0,len);
    }
    fos.close();
    is.close();然后保存该文件的路径,就不说了。
      

  8.   

    Java的文件上传
    需要两个包,
    一个是commons-fileupload-1.2.1.jar,
    一个是commons-io-1.3.2.jar,
    版本的数字可能不一样,用这两个包测试通过。
    JAR在Apache的官方网站下的一个开源项目commons下,
    链接为:http://commons.apache.org/
    可以找到FileUpload和IO,下载即可。
    这是个网上的一个例子程序,希望你能解决:
    http://www.163jsp.com/download/sourcecode/commons-fileupload-1.2.1-sample.zip
      

  9.   

    页面:
    <form action="uploadServlet" enctype="multipart/form-data" method="post"> 
      <input type="file" name="file"> action中:
    InputStream is = request.getInputStream(); 
    //上传图片,可以把图片保存在服务器的文件系统下也可以自定义保存路径,图片名称可以自己该。 
    FileOutputStream fos = new FileOutputStream("temp/images/myPic.jpg"); 
    byte[]buf = new byte[1024]; 
    int len = 0; 
    while((len = is.read(buf))!=-1){ 
      fos.write(buf,0,len); 

    fos.close(); 
    is.close(); 
      

  10.   

    你可以使用类似jspsmartupload之类的上传组件,使用非常简单。自己根据数据流来实现文件上传会非常麻烦。
      

  11.   


    js能弹警告,使用 alert('警告信息');
    也能弹确定取消,使用 confirm('确定要这么做吗?') 选确定返回true,选取消返回false
    还能弹输入,使用啥给忘啦。
    你的警告信息放在servlet里面,前台用户是看不到的,你要把结果放回页面,由页面来显示噢。
      

  12.   

    学习!!有没有asp.net上传路径自定义的啊