⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 d2rframe.java

📁 Java实现的数据库和RDF之间的转换程序。
💻 JAVA
字号:
package db_rdf;

import javax.swing.SwingUtilities;
import java.awt.Button;
import java.awt.Color;
import java.awt.Font;
import java.awt.GridBagLayout;
import java.awt.Rectangle;

import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;

import com.hp.hpl.jena.rdql.* ;
public class d2rFrame extends JFrame {

	private JPanel jContentPane = null;

	private JLabel formatFileJLbl = null;

	private JLabel rdfFileJLbl = null;

	private JLabel queryJLbl = null;

	private JLabel resultJLbl = null;

	private JPanel contentJPl = null;

	private JTextField formatJTF = null;

	private JTextField rdfJTF = null;

	private JScrollPane queryJSP = null;

	private JTextArea queryJTA = null;

	private JScrollPane resultJSP = null;

	private JTextArea resultJTA = null;

	private Button formatBtn = null;

	private Button rdfBtn = null;

	private JButton translateJBtn = null;

	private JButton queryJBtn = null;

	private JButton cancelJBtn = null;


	/**
	 * This method initializes contentJPl
	 *
	 * @return javax.swing.JPanel
	 */
	private JPanel getContentJPl() {
		if (contentJPl == null) {
			contentJPl = new JPanel();
			contentJPl.setLayout(new GridBagLayout());
			contentJPl.setBounds(new Rectangle(183, 14, 0, 0));
		}
		return contentJPl;
	}

	/**
	 * This method initializes formatJTF
	 *
	 * @return javax.swing.JTextField
	 */
	private JTextField getFormatJTF() {
		if (formatJTF == null) {
			formatJTF = new JTextField();
			formatJTF.setBounds(new Rectangle(136, 18, 338, 29));
		}
		return formatJTF;
	}

	/**
	 * This method initializes rdfJTF
	 *
	 * @return javax.swing.JTextField
	 */
	private JTextField getRdfJTF() {
		if (rdfJTF == null) {
			rdfJTF = new JTextField();
			rdfJTF.setBounds(new Rectangle(136, 61, 338, 29));
		}
		return rdfJTF;
	}

	/**
	 * This method initializes queryJSP
	 *
	 * @return javax.swing.JScrollPane
	 */
	private JScrollPane getQueryJSP() {
		if (queryJSP == null) {
			queryJSP = new JScrollPane();
			queryJSP.setBounds(new Rectangle(136, 108, 401, 149));
			queryJSP.setViewportView(getQueryJTA());
		}
		return queryJSP;
	}

	/**
	 * This method initializes queryJTA
	 *
	 * @return javax.swing.JTextArea
	 */
	private JTextArea getQueryJTA() {
		if (queryJTA == null) {
			queryJTA = new JTextArea();
		}
		return queryJTA;
	}

	/**
	 * This method initializes resultJSP
	 *
	 * @return javax.swing.JScrollPane
	 */
	private JScrollPane getResultJSP() {
		if (resultJSP == null) {
			resultJSP = new JScrollPane();
			resultJSP.setBounds(new Rectangle(136, 273, 401, 149));
			resultJSP.setViewportView(getResultJTA());
		}
		return resultJSP;
	}

	/**
	 * This method initializes resultJTA
	 *
	 * @return javax.swing.JTextArea
	 */
	private JTextArea getResultJTA() {
		if (resultJTA == null) {
			resultJTA = new JTextArea();
		}
		return resultJTA;
	}

	/**
	 * This method initializes formatBtn
	 *
	 * @return java.awt.Button
	 */
	private Button getFormatBtn() {
		if (formatBtn == null) {
			formatBtn = new Button();
			formatBtn.setBounds(new Rectangle(478, 18, 59, 29));
			formatBtn.setFont(new Font("Dialog", Font.BOLD, 24));
			formatBtn.setBackground(new Color(238, 238, 238));
			formatBtn.setLabel(". . .");
			formatBtn.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					chooseFile(0);
				}
			});
		}
		return formatBtn;
	}

	/**
	 * This method initializes rdfBtn
	 *
	 * @return java.awt.Button
	 */
	private Button getRdfBtn() {
		if (rdfBtn == null) {
			rdfBtn = new Button();
			rdfBtn.setBounds(new Rectangle(478, 61, 59, 29));
			rdfBtn.setLabel(". . .");
			rdfBtn.setBackground(new Color(238, 238, 238));
			rdfBtn.setFont(new Font("Dialog", Font.BOLD, 24));
			rdfBtn.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					chooseFile(1);
				}
			});
		}
		return rdfBtn;
	}

	/**
	 * This method initializes translateJBtn
	 *
	 * @return javax.swing.JButton
	 */
	private JButton getTranslateJBtn() {
		if (translateJBtn == null) {
			translateJBtn = new JButton();
			translateJBtn.setBounds(new Rectangle(124, 464, 85, 41));
			translateJBtn.setText("转换");
			translateJBtn.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					translateD2R();
                                        resultJTA.setText("关系数据库到RDF转换成功结束!");
				}
			});
		}
		return translateJBtn;
	}

	/**
	 * This method initializes queryJBtn
	 *
	 * @return javax.swing.JButton
	 */
	private JButton getQueryJBtn() {
		if (queryJBtn == null) {
			queryJBtn = new JButton();
			queryJBtn.setBounds(new Rectangle(245, 464, 85, 41));
			queryJBtn.setText("查询");
			queryJBtn.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					query();
				}
			});
		}
		return queryJBtn;
	}

	/**
	 * This method initializes cancelJBtn
	 *
	 * @return javax.swing.JButton
	 */
	private JButton getCancelJBtn() {
		if (cancelJBtn == null) {
			cancelJBtn = new JButton();
			cancelJBtn.setBounds(new Rectangle(365, 464, 85, 41));
			cancelJBtn.setText("取消");
			cancelJBtn.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					queryJTA.setText("");
					resultJTA.setText("");
				}
			});
		}
		return cancelJBtn;
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO 自动生成方法存根
		SwingUtilities.invokeLater(new Runnable() {
			public void run() {
				d2rFrame thisClass = new d2rFrame();
				thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
				thisClass.setVisible(true);
			}
		});
	}
	/**
	 * This is the default constructor
	 */
	public d2rFrame() {
		super();
		initialize();
	}

	/**
	 * This method initializes this
	 *
	 * @return void
	 */
	private void initialize() {
		this.setSize(600, 600);
		this.setContentPane(getJContentPane());
		this.setTitle("关系数据库到RDF的转换及查询工具");
		this.setLocation(200,150);
	}

	/**
	 * This method initializes jContentPane
	 *
	 * @return javax.swing.JPanel
	 */
	private JPanel getJContentPane() {
		if (jContentPane == null) {
			resultJLbl = new JLabel();
			resultJLbl.setText("格式文件");
			resultJLbl.setBounds(new Rectangle(33, 18, 74, 30));
			queryJLbl = new JLabel();
			queryJLbl.setText("RDQL语句");
			queryJLbl.setBounds(new Rectangle(33, 108, 74, 30));
			rdfFileJLbl = new JLabel();
			rdfFileJLbl.setText("RDF文件");
			rdfFileJLbl.setBounds(new Rectangle(33, 62, 74, 30));
			formatFileJLbl = new JLabel();
			formatFileJLbl.setText("运行结果");
			formatFileJLbl.setBounds(new Rectangle(33, 273, 74, 30));
			jContentPane = new JPanel();
			jContentPane.setLayout(null);
			jContentPane.add(getContentJPl(), null);
			jContentPane.add(formatFileJLbl, null);
			jContentPane.add(rdfFileJLbl, null);
			jContentPane.add(queryJLbl, null);
			jContentPane.add(resultJLbl, null);
			jContentPane.add(getFormatJTF(), null);
			jContentPane.add(getRdfJTF(), null);
			jContentPane.add(getQueryJSP(), null);
			jContentPane.add(getResultJSP(), null);
			jContentPane.add(getFormatBtn(), null);
			jContentPane.add(getRdfBtn(), null);
			jContentPane.add(getTranslateJBtn(), null);
			jContentPane.add(getQueryJBtn(), null);
			jContentPane.add(getCancelJBtn(), null);
		}
		return jContentPane;
	}
/*
 * 功能代码:选择文件
 */
	 private void chooseFile(int type){
		  String choosedFile;
		  JFileChooser fileChooser=new JFileChooser();
	      int option=fileChooser.showOpenDialog(this);
	      if(option==JFileChooser.APPROVE_OPTION)
	      {
	        choosedFile=fileChooser.getSelectedFile().getPath();
	        if(choosedFile.length() > 0)
	        {
	        	if(type==0)
	        		this.formatJTF.setText(choosedFile);
	        	else
	        		this.rdfJTF.setText(choosedFile);
	        }
	      }
	 }
	 private void translateD2R()
	 {

	 }
	 private void query()
	 {
		 String queryStr=this.queryJTA.getText();
		 String rdfFileStr=this.rdfJTF.getText();

		 if(queryStr.length()>0 && rdfFileStr.length()>0)
		 {
			 information.resultStr="";
			 try{
                             rdfquery.rdfquery.query(queryStr,rdfFileStr,null);
                              //判断是否有符合条件的结果
                             if(!information.resultStr.endsWith(db_rdf.information.rightQueryEnd))
                                     information.resultStr="没有符合条件的结果!";
			 }
                         catch (QueryException qEx)
                         {
                             System.err.println(qEx.getMessage());
                             information.resultStr = "查询错误!";
                         }
			 catch(Exception e)
			 {
				 information.resultStr="查询错误!";
			 }
			 finally{
			   this.resultJTA.setText(information.resultStr);
			 }
		 }
	 }


}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -