孙老师版本JDBC(2022年6月12日21:34:25)

举报
红目香薰 发表于 2022/06/26 20:10:00 2022/06/26
【摘要】 ​ 数据库自动关闭,方便多了。package com.item.dao;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;public class JDBCUtil implements AutoCloseable { ...

 数据库自动关闭,方便多了。

package com.item.dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;

public class JDBCUtil implements AutoCloseable {
	private static String driver="com.mysql.jdbc.Driver";
	private static String url="jdbc:mysql://127.0.0.1:3306/mytest?characterEncoding=utf-8";
	// 连接对象
	private static Connection conn;
	// 结果集
	private static ResultSet rs;
	// 代码块
	static{
		try {
			Class.forName(driver);
			conn = DriverManager.getConnection(url, "root", "12345678");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	/**
	 * 全SQL查询
	 * @param sql
	 * @return
	 * @throws SQLException
	 */
	public static ResultSet query(String sql) throws SQLException {
		return conn.createStatement().executeQuery(sql);
	}
	/**
	 * @param sql
	 * @return
	 * @throws SQLException
	 */
	public static int update(String sql) throws SQLException {
		return conn.prepareStatement(sql).executeUpdate();
	}
	@Override
	public void close() throws Exception {
		if (null != rs) {
			rs.close();
		}
		if (null != conn) {
			conn.close();
		}
	}
}

数据测试:

	public static void main(String[] args) throws SQLException {
		ResultSet re = query("select * from users");
		while (re.next()) {
			System.out.println(re.getObject(1));
			System.out.println(re.getObject(2));
			System.out.println(re.getObject(3));
			System.out.println(re.getObject(4));
			System.out.println(re.getObject(5));
		}
	}

编辑

swing

	/**
	 * 转换为Vectors集合
	 * 
	 * @param userList
	 * @return
	 */
	public static Vector<Vector<String>> listToVectors(List<UserVo> userList) {
		Vector<Vector<String>> datas = new Vector<Vector<String>>();
		for (int i = 0; i < userList.size(); i++) {
			UserVo u = userList.get(i);
			if (null == u)
				continue;
			Vector<String> item = new Vector<String>();
			item.add(u.getId().toString());
			item.add(u.getAccount());
			item.add(u.getSex() == 1 ? "男" : "女");
			item.add(u.getEducation());
			item.add(u.getPhone());
			item.add(u.getEmail());
			
			item.add(u.getRegisterDate());
			if (null == u.getUpdateDate()) {
				item.add("");
			}else {
				item.add(u.getUpdateDate());
			}
			datas.add(item);
		}
		return datas;
	}

三行实现JTable数据更新。

datas.clear();
datas.addAll(ListDbUtils.listToVectors(userService.list()));
jTable.updateUI();



JTable jTable = new JTable(datas, heads);

这个方便快捷一些,但是javaEE的还没有测试。后面我搞个完整的就都知道了。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。