java Web 项目 怎样将获取客户端的路径, 将文件流输出到客户端生成文件

我思路是通过装载模版,将模版转换成流,
然后将需要插入到模版中的数据与模版流一起向指定的路径输出生成文件,
现在这个指定的路径能数据,但是项目部署到服务器上,
文件生成在服务器上指定的目录里,我想生成在客户端的的指定目录(或者客户端浏览器点击按钮弹出选择保存路径的界面,类似于另存为的那种,不知道可不可以实现)

以下是源码, 还请各位多多指教,在此现行谢过~~

Map map = null;
Map dataMap = new HashMap();
Configuration configuration = new Configuration();
configuration.setDefaultEncoding("utf-8");
map = WordDemoFactory.getRemoteInstance().rowSet("11010819621008373x00");
dataMap.putAll(map);
map = WordDemoFactory.getRemoteInstance().getStudy("11010819621008373x00");
dataMap.putAll(map);
//指定模版路径
configuration.setClassForTemplateLoading(this.getClass(), "/com/kingdee/eas/custom/word");
Template t = null;
try {
//装载模版
t = configuration.getTemplate("wordDemo.xml");
} catch (IOException ex) {
ex.printStackTrace();
}
String path = "D:\\temp";//导出文件存放路径
String fileName = "outFile.rtf";//文件名
File outFile = new File(path);//如果路径不存在,则创建
if(!outFile.exists()){
outFile.mkdir();
}
File file = new File(path+"\\"+fileName);//如果该路径存在该文件名的文件,则删除
if(file.exists()){
file.delete();
}
Writer out = null;
try {
out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(path+"\\"+fileName), "utf-8"));
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
t.process(dataMap, out);
} catch (TemplateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
out.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
简单来说 就是我想做个导出功能
但是由于路径的原因只能导到服务器上 怎么才能导出到客户端上

第1个回答  2012-09-12
这个能实现,就是黑客程序了
第2个回答  2012-09-12
先让他在服务器端生成然后让客户端下载就可以了本回答被提问者采纳
第3个回答  2012-09-12
如果能过http 请求,那获得真实的ip的方法是使用request.getRemoteAddr(),
如果是C/S的程序
客户端调用InetAddress.getLocalHost()得到的是客户端的内网ip追问

虽然是C/S的项目 但是用的金蝶的EAS平台
采用的 MVP的框架

JavaWeb项目如何获取文件路径?
一、利用Servlet获取文件路径 1、获取项目的绝对路径 通过`getServletContext().getRealPath("\/")`实现,得到的是项目的绝对路径。2、获取浏览器地址 通过`request.getRequestURL()`获取当前请求的URL。3、获取当前文件的绝对路径 通过`new File(request.getServletContext().getRealPath("\/"))`创建文件...

如何在java web项目中获得相对路径
第一步: 先获得classpath路径 String classpath = this.getClass().getResource("\/").getPath().replaceFirst("\/", "");这样子可以得到classpath路径,类似于:F:\/projects\/JavaStudyParent\/study-springmvc-junit-test\/target\/springmvc-junit-test\/WEB-INF\/classes\/ 然后把WEB-INF\/classes截取就...

java中action如何获得客户端文件的路径
getRequestURI() 文件的绝对路径 :application.getRealPath( request.getRequestURI()); 当前web应用的绝对路径 :application.getRealPath("\/"); 取得请求文件的上层目录:new File(application.getRealPath( request.getRequestURI())). getParent() 3.2 Servlet中获得当前应用的相对路径和绝对路径 根目录所对应的绝对路...

如何获取web应用下的一个文件的对应的输入流,用java实现
首先你要知道文件的路径,也可以用前端浏览器选中文件,在传到后端 然后如果是指定路径的那就的使用 文件流 的方式对文件进行读写操作,文件流网上有很多例子,我就不说了。如果是使用前端选中文件,在传到后端,后端直接过去文件就可以,前提是框架封装了这一操作 ...

java做web开发,如何设置一个按钮选择文件下载的本地路径,求大神指导
ie 浏览器 ,工具,internet选项,安全,自定义级别 这个勾上之后,就可以通过file拿到他自己的路径了,getPath() 什么的,你自己试一下。

java web怎么上传图片到指定的项目文件夹,并获取该路径,将路径存储到...
当前项目的路经,通过request.getSession().getServletContext().getRealPath("\/")获取到的

java获取项目resource路径(javaweb获取项目路径)
springboot项目中使用 springboot项目中使用,通过@Value注解,但是我们还需要通过@PropertySource("classpath:config\/db.properties")注解指定配置文件的路径,如果是默认的配置文件,如:application.properties(.yml)就不需要指定路径 通过上述6种方法都可以成功获取到自定义配置文件中的配置信息,如果大家还有...

java 怎么获取web根目录?
在java中获得文件的路径在我们做上传文件操作时是不可避免的。 web 上运行 1:this.getClass().getClassLoader().getResource("\/").getPath(); this.getClass().getClassLoader().getResource("").getPath(); 得到的是 ClassPath的绝对URI路径。以工程名为TEST为例:(1)得到包含工程名的当前...

java读取文件路径问题
在java中获得文件的路径在我们做上传文件操作时是不可避免的。web 上运行 1:this.getClass().getClassLoader().getResource("\/").getPath();this.getClass().getClassLoader().getResource("").getPath(); 得到的是 ClassPath的绝对URI路径。如:\/D:\/jboss-4.2.2.GA\/server\/default\/deploy...

java后端向前端传递数据(java前后端怎么对接)
后台用servlet处理数据,把需要传到前台的数据存在作用域,在前台利用c:foreach标签遍历输出到页面。这是一门课程了,javaweb或者叫jsp。jsp就是由html和java脚本,等语言构成的。java程序嵌套在html里,相当于php。以网页的形式将java展现。这也就是所谓的动态。以为java程序获取的时间会变动。前端需要...

相似回答