我是html5& jsp的初学者, 我只想在从数据库更改后进行房间清单检索。 基本上当我点击我的主页页面上的空间列表时,我可以获得房间清单,但如果另一个用户腾出空间,我就无法实时获得房间清单。请帮帮我,谢谢
听到我的主页代码
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<%@ page import="java.sql.*"%>
<%@ page import="java.util.*" %>
<% request.setCharacterEncoding("euc-kr"); %>
<html>
<Head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>RoomListing</title>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.0a4.1/jquery.mobile-1.0a4.1.min.css" />
<script src="http://code.jquery.com/jquery-1.5.2.min.js"></script>
<script src="http://code.jquery.com/mobile/1.0a4.1/jquery.mobile-1.0a4.1.min.js"></script>
<script type="text/javascript">
function ReloadPage() {
location.reload();
alert("hihi");
};
$(document).ready(function() {
alert("hi");
setInterval("ReLoadPage()", 3000);
});
</script>
</Head>
<body>
<section id="page1" data-role="page">
<%
//String subject = request.getParameter("subject");
Connection conn = null;
Statement stmt = null;
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
conn = DriverManager.getConnection( "jdbc:mysql://localhost:8888/test",
"root", "1234" );
if(conn==null)
throw new Exception("데이터베이스에 연결할 수 없습니다.<br>");
stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from roominfo");
ArrayList<String> room_list = new ArrayList<String>();
while(rs.next()){
room_list.add(rs.getString("id")+":"+rs.getString("subject")+":"+rs.getString("content"));
}
int num = room_list.size();
request.setAttribute("num", num);
for(int i=0; i<num; i++){
String room_name = null;
String max = room_list.get(i);
out.print("<input type ='button' id = 'button1' value = "+max+">");
request.setAttribute("room_name"+i, room_list.get(i));
}
}catch(Exception e){
e.printStackTrace();
}finally{
try{
stmt.close();
}catch (Exception ignored){
}
try {
conn.close();
}catch(Exception ignored){}
}
//RequestDispatcher dispatcher = request.getRequestDispatcher("RoomListing1.jsp");
//dispatcher.forward(request, response);
%>
</section>
</body>
</html>
答案 0 :(得分:0)
基本上刷新或重新加载只会改变jsp相关的东西,如颜色,图像,样式等。 在scriptlet中编写的Java代码与刷新无关。因此,当点击房间列表时,所有正在发生的事情都是页面被刷新。如果你想动态获取数据,你需要创建一个servlet来管理java相关的活动,每次点击用户列表或刷新页面时都应该调用这些活动。你不能在JSP中编写完整的代码,这不是一个好方法。