ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
## 一、概述 平台提供了一套富客户端子框架,可以便捷的开发基于客户端/服务器模式或两层架构的应用; 典型登陆界面如下: ![](https://img.kancloud.cn/2a/39/2a399ea988f8d7dee7e28f48d14fe845_400x225.png) 主界面如下: ![](https://img.kancloud.cn/d1/d0/d1d037addcf934a34268fe51e77f87b5_1366x768.png) ![](https://img.kancloud.cn/e5/4c/e54c50b844aa69025c698e45aa9597e5_1366x768.png) ## 二、开发步骤 1、建表; 代码生成: ![](https://img.kancloud.cn/72/dd/72ddc90a9d7b126d583cd4df1d2d202a_768x441.png) 需要注意的是,这里建的表生成是实体,是富客户端专用的实体; ![](https://img.kancloud.cn/be/50/be501edf421acc9c25a2ebc540dc3cb9_1287x593.png) 2、数据库访问; ![](https://img.kancloud.cn/27/8a/278a7d8b449cb7644a05ae63d4dfc424_552x157.png) ``` TempDao tempdao = new TempDao(); tempdao.add(tz); ``` 3、事务在业务中的支持 默认的,每个dao的CUD方法在独立的事务中; 如果需要业务中组合的dao方法能够共享一个事务,则调用如下; ``` TempDao tempdao = new TempDao(); Connection connection = null; try { connection = tempdao.getConnection(); int fenxiaoRowNumber = fenxiaoSheet.getPhysicalNumberOfRows(); int curInsertRow = 0; for (int i = 1; i < fenxiaoRowNumber; i++) { Row curRow = fenxiaoSheet.getRow(i); TempFxctmxb tz = new TempFxctmxb(); RowObjectMapper.mapRowToObject(tz, curRow, 55, "yyyy/MM/dd HH:mm"); tempdao.addInTransaction(connection, tz); // Row curDRow = destSheet.createRow(i); RowObjectMapper.mapObjectToRow(tz, curDRow); } tempdao.commit(connection); JOptionPane.showMessageDialog(this, "成功处理完毕.", "Uniframework消息", JOptionPane.WARNING_MESSAGE); } catch (Exception ex) { tempdao.rollback(connection); SwingLogger.logger.error("wbase:", ex); } ``` >[danger] 这里需要特别注意,由于是自行控制事务,必须严格遵循连接使用流程; > 获取---使用---提交/回滚