【发布时间】:2016-01-04 19:37:15
【问题描述】:
我正在创建一个 Web 应用程序,该应用程序使用 Java MVC 数据库中的数据显示一个表。
我有一个准备好的语句,用于生成可以正常工作的表,直到我尝试使用 ORDER BY。
我很困惑,因为当我在 mySQL 工作台中运行此查询时它工作正常:
SELECT * FROM appointments ORDER BY date
但是,当我将它放入浏览器中的准备好的语句中时,它会返回一个无序列表。
public void doRead(){
String query = "SELECT * FROM appointments ORDER BY date";
try {
PreparedStatement ps = this.connection.prepareStatement(query);
this.results = ps.executeQuery();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
不胜感激。
根据要求,我在此处使用此方法打印表格:
try {
while(this.results.next()){
Appointment appointment = new Appointment();
appointment.setAppointmentID(this.results.getInt("appointment_id"));
appointment.setDescription(this.results.getString("description"));
appointment.setDate(this.results.getString("date"));
table += "<tr>";
table += "<td>";
table += appointment.getDescription();
table += "</td>";
table += "<td>";
table += appointment.getDate();
table += "</td>";
table += "</tr>";
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
table += "</table>";
return table;
}
浏览器中的输出:
牙医 2015-09-17
牙医 2015-09-17
牙医 2015-09-17
牙医 2015-10-09
牙医 2015-09-03
牙医 2015-09-03
牙医 2015-09-03
【问题讨论】:
-
向我们展示您是如何打印它们的
-
你以后不能从java中排序吗?
-
您是否将结果存储到不保留顺序的东西中,例如 HashSet?
-
当它不起作用时会发生什么?顺序错了还是异常?
-
已编辑答案@sᴜʀᴇsʜᴀᴛᴛᴀ
标签: java mysql spring-mvc