丶Melody

丶Melody

-30飞吻 2017-5-5 加入 来自济南

(这个人懒得留下签名)

丶Melody 最近的回答

  • 6天前layui 2.2.0 发布,良心之更中回答:

    [good]
  • 2017-11-9 11:24:46东西是好东西,就是没有完整的demo ,不知道怎么使用中回答:

    http://www.layui.com/demo/layim.html
  • 2017-11-9 11:21:5layui.open弹出页面层,属性type=1,为什么我弹不出一个页面中回答:

    若是拼接的自定义HTML,type为1
    若是引用的页面,type为2
  • 2017-11-9 11:17:49【已结束】社区 VIP3 半价巨惠强势开启,三大礼包相赠中回答:

    我怎么有种会在双11发布的预感
  • 2017-10-26 16:46:12table 列的resize怎么控制宽中回答:

    @我执 本来是昨天能更新,出了点问题推迟了,估计也就这几天吧
  • 2017-10-26 11:6:8table 列的resize怎么控制宽中回答:

    @我执 等心姐新版本吧 有百分比列宽
  • 2017-10-26 9:9:55table 列的resize怎么控制宽中回答:

    width
  • 2017-10-17 17:45:25layui.upload 多文件上传,除了多文件上传外,我要携带额外参数到后台,不知道怎么弄中回答:

    新增操作 ?文件对象一起传到后台?
  • 2017-10-10 15:7:17【冒死爆料】采访心姐关于 layuiAdmin 的最新进展中回答:

    马姐 心姐 66的 [酷]
  • 2017-9-16 9:56:40layui 2.1.4 发布,重点加强复杂表头中回答:

    [good]
    心姐 upload上传有BUG呀
    多文件上传的时候设置文件大小 如size:2048 ,
    选择文件的时候会提示文件不能大于2M 之类的提示。
    问题就来了,它不显示在上传table里边,而是加到了上传队列 大小为0KB
    这时候点击上传 提示如下

    除此之外 重复选择一个文件的时候不加到队列 也不提示 但是两个文件交叉选择就会加到队列
    求更新呐 [给力]
  • 2017-9-16 9:44:18文件上传报错中回答:

    @舍不得 Java的?
  • 2017-9-13 14:2:8如果飞吻不够,可在本帖申请增加中回答:

    还能申请吗 心姐
  • 2017-9-13 11:56:8上传图片的时候接口异常,报空指针异常,action里面有setfile的方法,但是file还是为空中回答:

    奇怪的写法,参数写方法里不就行了,multipart file 参数呢 要是不用这个解析 request解析呢 也没有request 参数 ,可能语言问题吧

    multipart 解析
    /**
    * @Title: fileUpload
    * @Description: 单个文件上传 重命名 随机字符串
    * @return String
    */
    public static String fileUpload(MultipartFile file,HttpServletRequest request,HttpServletResponse response){
    //获取图片的原名字
    String oldName=file.getOriginalFilename();
    //截取图片的类型
    String fileType=oldName.substring(oldName.lastIndexOf("."));
    //获取当前时间作为新的图片名字 并加上后缀
    String timeName=UUID.randomUUID()+"";
    String newName=timeName+fileType;
    //获取项目的路径 在项目路径下新建文件夹
    String path= "F:/uploadFile";
    //新建 uploadFile 文件夹 不存在就新建
    File parentPath=new File(path);
    if(!parentPath.exists()){
    parentPath.mkdirs();
    }
    //新建uploadFile文件夹的 (以当前时间命名的) 子文件夹
    String path2=path+"/"+timeName;
    File childPath=new File(path2);
    if(!childPath.exists()){
    childPath.mkdirs();
    }
    String src="";
    try {
    file.transferTo(new File(childPath,newName));
    File theFile=new File(childPath+"/"+newName);
    if(theFile.exists()){
    //拼接图片的相对路径作为URL
    src="/"+timeName+"/"+newName;
    }
    } catch (IllegalStateException e) {
    e.printStackTrace();
    } catch (IOException e) {
    e.printStackTrace();
    }
    return src;
    }
    request解析
    	@RequestMapping(value="/uploadFile")
    public void doGet(HttpServletRequest request) throws ServletException, IOException{
    //设置编码
    request.setCharacterEncoding("UTF-8");

    //获得磁盘文件
    DiskFileItemFactory diskFileItemFactory = new DiskFileItemFactory();

    //设定存放目录
    String path = "F:/image";

    diskFileItemFactory.setRepository(new File(path));
    //设置 缓存的大小,当上传文件的容量超过该缓存时,直接放到 暂时存储室

    diskFileItemFactory.setSizeThreshold(1024*1024);

    ServletFileUpload upload = new ServletFileUpload(diskFileItemFactory);

    try {
    List<FileItem> list = (List<FileItem>)upload.parseRequest(request);

    for(FileItem item : list){
    //获取表单的属性名字

    String Name = item.getFieldName();

    if(item.isFormField()){

    String value = item.getString() ;
    request.setAttribute(Name, value);

    }else{
    //获取路径名
    String value = item.getName() ;
    //索引到最后一个反斜杠
    int start = value.lastIndexOf("\\");

    //截取 上传文件的 字符串名字,加1 去掉反斜杠,
    String filename = value.substring(start+1);
    request.setAttribute(Name, filename);

    OutputStream out = new FileOutputStream(new File(path,filename));

    InputStream in = item.getInputStream() ;
    int length = 0 ;
    byte [] buf = new byte[1024] ;
    System.out.println("获取上传文件的总共的容量:"+item.getSize());
    // in.read(buf) 每次读到的数据存放在 buf 数组中
    while( (length = in.read(buf) ) != -1){
    //在 buf 数组中 取出数据 写到 (输出流)磁盘上
    out.write(buf, 0, length);
    }
    in.close();
    out.close();


    }

    }


    } catch (FileUploadException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }

    }
    判断是否上传成功 返回文件路径 拼接成JSON就可以了

    望采纳!
  • 2017-9-13 11:33:54文件上传报错中回答:

    @@不锈阳光光
    html
    <div class="layui-form-item">
    <div class="layui-input-inline">
    <div class="layui-upload">
    <button type="button" class="layui-btn layui-btn-small" id="upload1">身份证复印件</button>
    <button type="button" class="layui-btn layui-btn-small layui-btn-normal" id="start1">开始上传</button>
    <div class="layui-upload-list">
    <img class="layui-upload-img" id="img1" width="100px" height="100px">
    <p id="demoText1"></p>
    <input type="hidden" name="idCardImage" id="idCardImage">
    </div>
    </div>
    </div>
    JS
    	//普通图片上传
    var uploadInst1 = upload.render({
    elem: '#upload1'
    ,url: getPath+'uploadFiles'
    ,auto: false //选择文件后不自动上传
    ,size:200
    ,bindAction: '#start1' //指向一个按钮触发上传
    ,before: function(obj){
    //预读本地文件示例,不支持ie8
    obj.preview(function(index, file, result){
    $('#img1').attr('src', result); //图片链接(base64)
    });
    }
    ,done: function(res){
    //如果上传失败
    if(res.code!=0){
    return layer.msg('上传失败');
    }else if(res.code==0){
    $('#idCardImage').val(res.data);
    $('#start1').hide();
    layer.msg(res.msg,{icon:1});
    $('#demoText1').html('<span style="color: #FF5722;">重新上传请点击图片删除!</span>');
    }
    //上传成功
    }
    ,error: function(){
    //演示失败状态,并实现重传
    var demoText = $('#demoText1');
    demoText.html('<span style="color: #FF5722;">上传失败</span> <a class="layui-btn layui-btn-mini demo-reload">重试</a>');
    demoText.find('.demo-reload').on('click', function(){
    uploadInst1.upload();
    });
    }
    });
    页面



    望采纳!
  • 2017-9-7 9:45:15如果飞吻不够,可在本帖申请增加中回答:

    [good]