`
esffor
  • 浏览: 1367343 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

一段下载功能的代码

阅读更多
public ActionForward download(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response)
            
throws Exception ...{
        
this.initActionAttributes(request);
        
//System.out.println(uploadForm.getFile().getFileName()+"--size is --"+uploadForm.getFile().getFileSize());
        String tables=new String(request.getParameter("TABLE_NAME").getBytes("ISO8859_1"));
        String table
=new String(request.getParameter("TABLE").getBytes("ISO8859_1"));
        String con
=new String(request.getParameter("SQL_COND").getBytes("ISO8859_1"));
        String col
=new String(request.getParameter("TITLE_CODE").getBytes("ISO8859_1"));
        String colName
=new String(request.getParameter("TITLE_NAME").getBytes("ISO8859_1"));
        String rowNum
=new String(request.getParameter("ROW_NUM").getBytes("ISO8859_1"));
        String[] columnName 
= colName.split(",");
        StringBuffer sb
=new StringBuffer();
        sb.append(
"select ").append(col).append(" from ").append(tables).append(" where ").append(con).append(" order by (cust.BUSY_IN_CALL_DURATION + cust.IDLE_IN_CALL_DURATION) desc fetch first "+rowNum+" rows only");
        StringBuffer updateSql
=new StringBuffer();
        updateSql.append(
"update ").append(table).append(" set DOWNLOAD_MARK=1,DOWNLOAD_TIME=current Date where comp_product_no in(select cust.comp_product_no from DMCF_cust_ms cust").append(" where ").append(con).append(" order by (cust.BUSY_IN_CALL_DURATION + cust.IDLE_IN_CALL_DURATION) desc fetch first "+rowNum+" rows only)");
        String fileName 
= "CustInfo" +
        
new SimpleDateFormat("yyyyMMddHHmmss").format(new    java.util.Date()) + ".csv";
         PrintWriter pw 
= null;
         Sqlca m_Sql 
= null;
//       保存到客户机上
         response.setContentType("application/octet-stream; charset=gbk");
         response.setHeader(
"Content-disposition""attachment; filename="" + fileName + """);
         PrintWriter out1 
= null;
         
try ...{

             pw 
= new PrintWriter(new FileOutputStream(fileName));
             out1 
= response.getWriter();
             
//标题vector
             Vector titleVector = new Vector();
             
for (int i = 0; i < columnName.length; i++...{
                 titleVector.add(columnName[i]);
             }

             
for (int j = 0; j < titleVector.size(); j++...{
                 out1.print(
new String(String.valueOf(titleVector.elementAt(j)).getBytes("gbk")));
                 
if (j == titleVector.size() - 1)
                     out1.println();
                 
else
                     out1.print(
",");
                 out1.flush();
             }

             
             m_Sql 
= new Sqlca(new ConnectionEx(Const.DATASOURCE));

             m_Sql.execute(sb.toString());
             String tmpStr;
             
while (m_Sql.next()) ...{
                 
                 
for (int j = 1; j <= titleVector.size(); j++...{
                     tmpStr 
= "" + m_Sql.getString(j);
                     out1.write(
new String(tmpStr.getBytes("gbk")));
                     
if (j == titleVector.size())
                         out1.println();
                     
else
                         out1.print(
",");
                 }

                 out1.flush();
             }

            m_Sql.execute(updateSql.toString());
            m_Sql.commit();
            
         }
 catch (Exception exception) ...{
             m_Sql.rollback();
             
if(m_Sql != null)m_Sql.closeAll();
             exception.printStackTrace();
         }
 finally ...{
             
if(m_Sql != null)m_Sql.closeAll();
             
         }

        
        
return mapping.findForward("initAction");
    }
 

分享到:
评论

相关推荐

    C# 代码段 官方扩充的代码段

    在编程领域,代码段(Code Snippets)是一种非常实用的功能,尤其对于提高开发效率而言。在C#编程中,代码段允许开发者快速插入常见的代码结构,例如循环、条件语句或者常用的类定义,而无需手动编写全部代码。C# ...

    如何去看懂一段代码.md

    ## 如何去看懂一段代码? 作为初学者,如何去看懂一段代码所表达的意思呢?其实很简单,三个步骤就好了。 ### 1 :流程 如果你要想看懂一段代码,首先你需要直到这段代码的执行流程是什么,流程也就是逻辑,知道...

    实现文件内容替换的一段C语言源代码

    这段C语言源代码提供了一种实现这一功能的方法,它允许用户指定要查找和替换的文本内容,并且已经在不同的平台上进行了编译和测试,包括老版本的Visual C++ 6.0和HP-UNIX操作系统。 在C语言中,进行文件内容替换...

    一段简单实用的代码.zip

    标题 "一段简单实用的代码.zip" 提供的信息表明,这个压缩包包含的是一段或一组可用于实际应用的代码。在IT行业中,简单的实用代码通常指的是能够解决特定问题、易于理解和执行的小型代码片段。这样的代码可能涵盖...

    .net的代码段资源

    .NET框架中的代码段资源是一种非常实用的开发工具,它们允许开发者快速输入和插入常见的代码模式,从而提高编程效率。在给定的压缩包文件中,我们看到一个名为"BellwareNUnit.snippet"的文件,这暗示了它可能包含与...

    UE4vs代码段.zip

    "UE4vs代码段.zip" 文件集合就是这样一个实用资源,它包含了一些预定义的代码片段,可以帮助开发者快速实现特定功能,提高开发效率。 首先,让我们详细了解一下这些代码段的具体内容: 1. **快捷创建碰撞事件的三...

    java编写的一个登录代码

    一段由java编写的登录代码,只是一个很小的程序

    JSP下载文件源代码

    通过以上分析可以看出,该示例代码提供了一个简单的文件下载功能实现方案,使用JSP结合SmartUpload插件来完成。这种方法不仅易于实现,而且具有较高的灵活性和可扩展性。对于需要快速添加文件下载功能的项目来说,这...

    HTTP 下载 源代码

    在IT行业中,HTTP(超文本传输协议)是用于在Web上传输数据的主要协议,而C++是一种强大的编程语言,常用于构建系统级和高性能...通过学习和理解这段代码,开发者能够掌握在网络环境中使用C++进行高效文件下载的技能。

    点击返回上一页代码.rar

    总的来说,这个压缩包提供的是一段实现点击返回上一页功能的JavaScript代码,适用于网页开发者增强他们的网站导航体验。通过解压并查看这两个文件,我们可以学习如何在实际项目中应用这一功能,并理解其背后的原理。

    VB API 实现FTP上传下载源代码

    本项目提供的是一段使用纯VB API编写的FTP上传和下载的类库。这个类库经过了长时间的实际应用验证,具有良好的稳定性和清晰的代码结构。下面将详细介绍其中的关键知识点。 1. **FTP连接** 在VB中,我们需要使用API...

    代码运行 复制代码 下载

    在Web开发中,提供代码下载功能通常是让访客能够保存代码示例或资源。这可以通过HTML的`&lt;a&gt;`标签实现,设置`href`属性指向要下载的文件,并添加`download`属性指定文件名。例如,如果你想让用户下载`code.js`,可以...

    vb.net代码段编辑器

    综上所述,"vb.net代码段编辑器"是一个提升VB.NET开发效率的重要工具,它简化了常用代码的管理和使用,优化了编码过程,并且可能包含多种高级功能来满足不同用户的需求。对于任何VB.NET开发者来说,掌握这款工具的...

    c#代码段(csharp snippets)收集

    这段代码异步地从指定URL下载文本,使得主线程不会被长时间阻塞。 4. **泛型**: 泛型允许我们编写可重用的代码,而不必为每种数据类型都创建一个单独的版本。例如,这是一个简单的泛型栈实现: ```csharp ...

    jsp实现上一页下一页翻页功能(示例代码)

    要实现翻页功能,只需要设置一个pageIndex即可,然后每次加载页面时通过pageIndex去加载数据就行。 那么我们可以设置一个隐藏的input框,用于传递pageIndex给下个页面。 当我们点击上一页的时候,通过js方法改变...

    C#迅雷API接口下载源代码

    通过学习和理解这段代码,开发者可以掌握如何在C#环境中使用迅雷API,实现自动化下载和对迅雷客户端的控制,这在开发下载管理软件或者需要集成下载功能的应用时非常有用。同时,这也是对Windows API和多线程编程技术...

    郁金香代码注入器

    代码注入是指将一段代码插入到另一个正在运行的进程的地址空间中,使得这段代码能够在目标进程中执行。这种方法可以用来绕过某些安全机制,或者在不修改原有程序的情况下影响其行为。常见的代码注入技术包括DLL注入...

    管理系统模板及代码下载

    4. 记住登录状态:可选功能,允许用户在一段时间内免密登录。 5. 多语言支持:适应全球化需求,提供多种语言选项。 后台模板则构成了管理员进行日常管理操作的主要工作区。它通常包括但不限于以下几个部分: 1. ...

    海康威视网络库播放库c#监控视频回放下载示例代码

    8. **文件3-回放下载**:这个文件可能是示例代码的一部分,包含了实现回放和下载功能的关键代码段。分析这个文件,结合SDK文档,可以帮助我们更好地理解和学习如何操作海康威视的设备。 总的来说,海康威视网络库...

    222661一段开启摄像头的代码(BCB)

    压缩包内的文件"一段开启摄像头的代码(BCB).txt"很可能包含了实现上述功能的源代码,而"www.pudn.com.txt"可能是从PUDN网站上下载此代码的来源记录或者其他相关资料。PUDN是一个知名的编程资源分享网站,开发者经常...

Global site tag (gtag.js) - Google Analytics