java如何将从数据库取出的数据预先存入到内存?

 我来答
丶公子晨暮
推荐于2019-10-25 · TA获得超过2.2万个赞
知道小有建树答主
回答量:65
采纳率:100%
帮助的人:1.6万
展开全部

你要实现的这个可能跟SpringMvc的关系不是很大。
你要达到的目的其实就是在jvm启动的时候把数据库数据加载一份到内存,一个静态变量和一个静态初始化块就可以搞定你的问题,这两者都是在类加载的时候初始化一次,像前面回答的一样,你可以用一个HashMap搞定。稍微具体来说,一个静态变量
public static final  Map<key,value> cache=new  HashMap<key,value>()
static {
cache=请求数据库操作
}

key你自己加,String还是int都行,value是你数据库的结构,可以写个实体。获取的时候直接cache.get(key)就可以了。

java如何从数据库读取数据并写入txt文件:

将数据查询出来放在list中,然后写入文件。
给你个写入的类,查询数据自己如果能搞定最好了。
FileWriter fileWriter=new FileWriter("c:\\Result.txt");
int [] a=new int[]{11112,222,333,444,555,666};
for (int i = 0; i < a.length; i++) {
fileWriter.write(String.valueOf(a[i])+" ");
}
fileWriter.flush();
fileWriter.close();
上面例子中的a也可以是list。

百度网友2bd064f
2018-01-04 · TA获得超过1.3万个赞
知道小有建树答主
回答量:61
采纳率:98%
帮助的人:1.2万
展开全部

1.如果你没有使用任何框架,最简单的就是用单例模式,让数据只读。

2.如果你的数据访问层是ibatis,直接可以使用它的缓存。

3.写一个简单的缓存接口,把一些数据放在缓存中,并键还要隔一段时间后,异步的去更新缓存的内容。

或者写个contextloaderlistener, 就像加载spring一样, 你可以加载你要的数据,写一个struts的plugin也可以。

ContextLoader可以由 ContextLoaderListener和ContextLoaderServlet生成。如果查看ContextLoaderServlet的API,可以看到它也关联了ContextLoader这个类而且它实现了HttpServlet这个接口。

ContextLoader创建的是 XmlWebApplicationContext这样一个类,它实现的接口是WebApplicationContext->ConfigurableWebApplicationContext->ApplicationContext->BeanFactory这样一来spring中的所有bean都由这个类来创建。

Plugin(Plug-in,addin,add-in,addon或add-on)是一种计算机应用程序,它和主应用程序(host application)互相交互,以提供特定的功能。应用程序支持Plugin有许多原因,一些主要原因包括:使得第三方开发者有能力扩展应用程序,以提供无法先期预料的特色;减小应用程序的大小;由于软件版权之间的不兼容性将源代码和应用程序分享。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帐号已注销
2018-01-04 · TA获得超过1.5万个赞
知道小有建树答主
回答量:5
采纳率:100%
帮助的人:5010
展开全部

要达到的目的其实就是在jvm启动的时候把数据库数据加载一份到内存,一个静态变量和一个静态初始化块就可以搞定你的问题,这两者都是在类加载的时候初始化一次,像前面回答的一样,你可以用一个HashMap搞定。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式