📄 userlist.java
字号:
package library.user;
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Dimension;
import java.util.List;
import java.util.Vector;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import library.hibernate.UserTable;
import library.main.HibernateUtil;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
/**
* 列出数据库中注册的所有用户信息
*
* @author lianhw
*
*/
public class UserList extends JFrame {
Container container;
JTable table = null;
DefaultTableModel defaultModel = null;
public UserList() {
super("用户列表一览!");
container = getContentPane();
container.setLayout(new BorderLayout());
// 表的两个列名
String[] name = { "用户名", "权限" };
String[][] data = new String[0][0];
// 表对应的model
defaultModel = new DefaultTableModel(data, name);
// 新建表格
table = new JTable(defaultModel);
table.setPreferredScrollableViewportSize(new Dimension(400, 80));
JScrollPane scrollPane = new JScrollPane(table);
container.add(scrollPane);
// 取得SessionFactory
SessionFactory sessionFactory = HibernateUtil.getSessionFactory();
// 打开session
Session session = sessionFactory.openSession();
// 创建一个事务
Transaction tx = session.beginTransaction();
// hsql执行语句
String hql = "from UserTable";
// 执行查询
Query userList = session.createQuery(hql);
// 将查询结果放置到一个list链表中
List list = userList.list();
// 将链表中的数据加入到列表中
for (int index = 0; index < list.size(); index++) {
Vector insertRow = new Vector();
insertRow.addElement(((UserTable) list.get(index)).getUserName());
insertRow.addElement(((UserTable) list.get(index)).getPower());
defaultModel.addRow(insertRow);
}
table.revalidate();
// 事务提交
tx.commit();
// 关闭session
session.close();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -