首页 > 大数据 > 正文

设计模式之非主流存储数据方式

2008-09-08 10:08:36  来源:IT专家网论坛

摘要:数据会存到哪儿,在仔细考虑这个问题前,我肯定毫无疑问的说,肯定存数据库呗。其实不然,想想很多网站的图片就没有存到数据库,直接保存到文件系统。再比如写配置信息,既可能存
关键词: 数据库 数据存储

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

    答案是有的。可以存在程序里。最常见的例子是直接把配置信息写在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流行,数据被当着单独的一部分考虑了,这要好处很多,但有时候,可以考虑以下非主流的方式,其好处就是俩个字:简单

 


第三十五届CIO班招生
国际CIO认证培训
首席数据官(CDO)认证培训
责编:

免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。