分开两组代码

时间:2014-03-04 07:52:39

标签: java components

如何从sql方法中分离组件?我需要将这组代码与其余代码分开。我有困难因为它有联系。

 Component droplabel = new DropTargetTextArea("test", "testing");

JLabel cellLabel = new JLabel(icon);

            JPanel cellPanel = new JPanel(new BorderLayout());
            cellPanel.add(cellLabel, BorderLayout.NORTH);
            cellPanel.add(droplabel, BorderLayout.CENTER);

            gridPanel.add(cellPanel);

////完整代码

connection = getConnection();
try {  
statement = (PreparedStatement) connection
.prepareStatement("select image from image");
 result = statement.executeQuery();
while (result.next()) {
byte[] image = null;
image = result.getBytes("image");

Image img = Toolkit.getDefaultToolkit().createImage(image);
ImageIcon icon = new ImageIcon(img);

 Component droplabel = new DropTargetTextArea("test", "testing");

JLabel cellLabel = new JLabel(icon);

            JPanel cellPanel = new JPanel(new BorderLayout());
            cellPanel.add(cellLabel, BorderLayout.NORTH);
            cellPanel.add(droplabel, BorderLayout.CENTER);

            gridPanel.add(cellPanel);

}

}

2 个答案:

答案 0 :(得分:0)

基本上你有两个任务:

  1. 从底层数据库中检索一组图像。我说set是因为你使用while循环迭代ResultSet。

    connection = getConnection();
    try {  
        statement = (PreparedStatement) connection.prepareStatement("select image from image");
        result = statement.executeQuery();
        while (result.next()) {
            byte[] image = null;
            image = result.getBytes("image");
        }
    }
    

    您可以将此代码提取到单独的方法,并使用字节数组来存储检索到的信息。该数组将是该方法的返回值。

  2. 创建ImageIcons并在JLabels中使用它们

    Image img = Toolkit.getDefaultToolkit().createImage(image);
    ImageIcon icon = new ImageIcon(img);
    Component droplabel = new DropTargetTextArea("test", "testing");
    JLabel cellLabel = new JLabel(icon);
    
    JPanel cellPanel = new JPanel(new BorderLayout());
    cellPanel.add(cellLabel, BorderLayout.NORTH);
    cellPanel.add(droplabel, BorderLayout.CENTER);
    gridPanel.add(cellPanel);
    

    此代码也可以移动到单独的方法中。该方法检索图像数组(或根据您的设置只检索一个)并创建ImageIcon。

答案 1 :(得分:0)

首先提示一下:您应该阅读有关JPA和MVC的内容。 现在转到你的代码:创建一个新类并给她一个名为“DatabaseHelper”的名称,然后将整个JDBC-Code放在像“getAllImages()”这样的方法中,并为Image创建一个容器类(POJO)。第一学期这对你有帮助,但从长远来看你应该使用JPA和MVC。