我现在没有任何代码,但我正在考虑如何编写希望从MySQL中的同一行多次检索各种数据的代码。我想知道是否有一行代码允许我(在Java中)设置一个等于检索结果的对象,如...
ResultSet rs = ps.executeQuery();
tempObject = rs;
然后我可以使用getter方法返回该对象的各种属性。我当然会关闭结果集和准备好的声明。我只想要一些暂时保留其价值的东西作为某种信息存储。
答案 0 :(得分:0)
您可以使用设计模式构建器,并通过应用getString
或getInt
...来填充模型属性,从resultSet构建对象(您的模型)
答案 1 :(得分:0)
根据我的理解,你有两个选择
首先是,使用Hibernate
public User getUserDetails(String userName,String passWord)
{
SessionFactory sf=HibernateUtil.getSessionFactory();
Session session=sf.openSession();
session.beginTransaction();
User user=null;
try{
user=(User)session.createQuery("from User where userName='"+userName+"' and passWord='"+passWord+"'").list().get(0);
}catch(Exception e)
{
return null;
}
session.close();
return user;
}
注意:需要-Hibernate配置,并且对于小型项目可能过度。
其次是,
public Debit getAllDebits()
{
try{
PreparedStatement ps=connection.prepareStatement(" select * from table_debit");
ResultSet rs=ps.executeQuery();
Debit debit=null;
while(rs.next())
{
debit=new Debit();
debit.setId(rs.getInt("id"));
debit.setAmount(rs.getDouble("amount"));
//bla
//bla
}
}catch(Exception e)
{
System.out.println("error in getAllDebits---------"+e);
}
return debit;
}
注意: - 创建JDBC连接和Bean类