用Java实现HTML文件代替数据库存储数据

gkmfbkql244204

gkmfbkql244204

2016-02-19 18:51

给自己一点时间接受自己,爱自己,趁着下午茶的时间来学习图老师推荐的用Java实现HTML文件代替数据库存储数据,过去的都会过去,迎接崭新的开始,释放更美好的自己。

  Java在编写一些图形化的小程序时,有时也要去存储少量的数据,如果用JDBC来连接数据库,就会使程序速度减慢,而且及不方面,我们可以用Java中的文件来代替数据库保存数据,这样不但可以实现存储的功能,而且不用考虑数据频繁的存取,可以把文件定义成为HTML文件,并将存储的数据以表格的方式显示,这样就可以直接在网页中看到数据,下面是我写的一个小的文件存储数据的实例:

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/webkaifa/)

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.*;
import java.io.*;
import javax.swing.*;
public class filework extends JFrame implements ActionListener {
  JPanel p;
  JButton b0,b1,b2;
  JTable tab;
  Object my[][] = new Object[50][3];
  int a[]=new int[50];
  int b[]=new int[50];
   int j=0,rows=0;
   int k=0,shu=0;
  String name,age;
  String title[] = {"姓名", "年龄", "身高"};
  BufferedReader in;
  int i = 0;
  public filework() {
    super("数据轮回");
    this.setSize(300, 300);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    p = new JPanel();
    tab = new JTable(my, title);
    b0 = new JButton("添加");
    b1 = new JButton("打开");
    b2 = new JButton("保存");
    b1.addActionListener(this);
    b2.addActionListener(this);
    b0.addActionListener(this);
    p.add(b0);
    p.add(b1);
    p.add(b2);
    this.getContentPane().add(new JScrollPane(tab), "Center");
    this.getContentPane().add(p, "South");
    this.setVisible(true);
  }
  public void fileopen() {
    try{
 JFileChooser choose=new JFileChooser(".");
 int sis=choose.showOpenDialog(this);
 String name=choose.getSelectedFile()+"";
 if(sis==JFileChooser.APPROVE_OPTION){
 in=new BufferedReader(new FileReader(name));
 String over=null;
 String line;
 while((line=in.readLine())!=null){
 over=over+line;
 }
 for(int i=0;ia.length;i++){
 a[i]=over.indexOf("td")+4;
 b[i]=over.indexOf("/td");
 my[rows][k]=over.substring(a[i],b[i]);
 over=over.substring(b[i]+4,over.length());
 k=k+1;
 if(k==3){k=0;rows=rows+1;}
 }
 }
 }catch(Exception ie){}
  }
  public static void main(String[] args) {
    filework filework = new filework();
  }

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/webkaifa/)public void actionPerformed(ActionEvent e) {
    if (e.getSource() == b1) {
      fileopen();
    }
      if (e.getSource() == b2) {
     JFileChooser save=new JFileChooser(".");
     int result=save.showSaveDialog(null);
     String s1=save.getSelectedFile()+"";
     if(result==JFileChooser.APPROVE_OPTION){
    try {
      OutputStreamWriter out = new OutputStreamWriter(new
          FileOutputStream(s1));
      String s2="htmlhead/headbody";
s2=s2+"table border="1" width="50%" bordercolor="green" align="center"";
      s2=s2+"tr";
      s2=s2+"th"+"姓名"+"/th";
      s2=s2+"th"+"年龄"+"/th";
      s2=s2+"th"+"身高"+"/th";
      s2=s2+"/tr";
     for(int shu=0;shurows;shu++)
      {
        s2=s2+"tr align="center"";
        s2=s2+"td"+my[shu][0].toString().trim()+"/td";
        s2=s2+"td"+my[shu][1].toString().trim()+"/td";
        s2=s2+"td"+my[shu][2].toString().trim()+"/td";
        s2=s2+"/tr";
      }
    s2=s2+"/table/body/html";
     out.write(s2);
     out.close();
     for(int i1=0;i150;i1++){
      my[i1][0]="";
      my[i1][1]="";
      my[i1][2]="";
      }
      rows=0;
      this.repaint();
      JOptionPane.showMessageDialog(null,"保存数据成功!",
"information",JOptionPane.QUESTION_MESSAGE);
    } catch (Exception ex1) {
    }
     }
      }
      if(e.getSource()==b0){
        JTextField message[]=new JTextField[6];
        message[0]=new JTextField("请输入姓名:");
        message[0].setEditable(false);
        message[1]=new JTextField();
        message[2]=new JTextField("请输入年龄:");
        message[2].setEditable(false);
        message[3]=new JTextField();
        message[4]=new JTextField("请输入身高:");
        message[4].setEditable(false);
        message[5]=new JTextField();
        String str[]={"确认","取消"};
        int go=JOptionPane.showOptionDialog(null, message, "添加用户",
JOptionPane.YES_OPTION, JOptionPane.INFORMATION_MESSAGE, null, str, str[0]);
        if(go==0){
        if(message[1].getText().equals("")&&
          message[3].getText().equals("")&&
          message[5].getText().equals("")){
JOptionPane.showMessageDialog(null,"数据不能为空","ERROR",JOptionPane.ERROR_MESSAGE);}
        else{
         my[rows][0]=message[1].getText();
         my[rows][1]=message[3].getText();
         my[rows][2]=message[5].getText();
         this.repaint();rows=rows+1;}
        }
      }
    }
}
展开更多 50%)
分享

猜你喜欢

用Java实现HTML文件代替数据库存储数据

Web开发
用Java实现HTML文件代替数据库存储数据

Java数据库存取技术

Java JAVA基础
Java数据库存取技术

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

MySQL数据库存储引擎详解

编程语言 网络编程
MySQL数据库存储引擎详解

数据库存储过程分页显示

编程语言 网络编程
数据库存储过程分页显示

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

用存储过程实现ASP对数据库访问

ASP
用存储过程实现ASP对数据库访问

Oracle数据库存储过程的6个问题

编程语言 网络编程
Oracle数据库存储过程的6个问题

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

将XHTML+CSS页面转换为打印机页面

将XHTML+CSS页面转换为打印机页面

DBGrid中用光标键控制Cell

DBGrid中用光标键控制Cell
下拉加载更多内容 ↓