如题,初初接触JAVA WEB,要求有代码,前端jsp和WEB端都要喔,谢谢大虾

解决方案 »

  1.   

    如果是将自己的电脑当服务器,可以直接在web下建个文件夹,将图片存入,图片地址存到表中;
    如果有服务器,可以在服务器上装一个ftp,配置下要存放的图片位置,再将图片存入,ftp地址存到表中
      

  2.   

    如果用springmvc接收图片  百度可以搜出一大推
      

  3.   

    推荐uploadify
    <script>
       $(function() {
    $("#uploadify").uploadify({
    debug : false,  swf  : a+'/css/upload_tx/uploadify.swf', //swf文件路径
    method : 'post', // 提交方式
    uploader : a+'/upload/up_tx', // 服务器端处理该上传请求的程序(servlet, struts2-Action)
    cancel : a+'/css/upload_tx/uploadify-cancel.png',
    preventCaching : true, // 加随机数到URL后,防止缓存 buttonCursor : 'hand', // 上传按钮Hover时的鼠标形状
    // buttonImage : 'img/.....png', // 按钮的背景图片,会覆盖文字
    buttonText : '选择头像图片' , //按钮上显示的文字,默认”SELECTFILES”
    height : 30 , // 30 px
    width : 120 , // 120 px fileObjName : 'filedata', //文件对象名称, 即属性名
    fileSizeLimit : 10000, // 文件大小限制, 100 KB
    fileTypeDesc : 'any' , //文件类型说明 any(*.*)
    fileTypeExts : '*.*;*.jpg;*.png;*.gif', // 允许的文件类型,分号分隔
    formData : {'id':'1', 'name':'myFile'} , //指定上传文件附带的其他数据。也动态设置。可通过getParameter()获取

    multi : false , // 多文件上传
    progressData : 'speed', // 进度显示, speed-上传速度,percentage-百分比
    queueID : 'fileQueue',//上传队列的DOM元素的ID号
    queueSizeLimit : 99 , // 队列长度
    removeCompleted : true , // 上传完成后是否删除队列中的对应元素
    removeTimeout : 1 , //上传完成后多少秒后删除队列中的进度条, 
    requeueErrors : true, // 上传失败后重新加入队列
    uploadLimit : 20, // 最多上传文件数量 successTimeout : 30 ,//表示文件上传完成后等待服务器响应的时间。超过该时间,那么将认为上传成功。

    // 在文件被移除出队列时触发
    //onCancel : function(file) { alert( 'The file ' + file.name + ' was cancelled!' ); },

    // 在调用cancel方法且传入参数’*’时触发
    //onClearQueue : function (queueItemCount) { alert( queueItemCount + ' files were removed from the queue!' ); }, // 打开文件对话框 关闭时触发
    onDialogClose : function (queueData) {
    /* alert(
    "文件对话窗口中选了几个文件:" + queueData.filesSelected + "---" +
    "队列中加了几个文件:" + queueData.filesQueued + "---" +
    "队列中被替换掉的文件数:" + queueData.filesReplaced + "---" +
    "取消掉的文件数:" + queueData.filesCancelled + "---" + 
    "上传出错的文件数:" + queueData.filesErrored
    ); */
    },

    // 选择文件对话框打开时触发
    onDialogOpen : function () { /*alert( 'please select files' ) */ },

    // 没有兼容的FLASH时触发
    onFallback : function(){ alert( 'Flash was not detected!' ) ;},

    // 每次初始化一个队列时触发, 即浏览文件后, 加入一个队列
    //onInit : function (instance) { alert( 'The queue ID is ' + instance.settings.queueID ) },

    // 上传文件处理完成后触发(每一个文件都触发一次), 无论成功失败
    //onUploadComplete : function(file){ alert( 'The file ' + file.name + ' uploaded finished!' ) }, // 上传文件失败触发
    onUploadError : function(file, errorCode, errorMsg, errorString){ 
                                        /*
                                        alert(
                                            file.name + ' upload failed! ' + 
                                            'errorCode: ' + errorCode +
                                            'errorMsg:' + errorMsg +
                                            'errorString:' + errorString
                                        );*/
    },
                    
                    // 在每一个文件上传成功后触发
                    onUploadSuccess : function(file, data, response) {
                                       // alert(
                                         //   file.name + ' is uploaded succeed!  ' +
                                         //  '  server-side returned data:' + data +
                                           //'  response: ' + response
                                        //);
                                        
                                      } });
    });
    <script>
    <div class="m-top-sm text-centers" id="uptx" style="display:none">
    <div id="fileQueue"></div> <span id="uploadify"></span>
    </div>
    controller@RequestMapping(value = "/up_tx", method = RequestMethod.POST)
        public String uploadFile(HttpServletRequest request, HttpServletResponse response) throws IOException {
            this.request = request;
            String responseStr = "";
            MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
            // 获取前台传值
            Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();     // 获取上传文件存放的 目录 , 无则创建
          String configPath = request.getSession().getServletContext().getRealPath( "/images/usertx/" );        // 创建文件夹
            File file = new File(configPath);
            if (!file.exists()) {
                file.mkdirs();
            }
            String fileName = null;
            for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
                // 上传文件名
                // System.out.println("key: " + entity.getKey());
                MultipartFile mf = entity.getValue();
                fileName = mf.getOriginalFilename();            String fileExt = fileName.substring(fileName.lastIndexOf(".") + 1).toLowerCase();            SimpleDateFormat df = new SimpleDateFormat("yyyyMMddHHmmss");
                String newFileName = df.format(new Date()) + "_" + new Random().nextInt(1000) + "." + fileExt;
                responseStr = "/images/usertx/" + newFileName ;
                File uploadFile = new File(configPath+"/" + newFileName);
                try {
                    FileCopyUtils.copy(mf.getBytes(), uploadFile);
                } catch (IOException e) {
                    responseStr = "上传失败";
                    e.printStackTrace();
                }        }
            response.setHeader("Content-type", "text/html;charset=UTF-8");
            // 这句话的意思,是告诉servlet用UTF-8转码,而不是用默认的ISO8859
            response.setCharacterEncoding("UTF-8");
            response.getWriter().write(responseStr);
            return null;
        }
      

  4.   

    前端<input type="file" name="file"/>
    后端private File file;
    FileUtils.copyFile(file, file2);
      

  5.   


    public class void{}