前端之家收集整理的这篇文章主要介绍了
JAVA Swing客户端,对远程数据库的数据访问;伊巴提斯 ,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个需要访问远程数据库的Java客户端.目的是向用户隐藏数据库凭据,而不是对代码中的任何凭据进行硬编码.因此,数据库访问可能必须在服务器端.
我被限制使用Ibatis作为数据抽象框架.除此之外,我还在Web服务器上运行了JBoss,使我可以使用数据源.
您将如何设计远程数据库访问和数据序列化/反序列化.您是否希望在套接字上使用某种数据流的Web服务?您将如何实现这两者?
最佳答案
构建服务层并通过RMI公开它-可能像拥有JBoss一样作为EJB3无状态会话Bean,也可能作为纯RMI.除非您有特定需求,否则我不会理会Web服务. RMI将为您处理序列化的情况.
您的服务层需要公开一种方法,以使用在Swing应用程序启动时输入的凭据来对用户进行身份验证.所有对数据的调用都要经过服务层. Swing应用程序中不存在sql.
除了隐藏数据库凭据之外,此安排还有其他好处.您不仅会获得分层的体系结构,而且通过在服务器上只有一个数据源,可以在所有客户端之间共享准备好的语句而提高效率.