加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

smarGwt / Grails 上传实例

发布时间:2020-12-14 17:03:20 所属栏目:大数据 来源:网络整理
导读:前台代码 (smarGwt): ? public DataSourceTextField DataSourceDateFieldUploadingPic(String timeId,String timeName){//SC.showConsole();//"file"new DataSourceValidateFile();textuploadFile=new DataSourceTextField(timeId,"nobr"+timeName+"/nobr")

前台代码 (smarGwt):

?

public DataSourceTextField DataSourceDateFieldUploadingPic(String timeId,String timeName){
		//SC.showConsole();
		//"file"
		new DataSourceValidateFile();
		
		textuploadFile=new  DataSourceTextField(timeId,"<nobr>"+timeName+"</nobr>");
		
		formItem=new CanvasItem(timeId,"<nobr>"+timeName+"</nobr>");
		formItem.setWidth("200");
		
		final DynamicForm picForm=new DynamicForm();
		picForm.setEncoding(Encoding.MULTIPART);
		CanvasItem pictureShowItem=new CanvasItem("pictureShowItem","照片");
		pictureShowItem.setRowSpan(3);
		final Image image=new Image();
		image.setUrl(GWT.getHostPageBaseURL()+"icons/fwsp.png");
		Canvas c=new Canvas();
		c.addChild((image));
		pictureShowItem.setCanvas(c);
		
		UploadItem pictureItem =new UploadItem("file","<nobr>"+timeName+"</nobr>");
		
		SubmitItem submitPic=new SubmitItem("submitPic","上传照片");
		picForm.setItems(pictureShowItem,pictureItem,submitPic);
		picForm.setAction(GWT.getHostPageBaseURL()+"personalInfo/upload");

		
		final Window tipWin=new Window();
		tipWin.setTitle("上传提示窗口");
		HTMLPane htmlPane=new HTMLPane();
		htmlPane.setContents("<IFRAME name="uploadFrame2018" class=gwt-Frame style="WIDTH:100%; HEIGHT:100%" src=""+GWT.getHostPageBaseURL()+"uploading.gsp"></IFRAME>");
		htmlPane.setSize("100%","100%");
		htmlPane.moveTo(0,20);
		tipWin.addChild(htmlPane);	
	
		tipWin.addCloseClickHandler(new CloseClickHandler() {

			public void onCloseClick(CloseClientEvent event) {
				
	              mainService.getPicName(new AsyncCallback() {
					public void onFailure(Throwable caught) {
						
					}
					@Override
					public void onSuccess(Object result) {
						strValue=result.toString();
						image.setUrl(GWT.getHostPageBaseURL()+"picture/"+result.toString()+"?"+Random.nextDouble());
						tipWin.clear();
					}

				

				});
				
			}
		});
		picForm.setTarget("uploadFrame2018"); 
				submitPic.addClickHandler(new ClickHandler() {
					@Override
					public void onClick(ClickEvent event) {
						 
						tipWin.setSize("300","300");
						tipWin.setAutoCenter(true);
						tipWin.show();
						tipWin.bringToFront();
						picForm.submitForm();
					}
				})	
				;

		
		picForm.setIsGroup(true);
		picForm.setGroupTitle("上传照片");

		formItem.setCanvas(picForm);
		return textuploadFile;
	}
?

	public DynamicForm createForm(){
		DataSource dataSource=new DataSource();
		dataSource.setClientOnly(true);
		
		DataSourceValidateFile file=new DataSourceValidateFile();
		dataSource.setFields(file.DataSourceDateFieldUploadingPic("attachment1","上传访谈文件"));
		
		final DynamicForm form=new DynamicForm();
		form.setUseAllDataSourceFields(true);
		form.setDataSource(dataSource);
		form.setFields(file.formItem);
		return form;
	}
?

VisitRecordDTO visit=new VisitRecordDTO();
				visit.setAttachment1(form.getValueAsString("attachment1"));
?

?

	public String getPicName(){

		return session["stupic"];	
	}
?

后台代码 (Grails+Groovy):

def upload={
		params.each{
			println it
		}
		
		CommonsMultipartFile uploadFile=params.file
		
	if(!uploadFile.isEmpty()){
		String oFileName=uploadFile.getOriginalFilename()
		Date fname=new Date()
		Long fff=fname.getTime()
		def fileSaveName=fff+oFileName.substring(oFileName.lastIndexOf("."))
		def fileSavePath=request.getRealPath("/")+"uploads"+ fileSaveName
		println fileSavePath
		uploadFile.transferTo(new File(fileSavePath) )
		session.setAttribute("stupic",fileSaveName)
		render "上传成功,请关闭提示窗口!"
		}else{
		}

	}
?

如果有不会写的 请给本人留言 谢谢

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读