JR 精品文章 - 总结:非主流存储数据方式
AD: jr (at) javaresearch.org


首页 | 动态 | 文章 | FAQ  | 新闻 | 下载 | 代码 | 工作 | 调查 | 术语 | 站点 | 图书 | 论坛 | 帮助 | 全部  

TOP | 交流 | 软件 | 专栏 | 开源 | 译/著 | 源码 | API  | 推荐 | FTP  | 积分 | 统计 | 搜索 | Blog | 我们  
首页 » 研究文集 » 设计及设计模式 搜索标题相关文章 搜索标题相关文章    评论此文章 发表评论     开始监控此文章 开始监控   加入收藏夹  加入收藏夹
总结:非主流存储数据方式
javamonkey 原创   更新:2008-08-29 22:56:35  版本: 1.0   

    数据会存到哪儿,在仔细考虑这个问题前,我肯定毫无疑问的说,肯定存数据库呗。其实不然,想想很多网站的图片就没有存到数据库,直接保存到文件系统。再比如写配置信息,既可能存到文件里,也可能存到数据库里。除了这流行的方式外,,还有没有别的地方可以存数据呢。

  答案是有的。可以存在程序里。最常见的例子是直接把配置信息写在Java类的属性里,这样的好处是容易该,如果需要改逻辑又需要改配置信息,这样只要在代码里修改就好了,省的俩头改(程序和配置文件),比如以下代码

 public class DBHelper {

    private static String url = "jdbc:mysql://localhost/warehouse?user=root&password=";

    static {
        try {

            Class.forName("com.mysql.jdbc.Driver").newInstance();
        } catch (Exception ex) {
            ex.printStackTrace();
            throw new RuntimeException("没有找到驱动!");
        }

    }

    public static Connection getConnection() {
        try {
            Connection conn =
                    DriverManager.getConnection(url);
            return conn;

        } catch (SQLException ex) {
            // handle any errors
            ex.printStackTrace();
            throw new RuntimeException("获取数据库连接错误!");
           
        }
       

    }

  这个DBHelper 搞定一切,哪怕你是以后遇到切换成连接池,数据库IP地址更改或者数据库变成Oralce的需求。

  在举一个列子,数据库里一个表放有注册用户信息,你也许想在首页上显示到目前为止会员姓李的有多少个,姓张的有多少个,姓王的有多少个.完成这个需求,一般的思路是后台程序定期统计,然后倒入到一个数据库表里,这个表内容大概如下:

LastName       total

李          778,000 

张              478,000 

王              218,000

   然后写一打端MVC程序去显示在主页上。这种方法是很好,不过还有更简单的方法,那就是不用数据库,后台统计程序直接生成包含这些统计信息的JSP页面就成。这样的好处是省掉很多程序,而且维护也很方便,比如如果想夸大张姓人数,那直接改JSP好了,谁都会,保证不出错

 还有一个不太常用一个列子,可以把图片二进制编码后当着一个字符串属性,这样就省的去读图片了,如公司的Logo信息或者你的产品的Logo 

  其实把数据放到程序里应该很广泛的,比如老的C程序,再比如汇编程序都是数据和逻辑放到一起。只是由于现在MVC流行,数据被当着单独的一部分考虑了,这要好处很多,但有时候,可以考虑以下非主流的方式,其好处就是俩个字:简单
 
  支持一下个人博客hi.baidu.com/joelli


版权声明   给作者写信
本篇文章对您是否有帮助?  投票:         投票结果:     7       1
作者其它文章: 作者全部文章     查看作者的Blog
评论人:littlepang 发表时间: Sun Aug 31 16:01:41 CST 2008
很好很强大
评论人:xjlsgcjdtc 发表时间: Wed Sep 10 08:56:58 CST 2008
你要知道,当服务器运行之后是不可能停下来让你去修改源代码的,而且开发人员也是不会发布源代码给客户的,所以这种非主流存储数据方式在java web开发中是行不通的
评论人:javamonkey 发表时间: Sat Sep 13 01:37:14 CST 2008
大部分情况都是这样的,JSP是个列外,象我刚才说的把统计姓的数据直接放到JSP里就是比较好的办法
评论人:sc-fofo 发表时间: Fri Nov 21 21:02:31 CST 2008
学习啊

这个文章共有 4 条评论
 
返回文章列表 返回〔设计及设计模式〕
下一篇文章 主题: 架构,框架,模式,构件,组件,中间件之间区别


文字广告链接
        自主、快速定制基于JAVA的B/S业务系统          重量级企业在线自定义WEB报表平台
        Excel制表、零代码发布、打印、图表结合——快逸报表,免费、稳定、功能强大的java工具
        技术圈: 关于Java、dotNet、PHP、Ruby、奇客、Web2.0等更多资讯博客精选文章

关于 JR  |  版权声明  |  联系我们 

©2002-2006 JR 版权所有 沪ICP备05019622号