`
xiyuliuguang
  • 浏览: 32382 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

java弹窗导入导出文件

阅读更多
package com.action.frame;

import java.awt.Container;
import java.awt.Font;
import java.awt.Label;
import java.awt.Rectangle;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.SQLException;

import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.SwingConstants;

import com.action.ExcelUnit.XxlsServices;
import com.action.service.PCBExportService;
import com.action.service.PCBRule;
import com.action.service.PCBRuleService;

public class PCB extends JFrame implements ActionListener {

private static final long serialVersionUID = -4026600690895973169L;
private JButton bottom;
private JButton bottom1;
private JButton bottom2;
private JButton bottom3;
private JPanel contentPane;
private Label label;

private JScrollPane scrollMypane;

public static void main(String[] args) {

PCB example = new PCB();
example.setTitle("PCB");
example.setBounds(250, 100, 900,600);
example.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
example.setVisible(true);
}


/**
* 默认构造器
*/
public PCB() {
contentPane = new JPanel();
setContentPane(contentPane);
contentPane.setLayout(null);
bottom = new JButton("导入到数据库");
bottom1 = new JButton("导出到Excel");
bottom2 = new JButton("关 闭");
bottom3 = new JButton("计算");
contentPane.add(bottom);
contentPane.add(bottom1);
contentPane.add(bottom2);
contentPane.add(bottom3);
bottom.setBounds(100, 143, 200, 40);
bottom1.setBounds(540, 143, 200, 40);
bottom2.setBounds(360, 443, 100, 40);
bottom3.setBounds(320, 143, 200, 40);
bottom.addActionListener(this);
bottom1.addActionListener(this);
bottom2.addActionListener(this);
bottom3.addActionListener(this);
font();
}

public void font() {
Container container = getContentPane();
container.setLayout(null);
label = new Label("数据导入中...", Label.CENTER);
label.setFont(new Font("Serif",Font.PLAIN,24));
scrollMypane = new JScrollPane(label);
scrollMypane.setBounds(new Rectangle(260, 270, 370, 100));
container.add(scrollMypane);
label.setVisible(false);
}


/**
* 监听事件
*/
public void actionPerformed(ActionEvent e) {
//导入到数据库
if (e.getSource() == bottom) {
readExcelToDatabase();
}
//导出
if (e.getSource() == bottom1) {
String path = null;
JFileChooser fc = new JFileChooser();
fc.setDialogTitle("请选择导出的目录...");
fc.setApproveButtonText("确定");
fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
if (JFileChooser.APPROVE_OPTION == fc.showOpenDialog(this)) {
label.setVisible(true);
label.setText("数据导出中");
path = fc.getSelectedFile().getPath();
new PCBExportService().dealExportCore(path);
label.setText("导出完毕");
}
}

if (e.getSource() == bottom2) {
System.exit(0);
}
//计算
if (e.getSource() == bottom3) {
label.setVisible(true);
label.setText("数据计算中");
new PCBRuleService().dealPCBRuleCore();
try {
PCBRule p = new PCBRule();
p.replaceRule();
p.cabinetSum();
} catch (SQLException ex) {
ex.printStackTrace();
}
label.setText("数据计算完毕");
}

}

/**
* 写数据到数据库
*/
public void readExcelToDatabase() {
//
String path = null;
JFileChooser fc = new JFileChooser();
fc.setDialogTitle("请选择要上传的文件...");
fc.setApproveButtonText("确定");
fc.setFileSelectionMode(JFileChooser.FILES_ONLY);
if (JFileChooser.APPROVE_OPTION == fc.showOpenDialog(this)) {
path = fc.getSelectedFile().getPath();
// 导入(计算时间);
label.setVisible(true);
System.out.println("数据导入中...");
try {
XxlsServices howto = new XxlsServices();
howto.process(path);
howto.close();
} catch (Exception e) {
label.setText("数据导入出错");
e.printStackTrace();
}
label.setText("导入完毕");
}
}

}
分享到:
评论

相关推荐

    java使用itext实现pdf文件下载

    在Java开发中,生成和处理PDF文档是一项常见的需求。Itext是一个强大的库,它允许开发者在Java环境中创建、编辑和修改PDF文档...通过实践和理解这些示例,你将能够熟练地在Java项目中运用Itext处理PDF文件的下载需求。

    poi 3.17 上传下载Excel ajax + spingmvc 弹出弹窗

    spingmvc 弹出弹窗" 涉及到的是一个Web应用开发中的功能模块,它使用了Apache POI 3.17版本来处理Excel文件,同时结合了Ajax、SpringMVC框架以及弹窗技术,实现了高效的数据导入导出功能。以下是对这些技术点的详细...

    若依平台开发文档word版本

    - **导入导出**: 支持Excel文件的导入导出,便于批量处理数据。 - **上传下载**: 文件上传下载功能,支持多种格式文件。 - **事务管理**: 通过Spring框架管理数据库事务,确保数据一致性。 - **异常处理**: 自定义...

    jmeter2.13

    - **自定义插件支持**:JMeter社区提供了大量第三方插件,扩展了其功能,如图形化展示、数据导入导出、更复杂的断言等。 - **脚本录制与回放**:支持代理服务器模式,可以方便地录制用户操作,生成测试脚本,然后...

    一个小巧的桌面日历,资源占用小

    8. **数据导入导出**:支持iCalendar (ical) 或其他格式的数据导入导出,方便用户在不同日历应用间迁移。 9. **隐私保护**:确保用户的日历数据安全,避免未授权的访问。 10. **编程技术**:可能涉及到的技术栈有...

    geoserver与OpenLayers配置说明文档

    Geoserver是一个基于Java的服务器,用于发布和管理地理空间数据,而OpenLayers则是一个JavaScript库,用于在Web上创建交互式地图应用。这两者的结合能够提供强大的地图服务和用户界面,使得地理信息的展示和操作变得...

    Sublime Text3 x64 Setup官方64位原版

    3. **设置与个性化**:在“Preferences”菜单中,可以调整字体、颜色主题、快捷键绑定等,还可以导入或导出设置。 4. **安装插件**:通过Package Control插件管理器,用户可以方便地安装和更新Sublime Text3的插件。...

    简洁而不失优雅的桌面课程表 使用.zip

    8. **导入导出数据**:用户可以将课程表数据导入或导出,方便备份或分享给他人。这通常通过CSV或iCalendar等通用格式实现。 9. **编程语言与框架**:考虑到“desktop-schedule_master.zip”中的“master”可能指代...

    学生成绩管理系统(springboot+layui+thymeleaf).zip

    【API接口】如果系统需要与其他应用集成,可能会提供RESTful API接口,如通过JSON格式交换数据,以实现成绩导入导出或与移动应用的交互。 综上所述,"学生成绩管理系统(springboot+layui+thymeleaf)"是一个结合了...

    Monarch-Lanka:SLIIT ITPM项目的时间表管理桌面应用程序

    5. **数据导入导出**:用户可以将外部日历文件(如iCal或Outlook格式)导入到应用程序中,也可以将时间表导出以便备份或在其他设备上使用。 6. **过滤和搜索**:提供过滤和搜索功能,使用户能快速定位特定的事件或...

    前端、后端代码自动生成

    4. **易用性**:只需导入DB设计文档(Excel),进行简单配置,即可自动生成前端和后端代码。 LX·SRC代码自动生成系统的整体流程涉及多个配置环节,包括: - **查询条件配置**:支持多种类型的查询条件,如下拉框...

    CRM客户管理系统.zip

    结合Layui前端组件库、Shiro安全框架以及Echarts数据可视化库,实现了全面的功能覆盖,包括菜单分配、职务分配以及各项CRUD操作,并支持部分表格数据的导入与导出。 首先,SSM框架是Java领域广泛使用的Web开发框架...

    学生成绩管理系统(springboot+layui+thymeleaf)

    5. 数据导出:支持将成绩数据导出为Excel或其他格式,方便分析或打印。 在开发过程中,通常会使用Maven或Gradle作为构建工具,管理项目的依赖关系。数据库可能选用MySQL、Oracle或H2等,使用JPA进行ORM操作。此外,...

    精通JavaScript一书光盘

    5. **ES6及后续版本的新特性**:比如箭头函数、模板字符串、解构赋值、let和const、Promise(用于异步编程)、async/await、模块导入导出、Set和Map数据结构、类和继承的改进等。 6. **DOM操作**:JavaScript可以...

    javascript

    9. **模块化**:CommonJS(Node.js环境中的模块规范)、AMD(Asynchronous Module Definition,如RequireJS)、ES6的模块导入导出(import和export)。 10. **ES6及新特性**:箭头函数、解构赋值、模板字符串、let...

    fullcalendar-3.9.0 日历控件

    - **可扩展性**: 支持插件扩展,如Google日历、iCal导入导出等,进一步丰富功能。 ### 2. 安装与引入 要使用FullCalendar 3.9.0,首先需要将其文件下载或通过CDN引入。官方提供js和css文件,一般将它们放在项目的`...

    PrimeFaces中文教程

    PrimeFaces是一个开源的JavaServer Faces(JSF)组件库,它提供了一组丰富的UI组件,以帮助开发者创建丰富的、交云的、基于JSF的Web应用程序。PrimeFaces中文教程详细地向开发者介绍了PrimeFaces的安装和配置,以及...

    JavaScript_深度剖析(从入门到精通).doc

    - **模块化**:使用`import/export`导入导出代码块,提高代码可维护性。 - **框架和库**:如React、Vue等,简化前端开发过程。 ### 总结 JavaScript作为一门强大的脚本语言,不仅具备基本的数据类型和控制结构,还...

    毕业生就业信息管理系统.zip

    3、poi文件导入和导出 4、js 采用jquery 5、 树采用z-tree 6、文件上传,uploaify 7、ajax,dwr 8.弹窗、dialog使用jquery easyui 9.ajax 文件上传。 10.ajax局部刷新页面 11.ifream布局。 12.html和css...

    工业电子元件开源系统(含手机站)-PHP

    4、[新增]发布/编辑视频文档时,支持批量导入视频链接的功能;5、[新增]内置腾讯云COS对象存储的逻辑,可以安装COS插件使用;6、[新增]内置升级模式,可选择升级新版本,也可选择只升级安全补丁;7、[新增]整点秒杀...

Global site tag (gtag.js) - Google Analytics