JList和数据库问题 那个为高手帮忙写一个JList读取数据库的一个字段把里面的内容它在JList循环显示出来。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个很简单啊,只要得到结果集合,add近JList控件就可以啦 while(rs.next()){ list.add(rs.getString(1));} 问下,jlist跟list有什么区别啊? 主要就是这个,前边在加上连接数据库的代码,查api看jlist while(rs.next()){ System.out.println(rs.getString(1));} JList rsList = new JList(rs);for(int i = 0; i < rsList.getModel().getSize(); i++) { System.out.println(rsList.getModel().getElementAt(i));} JList rsList = new JList(rs); //rs 结果集for(int i = 0; i < rsList.getModel().getSize(); i++) { System.out.println(rsList.getModel().getElementAt(i)); } JList rsList = new JList(rs); for(int i = 0; i < rsList.getModel().getSize(); i++) { System.out.println(rsList.getModel().getElementAt(i)); } 是从数据库里面读取内容放到JList中但是在 LIST.add(rs.getString(2));的时候有问题 谁有空帮忙写一个比较完整的出来! 数据库名 data 字段名 姓名 varchar(50); 把字段姓名全部显示在JLIST里面? 现写一个:import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.util.ArrayList;import java.util.List;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JList;import javax.swing.JScrollPane;public class JListShow extends JFrame { private JList list; private String Driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver"; private String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=testing"; private String user = "sa"; private String password = "sa"; private Connection con = null; private PreparedStatement pstmt = null; private ResultSet rs = null; /** * Launch the application * @param args */ public static void main(String args[]) { try { JListShow frame = new JListShow(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } /** * Create the frame */ public JListShow() { super(); getContentPane().setLayout(null); setBounds(100, 100, 500, 375); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); list = new JList(getResult().toArray()); list.setBounds(0, 0, 100, 20); getContentPane().add(list); // JList 不支持直接滚动,要创建滚动列表,需要让 JList 作为 JScrollPane 的视口视图 final JScrollPane scrollPane = new JScrollPane(); scrollPane.setBounds(0, 67, 264, 100); getContentPane().add(scrollPane); scrollPane.setViewportView(list); final JLabel label = new JLabel(); label.setText("JList Show:"); label.setBounds(-1, 32, 265, 34); getContentPane().add(label); } public List<String> getResult() { List<String> nameList = new ArrayList<String>(); try { Class.forName(Driver);// 加载数据库驱动 con = DriverManager.getConnection(url, user, password);// 连接数据库 String sql = "select * from test"; // test为表的名字 pstmt = con .prepareStatement(sql, ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY); rs = pstmt.executeQuery(); while (rs.next()) { String name = rs.getString(1); nameList.add(name); } } catch (Exception ex) { ex.printStackTrace(); } return nameList; }} package com.topking.demo.ui;import java.awt.BorderLayout;import java.awt.Container;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connection;import java.sql.ResultSet;import java.sql.SQLException;import javax.swing.DefaultListModel;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JList;import javax.swing.JPanel;import javax.swing.JScrollPane;import com.topking.demo.connection.ConnectionUtil;public class JListDemo extends JFrame implements ActionListener{ /** * @param args */ private JButton bt_read = null; private JButton bt_clear = null; private JList list_result = null; private JScrollPane scroll = null; public JListDemo(){ super("JList Demo"); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); initComponent(); this.setExtendedState(JFrame.MAXIMIZED_BOTH);//设置初始化为窗口最大化 } public void initComponent(){ bt_read = new JButton("Read");//从数据库中读数据 bt_clear = new JButton("Clear");//清除JList中的元素 bt_read.addActionListener(this); bt_clear.addActionListener(this); list_result = new JList(); list_result.setModel(new DefaultListModel());//设置JList的model scroll = new JScrollPane(); scroll.add(list_result); scroll.setViewportView(list_result);//添加滚动条 Container c = this.getContentPane(); c.setLayout(new BorderLayout()); c.add(scroll,BorderLayout.CENTER); JPanel panel_button = new JPanel(); panel_button.add(bt_read); panel_button.add(bt_clear); c.add(panel_button,BorderLayout.SOUTH); } @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub if(e.getSource()==bt_read){ Connection conn = ConnectionUtil.getConnection(); String sql = "select * from tb_user"; DefaultListModel model = (DefaultListModel) list_result.getModel(); try { ResultSet rs = conn.createStatement().executeQuery(sql); while(rs.next()){ model.addElement(rs.getString(1)); } rs.close(); conn.close(); conn = null; list_result.updateUI(); repaint(); } catch (SQLException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } if(e.getSource()==bt_clear){ DefaultListModel model = (DefaultListModel) list_result.getModel(); int count = model.getSize(); for(int i = 0;i<count;i++){ model.remove(0); } } } public static void main(String[] args) { // TODO Auto-generated method stub new JListDemo().setVisible(true); }}---------------------------- 数据库连接类 -------------------------------------package com.topking.demo.connection;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;public class ConnectionUtil { private static final String DB_DRIVER = "com.mysql.jdbc.Driver"; private static final String DB_URL = "jdbc:mysql://localhost/mydb"; private static final String DB_USER = "root"; private static final String DB_PASS = "root"; private static Connection conn = null; public static Connection getConnection(){ try { if(conn == null||conn.isClosed()){ Class.forName(DB_DRIVER); conn = DriverManager.getConnection(DB_URL,DB_USER,DB_PASS); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } return conn; }} ArrayList问题 JCheckBox去掉方框 java字符串处理 用java在sqlserver中创建一张表出现奇怪的问题 急!!关于Java写的PL0编译器两个问题 请问如何在多个子站点中实现如163的通行证功能。 关于hashmap的用法问题 帮帮我! 看我的项目原型! javac 命令可以用,但是java命令报错 DXF 如何用JAVA去写 这个类里面哪些都算是数据结构呢 朋友们进来帮我拿拿主意
list.add(rs.getString(1));
}
System.out.println(rs.getString(1));
}
for(int i = 0; i < rsList.getModel().getSize(); i++) {
System.out.println(rsList.getModel().getElementAt(i));
}
for(int i = 0; i < rsList.getModel().getSize(); i++) {
System.out.println(rsList.getModel().getElementAt(i));
}
for(int i = 0; i < rsList.getModel().getSize(); i++) {
System.out.println(rsList.getModel().getElementAt(i));
}
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JScrollPane;public class JListShow extends JFrame { private JList list;
private String Driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
private String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=testing";
private String user = "sa";
private String password = "sa";
private Connection con = null;
private PreparedStatement pstmt = null;
private ResultSet rs = null; /**
* Launch the application
* @param args
*/
public static void main(String args[]) {
try {
JListShow frame = new JListShow();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
} /**
* Create the frame
*/
public JListShow() {
super();
getContentPane().setLayout(null);
setBounds(100, 100, 500, 375);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); list = new JList(getResult().toArray());
list.setBounds(0, 0, 100, 20);
getContentPane().add(list);
// JList 不支持直接滚动,要创建滚动列表,需要让 JList 作为 JScrollPane 的视口视图
final JScrollPane scrollPane = new JScrollPane();
scrollPane.setBounds(0, 67, 264, 100);
getContentPane().add(scrollPane);
scrollPane.setViewportView(list); final JLabel label = new JLabel();
label.setText("JList Show:");
label.setBounds(-1, 32, 265, 34);
getContentPane().add(label);
}
public List<String> getResult() {
List<String> nameList = new ArrayList<String>();
try {
Class.forName(Driver);// 加载数据库驱动
con = DriverManager.getConnection(url, user, password);// 连接数据库
String sql = "select * from test"; // test为表的名字
pstmt = con
.prepareStatement(sql, ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
rs = pstmt.executeQuery();
while (rs.next()) {
String name = rs.getString(1);
nameList.add(name);
}
} catch (Exception ex) {
ex.printStackTrace();
}
return nameList;
}
}
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;import javax.swing.DefaultListModel;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JScrollPane;import com.topking.demo.connection.ConnectionUtil;public class JListDemo extends JFrame implements ActionListener{ /**
* @param args
*/
private JButton bt_read = null;
private JButton bt_clear = null;
private JList list_result = null;
private JScrollPane scroll = null;
public JListDemo(){
super("JList Demo");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
initComponent();
this.setExtendedState(JFrame.MAXIMIZED_BOTH);//设置初始化为窗口最大化
}
public void initComponent(){
bt_read = new JButton("Read");//从数据库中读数据
bt_clear = new JButton("Clear");//清除JList中的元素
bt_read.addActionListener(this);
bt_clear.addActionListener(this);
list_result = new JList();
list_result.setModel(new DefaultListModel());//设置JList的model
scroll = new JScrollPane();
scroll.add(list_result);
scroll.setViewportView(list_result);//添加滚动条
Container c = this.getContentPane();
c.setLayout(new BorderLayout());
c.add(scroll,BorderLayout.CENTER);
JPanel panel_button = new JPanel();
panel_button.add(bt_read);
panel_button.add(bt_clear);
c.add(panel_button,BorderLayout.SOUTH);
}
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(e.getSource()==bt_read){
Connection conn = ConnectionUtil.getConnection();
String sql = "select * from tb_user";
DefaultListModel model = (DefaultListModel) list_result.getModel();
try {
ResultSet rs = conn.createStatement().executeQuery(sql);
while(rs.next()){
model.addElement(rs.getString(1));
}
rs.close();
conn.close();
conn = null;
list_result.updateUI();
repaint();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
if(e.getSource()==bt_clear){
DefaultListModel model = (DefaultListModel) list_result.getModel();
int count = model.getSize();
for(int i = 0;i<count;i++){
model.remove(0);
}
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
new JListDemo().setVisible(true);
}}
---------------------------- 数据库连接类 -------------------------------------
package com.topking.demo.connection;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;public class ConnectionUtil { private static final String DB_DRIVER = "com.mysql.jdbc.Driver";
private static final String DB_URL = "jdbc:mysql://localhost/mydb";
private static final String DB_USER = "root";
private static final String DB_PASS = "root";
private static Connection conn = null;
public static Connection getConnection(){
try {
if(conn == null||conn.isClosed()){
Class.forName(DB_DRIVER);
conn = DriverManager.getConnection(DB_URL,DB_USER,DB_PASS);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return conn;
}
}