?
Solved

How can I change this code to display to JOptionPane instead of println?

Posted on 2008-10-25
6
Medium Priority
?
312 Views
Last Modified: 2012-05-05
I need to display this code in JOptionPane.
con = DriverManager.getConnection(url,
"myLogin", "myPassword");
stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(query);
ResultSetMetaData rsmd = rs.getMetaData();
int numberOfColumns = rsmd.getColumnCount();
int rowCount = 1;
while (rs.next()) {
System.out.println("Row " + rowCount + ": ");
for (int i = 1; i <= numberOfColumns; i++) {
System.out.print(" Column " + i + ": ");
System.out.println(rs.getString(i));
}
System.out.println("");
rowCount++;
}

Open in new window

0
Comment
Question by:glynco
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 2
6 Comments
 

Author Comment

by:glynco
ID: 22805811
Here is with JOptionPane but how can I display all at once?

int rowCount = 1;
String columncontent;
while (uprsInventory.next()) {
System.out.println("Row " + rowCount + ": ");
for (int i = 1; i <= InventorynumberOfColumns; i++) {
    
                JOptionPane.showMessageDialog(null,
                "Column " +i);
                
                columncontent = uprsInventory.getString(i);
                
                JOptionPane.showMessageDialog(null,
                "column content " + columncontent );
                
                }
rowCount++;
 
}

Open in new window

0
 

Author Comment

by:glynco
ID: 22805821
Something like this. But I got errors.
Illegal start of expression.
int rowCount = 1;
String columncontent;
while (uprsInventory.next()) {
System.out.println("Row " + rowCount + ": ");
                
                JOptionPane.showMessageDialog(null,
                        for (int i = 1; i <= InventorynumberOfColumns; i++) {
                        columncontent = uprsInventory.getString(i);
                        "i " + i + "\n "
                        +"column content " + columncontent);                      
                        }
rowCount++;
 
}

Open in new window

0
 
LVL 60

Accepted Solution

by:
Kevin Cross earned 2000 total points
ID: 22805884
You can't look within the message dialog like that.

You can show the output in a different component like a JTable or JComboBox, but if you want to use showMessageDialog you must use the for loop to build a string -- you can use the \n (or \n\r) to make multiple lines like you are trying to do above.

After you have your string variable, you can call:

JOptionPane.showMessageDialog(null, strData);
0
Get real performance insights from real users

Key features:
- Total Pages Views and Load times
- Top Pages Viewed and Load Times
- Real Time Site Page Build Performance
- Users’ Browser and Platform Performance
- Geographic User Breakdown
- And more

 

Author Comment

by:glynco
ID: 22805900
You mean I will concatenate all the strings?
0
 

Author Comment

by:glynco
ID: 22805926
It works.
But the page generated so big it won't fit the screen.


    int InventorynumberOfColumns = uprsInventoryMetaData.getColumnCount();
 
    String newstring1, newstring2;
newstring2 = "";
while (uprsInventory.next ()) {
for (int i=1; i<=InventorynumberOfColumns; i++) {
String columnName = uprsInventoryMetaData.getColumnLabel(i);
//System.out.print(columnName + ": ");
String columnValue = uprsInventory.getString(i);
//System.out.println(columnValue);
newstring1 = columnName + " " + columnValue;
newstring2 = newstring2 + newstring1 + "\n";
//System.out.println("String1:" + newstring1);
 
}
JOptionPane.showMessageDialog(null, newstring2);
//System.out.println("String2:" + newstring2);
//System.out.println("");
//System.out.println("");
}
 
 
stmtInventory.close();
conn.close();
}

Open in new window

0
 
LVL 60

Expert Comment

by:Kevin Cross
ID: 22805947
I more of a business objects/server-side programmer; therefore, there may be better GUI solutions than my suggestion, but you can try a JTable instead.

http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/JTable.html

Hope that helps.
0

Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Java contains several comparison operators (e.g., <, <=, >, >=, ==, !=) that allow you to compare primitive values. However, these operators cannot be used to compare the contents of objects. Interface Comparable is used to allow objects of a cl…
Java Flight Recorder and Java Mission Control together create a complete tool chain to continuously collect low level and detailed runtime information enabling after-the-fact incident analysis. Java Flight Recorder is a profiling and event collectio…
Viewers learn about the “for” loop and how it works in Java. By comparing it to the while loop learned before, viewers can make the transition easily. You will learn about the formatting of the for loop as we write a program that prints even numbers…
This tutorial will introduce the viewer to VisualVM for the Java platform application. This video explains an example program and covers the Overview, Monitor, and Heap Dump tabs.
Suggested Courses
Course of the Month12 days, 13 hours left to enroll

777 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question