저기 제가 일단 자바의 테이블에 db의 내용을 띄우는 것까지는 했는데.. 테이블에 띄운 값중에 하나를 클릭했을때 그 값을 textfield에 뿌려주는 것까지는 했는데 그 중에 저장되어 있는 경로의 이미지를 띄우고 싶은데.. 그게 안되네요.. 뭐가 안되는건지 좀 알려주세여...ㅠㅠㅠ 빨간색 부분이 이미지 그 부분입니다..ㅠㅠ
 
=======================================  소스   =============================================
 
 
import java.awt.*;
import java.awt.event.*;
//import java.io.*;
import java.util.*;
import javax.swing.*;
import javax.swing.border.*;
//import javax.swing.event.*;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableColumnModel;
import javax.swing.table.TableModel;
import java.sql.*;
 
public class server extends JPanel implements ActionListener, MouseListener
{
 private static final long serialVersionUID = 1L;
 
 private String dsn = "jdbc:odbc:serverdata";
 private Connection conn;
 private Statement stat;
 private String scarnum;
 private String sdate;
 private String slat;
 private String slog;
 private String image;
 private String path=null;
 private String pathsave = null;
 private JTextField[] field = new JTextField[6];
 private JPanel datapane;
 private JPanel PicturePanel = null;
 private JPanel total;
 private JPanel data;
 private JPanel date;
 private JPanel carnum;
 private JPanel lat;
 private JPanel log;
 private JPanel buname;
 private JPanel load;
 private JButton btok;
 private JButton bttotal;
 private Image img;
 private ImageIcon p;
 private JLabel PictureText;
 
 String colNames[] = {"번호","차량번호","날짜","위도","경도","사진경로",};
 DefaultTableModel model;
 JTable table;
 
 public server(String str)
    {
     super();
  init();
  this.start();
 }
 
 public void init()
 {
  
  setLayout(new BorderLayout());
  setBorder(new EtchedBorder());
  
  model = new DefaultTableModel(colNames, 0)
  {
   public boolean isCellEditable(int row, int col)
   {
          // 모든 셀을 편집할 수 없도록 한다.
          return false;
      }   
  };
  table = new JTable(model);
  DefaultTableCellRenderer asd = new DefaultTableCellRenderer();
  DefaultTableCellRenderer asd1 = new DefaultTableCellRenderer();
  asd.setHorizontalAlignment(SwingConstants.RIGHT);
  asd1.setHorizontalAlignment(SwingConstants.CENTER);
  
  
  TableColumnModel sdf = table.getColumnModel();
  
  for(int i = 0 ; i < sdf.getColumnCount() ; i++)
  {
   sdf.getColumn(i).setCellRenderer(asd1); //금액을 뺀 나머지의 값들은 가운데 정렬
  }
  
  table.addMouseListener(this);
  table.setShowHorizontalLines(false); //수평 선 없애기
  table.setRowMargin(0);
  JScrollPane sc = new JScrollPane(table);
  //DB에 저장되어 있는 값들이 나타나는 패널
  datapane = new JPanel();
  sc.setPreferredSize(new Dimension(670,620)); //table의 크기 조절
  
  datapane.add(sc);
  datapane.setBorder(new TitledBorder(new SoftBevelBorder(SoftBevelBorder.RAISED)," 저장 데이터 "));
  
  total = new JPanel();
  
  
  //사진과 정보가 들어가는 패널
  total.setPreferredSize(new Dimension(480,100));
  total.setBorder(new TitledBorder(new SoftBevelBorder(SoftBevelBorder.RAISED)," 정        보 "));
  total.setLayout(new GridLayout(2,1));
  
  
  //사진이 나타나는 패널
  PicturePanel = new JPanel();
  PicturePanel.setBorder(new TitledBorder(new SoftBevelBorder(SoftBevelBorder.RAISED)," 사     진 "));
  
  
  
  //정보들이 나타나는 패널
  data = new JPanel();
  data.setBorder(new TitledBorder(new SoftBevelBorder(SoftBevelBorder.RAISED)," 정     보 "));
  
  data.setLayout(new GridLayout(6,1));
  
  date = new JPanel();
  date.setFont(new Font("맑은고딕",Font.BOLD, 20));
  field[0] = new JTextField(30);
  field[0].setEditable(false);
  date.add(new JLabel("날        짜 :   "));
  date.add(field[0]);
  
  carnum = new JPanel();
  carnum.setFont(new Font("맑은고딕",Font.BOLD, 20));
  field[1] = new JTextField(30);
  field[1].setEditable(false);
  carnum.add(new JLabel("차  번  호 :   "));
  carnum.add(field[1]);
  
  
  
  lat = new JPanel();
  lat.setFont(new Font("맑은고딕",Font.BOLD, 20));
  field[2] = new JTextField(30);
  field[2].setEditable(false);
  lat.add(new JLabel("위        도 :   "));
  lat.add(field[2]);
  
  log = new JPanel();
  log.setFont(new Font("맑은고딕",Font.BOLD, 20));
  field[3] = new JTextField(30);
  field[3].setEditable(false);
  log.add(new JLabel("경        도 :   "));
  log.add(field[3]);
  
  
  load= new JPanel();
  load.setFont(new Font("맑은고딕",Font.BOLD, 20));
  field[5] = new JTextField(30);
  field[5].setEditable(false);
  load.add(new JLabel("경        로 :   "));
  load.add(field[5]);
  
  path = field[5].getText();
  
  System.out.println(">>>"+path);
  
  //사진 로드
  p = new ImageIcon(path);
  PictureText = new JLabel("",p,JLabel.CENTER);
  PicturePanel.add(PictureText);
  
  image = field[5].getText();
  System.out.println(image);
  
  buname = new JPanel();
  buname.setFont(new Font("맑은고딕",Font.BOLD, 20));
  btok = new JButton("검       색");
  bttotal = new JButton("전  체  검  색");
  field[4] = new JTextField(8);
  buname.add(new JLabel("                                   "));
  buname.add(field[4]);
  buname.add(btok);
  buname.add(bttotal);
  
  
  
  data.add(date);
  data.add(carnum);
  data.add(lat);
  data.add(log);
  data.add(load);
  data.add(buname);
  
  
  total.add(PicturePanel);
  total.add(data);
  
  
  add(datapane,BorderLayout.EAST);
  add(total,BorderLayout.WEST);
  
  showList();
  
 }
 
 public void clearRows(){
  int rowCount = model.getRowCount(); //table의 열의 갯수를 가져온다.
  
  if (rowCount != 0)
  {
   for (int i=1; i<=rowCount; i++ )
   {
    model.removeRow(0); //table의 시작위치가 처음으로 바뀐다.
   }
  }
 }
 
 public void showList(){ //데이터베이스에 저장된 값중에서 현화의 지출과 맞는 것만 table에 출력
  clearRows();
  String sql = "select * from serverdata"; //DB의 모든 값을 화면에 보여주는 부분
  DB_connect(sql,0);      
  
 }
 
 public void selectUser()
 { 
  clearRows();
  String num = (String)field[4].getText();
  System.out.println(num);
  
  String sql = "select * from serverdata WHERE 차량번호 LIKE '%"+num+"%'"; 
  DB_connect(sql,0);
 }
 
 
 public Statement DB_connect(String sql, int dbset){
  try
  {
   // JDBC-ODBC 브릿지 드라이버를 로드한다
   Class.forName("sun.jdbc.odbc.serverdata"); //에러가 없을 경우 이 문구를 출력
  }
  catch (java.lang.ClassNotFoundException e)
  {
   System.err.println(e.getMessage()); //에러가 발생할 경우 그 발생한 에러에 관한 문구 출력
  }
  try
  {
   // 데이터 베이스를 한글에 저장하기 위해서 인코딩을 지정한다
   Properties prop = new Properties();
   prop.put("charSet", "KSC5601");
   // 드라이버에 DSN과 프로퍼티를 지정한다
   conn = DriverManager.getConnection(dsn, prop);
 
   // 데이터 베이스에 접근하기 위해, statement를 생성한다
   stat = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
     ResultSet.CONCUR_READ_ONLY);
   
   if(dbset == 0)
   {
    
    ResultSet RS = stat.executeQuery(sql);
       
    while (RS.next())
    {
     Object [] insertData = {RS.getInt(1),RS.getString(2),
       RS.getString(3), RS.getString(4), RS.getString(5),
       RS.getString(6)};
     model.addRow(insertData);
    } 
    RS.first();
   }
   else{
    
    stat.executeUpdate(sql);
   }
   
   stat.close();
   conn.close();
  }
  catch (SQLException e)
  {
   System.out.println(e.toString());
  }
   return stat;
 }
 
 
public void start(){
  
  MouseAdapter click = new MouseAdapter(){
   public void mouseClicked(MouseEvent e){
    if(e.getSource()== btok)  selectUser();
    else if(e.getSource()== bttotal)  showList();
    else System.exit(0);
   }};
  btok.addMouseListener(click);
  bttotal.addMouseListener(click);
 }
 
public void actionPerformed(ActionEvent we) {}
public void mouseClicked(MouseEvent e) {
  // TODO Auto-generated method stub
  
 Object obj = e.getSource();
 if(obj == table)
 {
  int row = 0;
   
  row = table.getSelectedRow();
   
  TableModel model = table.getModel();
   
  scarnum = ""+ model.getValueAt(row, 1);
  sdate = ""+ model.getValueAt(row, 2);
  slat = ""+ model.getValueAt(row, 3);
  slog = ""+ model.getValueAt(row, 4);
  pathsave = ""+ model.getValueAt(row, 5);
   
  field[0].setText(scarnum);
  field[1].setText(sdate);
  field[2].setText(slat);
  field[3].setText(slog);
  field[5].setText(pathsave);
  
 }
  
}
 
 
 public void mousePressed(MouseEvent e) {}
 public void mouseReleased(MouseEvent e) {}
 public void mouseEntered(MouseEvent e) {}
 public void mouseExited(MouseEvent e) {}
}