综合

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

2019-10-09 18:27:20来源:励志吧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流行,数据被当着单独的一部分考虑了,这要好处很多,但有时候,可以考虑以下非主流的方式,其好处就是俩个字:简单

中卫治疗妇科费用
河源治疗妇科方法
河北治疗包皮包茎医院
中卫治疗妇科医院
河源治疗妇科费用
分享到: