巧用MBean 实现大挪移
来源:互联网 发布:sql三大范式 编辑:程序博客网 时间:2024/05/05 09:11
在开始之前先介绍下应用环境,服务器是Domino853平台和MySQL5.7.16,开发工具是Designer9.01。首先用在Domino服务器上部署MySQL的JDBC驱动,具体方法就不讲了。在这里我们可以把Domino服务器看成一个应用服务器,它不参与数据存储的事务。那么可以把Domino服务拆分成两部分:应用服务器和数据服务器。如下图:
从中可以看出,将应用服务独立出来后,Domino的部署会更加简洁。不过这不是本文的重点。Domino服务器不具有J2ee容器,因此在它上边运行的JDBC一般都是直连或者使用单例模式运行的连接池软件产品,而基于JNDI接口的连接池是运行不了的。笔者选择使用单例模式连接池。
回到正题,本文还是延用上一篇文章中开发的数据库,还是那个MBean:DocumentBean,在里边增加几个属性,变成这样:
private String form = ""; private String fullname = ""; private String subject = "";l private String title =""; private String uuid = ""; private int num = 1; private boolean saved = true;同时在MySQL中建立一个新表(注意,要与MBean的属性类型一致):
然后在DocumentControl类中新增方法saveToSQL(DocumentBean docbean),在这个方法中利用反射机制获取类的属性及属性值,构建SQL语句写入MySQL数据库中。这样实现的好处是:MBean与RDB关系表一一映射,无需编写SQL语句,全程数据的存取都无需关注SQL的使用都在内部封装。在使用中是不是很方便那?
在完成了上述的修改后,我们实际运行一下。在数据库中插入多条记录,只需要调用saveToSQL()方法,不需要自己去编写任何SQL语句了。
这里还要提到一点,SQL语句是动态生成的。那也就是说,随着MBean的属性或增或减或改,都没有关系,程序会自动构建所需的SQL代码。同理,推而广之,SELECT 、UPDATE、DELETE都可以实现。当然目前还没涉及到多表联合,那将是下一个话题了。
以此类推,如果想将数据保存到Domino数据库(已实现)、RDB数据库(已实现)或NOSQL型数据库中只需要开发对应的数据接口即可,数据由MBean或List型数据承载即可实现。
- 巧用MBean 实现大挪移
- Oracle数据库文件大挪移
- 的乾坤大挪移
- Oracle数据库文件大挪移
- 乾坤大挪移!!!
- [搬家] 相册大挪移
- 乾坤大挪移 大法
- 乾坤大挪移
- TensorFlow17: “声音大挪移”
- tf17: “声音大挪移”
- Redis cluster - 乾坤大挪移
- Linux 文件编码大挪移
- Linux 文件编码大挪移
- Linux 文件编码大挪移
- Linux 文件编码大挪移
- JBoss MBean实现方法
- MBean的实现
- JMX中MBean实现
- text-align的妙用
- Selenium、firefox和wordpress配置出现的问题
- 微软亚洲研究院面试编程题之判断两个链表是否相交
- 数据存储:数据备份:测试备份和还原
- hibernate-mapping set 简单的配置问题
- 巧用MBean 实现大挪移
- redis与memcache的区别
- 为什么用ls和du显示出来的文件大小有差别?
- android jar文件与dex文件的转换
- 常用的读取配置文件的方法(二)
- 使用curl 命令模拟POST/GET请求
- oracle用户创建及权限设置
- iOS10.3后允许App运行中变更App图标
- Openstack Horizon workflows