import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
public class SqlCache
{
public static void main(String[] args) throws Exception
{
File of=new File("clist.csof");//cache serializable object file
List<Category> clist=new ArrayList<Category>();
if(of.exists())//读取缓存
{
System.out.println("file");
ObjectInputStream in=new ObjectInputStream(new FileInputStream("clist.csof"));
clist=(List<Category>)in.readObject();
in.close();
}
else//读取数据库生成缓存
{
System.out.println("sql");
Class.forName("com.mysql.jdbc.Driver");
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/mysql","root","jack");
Statement statement=con.createStatement();
ResultSet result=statement.executeQuery("SELECT * FROM help_category");
while(result.next())
{
Category category=new Category();
category.setName(result.getString("name"));
category.setHelp_category_id(result.getInt("help_category_id"));
category.setParent_category_id(result.getInt("parent_category_id"));
category.setUrl(result.getString("url"));
clist.add(category);
}
ObjectOutputStream obj=new ObjectOutputStream(new FileOutputStream("clist.csof"));
obj.writeObject(clist);
obj.writeObject("x");
obj.close();
result.close();
statement.close();
con.close();
}
for(Category c:clist)
{
System.out.println(c.getHelp_category_id()+" "+c.getName()+" "+c.getParent_category_id()+" "+c.getUrl());
}
}
}
分享到:
相关推荐
【高性能Java数据库缓存_缓存思路】 在Java开发中,数据库缓存是提升系统性能的关键技术之一。本文主要探讨如何构建高效的Java数据库缓存系统,以应对大规模流量的挑战。作者通过分享舍得网的实践经验,阐述了一套...
数据库缓存技术是一种提高系统性能的关键策略,尤其在高并发访问和大数据量的场景下,其作用尤为显著。本文档将深入探讨数据库缓存的基本原理、适用条件以及编程实现。 一、缓存基本概念 缓存是存储系统中用于临时...
本文将深入探讨如何使用Java来实现多个数据库之间的数据同步。 首先,我们需要理解数据同步的含义。数据同步是指在两个或多个数据库之间,当某个数据库中的数据发生改变时,这些变化能够被实时或者近实时地反映到...
【描述】:本文主要探讨了Java数据库技术与框架技术的关系,以及如何构建基于Java的数据库应用框架。作者通过实验设计和实现,旨在为相关研究者提供指导,促进信息技术领域的快速发展。 【标签】:“Java 数据库” ...
零基础学会REDIS缓存数据库在JAVA中的使用。从REDIS的安装和使用开始,到Java程序与REDIS数据库进行连接互动,简单明了。
【使用JAVA内存数据库h2database性能优化】 在开发应用程序时,我们经常遇到性能瓶颈,特别是当涉及到大量的IO操作时。数据库访问是这类问题的主要来源,特别是在处理高并发、实时计算和海量数据监控的情况下。例如...
Java数据库程序设计是Java开发中的重要组成部分,它主要用于与数据存储系统进行交互,实现数据的增删改查等操作。Java提供了多种方式来连接和操作数据库,如JDBC(Java Database Connectivity)API,ORM(Object-...
此外,为了确保良好的性能,可能需要进行数据库索引优化、连接池配置以及适当的缓存策略。 总之,"Java宠物店"项目是一个全面的Web开发实例,涵盖了Java编程、Struts框架的应用、数据库设计以及前端用户体验优化等...
在Java编程中,连接数据库是一项基础且至关重要的任务,它使得应用程序能够与数据存储进行交互。本篇文章将探讨几个Java连接数据库的小例子,并对相关...熟悉并掌握这些知识,将使你在Java数据库编程中更加得心应手。
在Java编程中,访问数据库是常见的任务,涉及各种技术和框架。本文将深入探讨Java如何连接并操作数据库,包括基本的JDBC(Java Database Connectivity),以及更高级的Spring、Hibernate和MyBatis框架。 首先,JDBC...
例如,在一个用户查询操作的场景中,JSP页面可能使用DWR来触发一个Java方法,这个方法利用数据库缓存池获取连接,执行SQL查询,然后将结果返回给DWR,最终DWR将查询结果展示在前端页面上。在这个过程中,DWR保证了...
### Memcached数据库缓存策略详解 #### 一、引言 随着互联网技术的快速发展与用户需求的日益增长,高并发场景下的系统设计成为了许多大型网站和应用必须面对的问题之一。数据库作为信息系统的核心组件,其性能直接...
Java数据库编程是利用Java语言进行数据库操作的技术,它让Java应用程序能够实现对数据库的查询、更新、管理等功能。在现代的应用开发中,数据库编程是不可或缺的一部分,因此掌握Java与数据库交互的能力对于Java...
在“Java数据库开发案例精选”中,我们主要探讨的是如何使用Java编程语言与各种数据库进行交互,实现数据的存储、查询、更新和删除等操作。Java数据库开发是软件开发中的重要组成部分,尤其在构建Web应用、企业级...
Oracle数据库是全球领先的数据库管理系统之一,以其高性能、高安全性及丰富的功能在企业级应用中占据重要地位。在LIB图书管理系统中,Oracle主要负责数据的存储和管理。图书信息、借阅记录、用户资料等大量数据通过...
在Java编程中,存储和检索数据库中的图片文件是一项常见的任务,尤其在开发涉及多媒体内容的应用时。本主题将深入探讨如何使用Java与数据库交互来处理图片数据。 首先,我们需要了解几种在数据库中存储图片的基本...
它通过将数据库查询结果存储在内存缓存中,减少对数据库的直接访问,从而提高系统响应速度和用户体验。本篇文章将深入探讨如何使用Java来实现分页缓存,并介绍在读取过程中如何优先从缓存获取数据。 首先,理解分页...