We are working on a bookstore project. Looking at the code below, I need to add up all the DB values in the price column and then output the value to the jtextfield. How should I write the code...?
Thank you for your feedback.
public void jTableMain() {
MyQuery1 mq1 = new MyQuery1();
ArrayList<Carrier1> list = mq1.BookTable1();
String[] columnName = {"책 코드", "책 이름", "로 고", "가 격"};
Object[][] rows = new Object[list.size()][4];
int sum = 0;
for(int i = 0; i < list.size(); i++) {
rows[i][0] = list.get(i).getBook_code();
rows[i][1] = list.get(i).getBook_name();
if(list.get(i).getBookImage() != null) {
ImageIcon image = new ImageIcon(new ImageIcon(list.get(i).getBookImage()).getImage().getScaledInstance(100, 90, Image.SCALE_SMOOTH));
rows[i][2] = image;
}
else{
rows[i][2] = null;
}
rows[i][3] = list.get(i).getPrice();
}
TheModel model = new TheModel (rows, columnName);
jTableMain.setModel(model); // 데이터 불러오기
jTableMain.setRowHeight(90); // JTable 높이 지정
jTableMain.getColumnModel().getColumn(2).setPreferredWidth(100);
// jTableSubMain에 데이터 불러오기
jTableSubMain.setModel(model);
You could try this: You don't have a JTextField
in your code fragment, but you would convert the sum to a String
and set the text of the JTextField
.
public void jTableMain() {
MyQuery1 mq1 = new MyQuery1();
ArrayList<Carrier1> list = mq1.BookTable1();
String[] columnName = {"책 코드", "책 이름", "로 고", "가 격"};
Object[][] rows = new Object[list.size()][4];
int sum = 0;
for(int i = 0; i < list.size(); i++) {
// Make these changes
Carrier1 carrier = list.get(i);
rows[i][0] = carrier.getBook_code();
rows[i][1] = carrier.getBook_name();
if(carrier.getBookImage() != null) {
ImageIcon image = new ImageIcon(new ImageIcon(carrier.getBookImage()).getImage().getScaledInstance(100, 90, Image.SCALE_SMOOTH));
rows[i][2] = image;
} else {
rows[i][2] = null;
}
// Make these changes
int price = carrier.getPrice();
sum += price;
rows[i][3] = price;
}
TheModel model = new TheModel (rows, columnName);
jTableMain.setModel(model); // 데이터 불러오기
jTableMain.setRowHeight(90); // JTable 높이 지정
jTableMain.getColumnModel().getColumn(2).setPreferredWidth(100);
// jTableSubMain에 데이터 불러오기
jTableSubMain.setModel(model);