将Java对象与MySql表连接

时间:2011-02-14 13:21:53

标签: java mysql jdbc

我正在使用Java Classes,我正在寻找将MySQL中的数据库表与成员(属性)连接到Java代码的最简单方法。 执行“SELECT”查询后,我得到一个resultSet,但是我不清楚如何将结果Object一般地转换为Java对象。

例如:我有2个Java类 - 学生&老师,我想用命令:

Student student = (Student) rs.getObject();

谢谢, ROI

4 个答案:

答案 0 :(得分:2)

我建议使用JPAeclipselink实现,而不是使用普通JDBC执行查询,并尝试手动将结果集中的结果映射到对象(容易出错)。 JPA会为你做到这一点!

答案 1 :(得分:1)

这不起作用。你应该做点什么:

Student st = new Student();
st.setName(rs.getString("NAME"));
st.setAverage(rs.getInt("SCORE"));

其中NAME和SCORE是列名。 doc也可以为您提供帮助。

答案 2 :(得分:1)

您可以查看ORM 解决方案,例如Hibernate

答案 3 :(得分:1)

如果你的问题是关于rs.getObject 调用rs.getObject是一种调用rs.getInt,rs.getString的通用方法,因为所有这些方法的返回值最终都是Objects(Int,String等...)。
它将返回您要求的列(通过select或by column name中的订单号)。不是整行对应的行 如果在编译时不知道返回列的类型,则使用rs.getObject。

JDBC ResultSet对象没有一个魔术getObject方法,该方法将返回与select语句对应的bean。

你可以结合

开发自己的'穷人的ORM'
  1. JBBC ResultSetMetaData
  2. Java Reflexion
  3. 但这比使用现有的工作更难。