项目的数据库有时候要从外部来检查是不是连接OK,常常从检查的客户端会每隔一段时间来发送请求,客户端那边发送请求的频率我们自己是不可以配置的,但是我们可以用代码来控制:
Connection conn = null; Session dbSession = null; PreparedStatement psts = null; ResultSet rs = null; //set the time gip to excute the code to connect to DB long distanceConfig = 3*60*1000; try { Date nowTime = new Date(); Date lastTime = (Date)application.getAttribute("lastTime"); if(lastTime == null){ lastTime = nowTime; } long distance = nowTime.getTime() - lastTime.getTime(); if(distance >= distanceConfig || distance == 0){ dbSession = com.hgc.bkrm.util.HibernateUtil.currentSession(); conn = dbSession.connection(); psts = conn.prepareStatement("select 1 from dual"); rs = psts.executeQuery(); application.setAttribute("lastTime", nowTime); out.println("95bookingportal_This aims EC"); out.println("--------------check the DB,excute the DB connection code,it is normal"); } else{ out.println("95bookingportal_This aims EC"); out.println("------------------do not excute the DB connetion code,you can try it 3 minute later!"); } } catch (Exception e) { out.println("ERROR:"+e.getMessage()); e.printStackTrace(); }
后面关闭的代码省略。其中
application.setAttribute("lastTime", nowTime);
是要用application来保存time,这样才是全局的保存方法。记录上次访问的时间。
另外,该例子中的
psts = conn.prepareStatement("select 1 from dual");
sql语句经常用来检查数据库的正确性。dual是oracle数据库中的一个虚拟表,当然你也可以写成select 2(或者其他都可以)from dual。就看你自己喜欢了,你写了什么就会返回什么。
相关推荐
**JSP内置对象:Application对象** 在Java Server Pages (JSP) 技术中,内置对象是预定义的对象,可以直接在JSP页面中使用,无需显式声明或实例化。这些对象提供了对服务器功能和环境的便捷访问。其中,`...
在JSP中,可以使用Application对象来保存所有用户的留言,以便所有用户可以查看这些留言。例如,在index.jsp文件中,可以使用以下代码来保存和检索所有用户的留言: ```jsp java.util.Vector v_book = (java.util....
【实验三 JSP内置对象使用】 实验的目的是让学生熟悉并理解JSP中的几个核心内置对象,包括request、response、session、application以及out对象。这些对象是JSP中用于处理HTTP请求、响应、会话管理和输出数据的关键...
熟练使用这些内置对象是开发JSP应用程序的基本要求,尤其是对于request、session和application对象更是必须要掌握的。 会使用对象所具有的方法,能熟练使用每一种对象的几种常用方法。希望对大家有用。。。
本项目“JSP+Application聊天室”提供了一个基于Java Server Pages (JSP) 技术和Application对象实现的实例,让我们深入探讨其中的技术要点。 **1. JSP(Java Server Pages)基础** JSP是Java的一种动态网页技术,...
- 与session不同,application对象的数据不会随着用户会话结束而消失,除非手动调用`application.removeAttribute()`或应用重启。 - 使用`application.setAttribute()`存储的数据可以在任何地方、任何时候被任何...
5. **application对象**:ServletContext对象在整个Web应用的生命周期内共享数据,适用于所有用户和会话。例如,`application.getAttribute("globalKey")`和`application.setAttribute("globalKey", globalValue)`。...
一、JSP内置对象练习 1、使用JSP中的session对象,实现用户登陆检验 (1)(1)web目录下的session-login目录中,新建login.jsp(允许用户输入用户名和密码), ...4、使用application对象的属性存储统计网站访问人数
【JSP_jsp_application实例】是一个关于Java Server Pages (JSP) 技术的应用实践案例。JSP是一种在服务器端运行的动态网页技术,它允许开发者使用HTML、XML或者其他标记语言来创建动态网页,同时结合Java代码实现...
JSP提供了九个内置对象,分别是out对象、request对象、response对象、session对象、application对象、pageContext对象、exception对象、config对象和page对象。这些内置对象是由容器实现和管理的,可以直接在JSP页面...
5. **使用`application`对象**:在JSP中,可以使用`<jsp:useBean>`标签创建一个`HttpSession`对象,然后通过`application.getAttribute()`和`application.setAttribute()`来读取和写入聊天记录。 6. **实时更新**:...
JSP内置对象有多种,包括request对象、response对象、session对象、application对象、out对象、config对象、pageContext对象、page对象等。 1. request对象 request对象是从客户端向服务器端发出请求,包括用户...
6.Application对象类:ServletContext Application对象代表整个Web应用,用于在整个应用范围内共享数据。设置和获取全局属性: ```java ServletContext application = request.getServletContext(); application....
### JSP内置对象之域对象和JSP指令详解 #### JSP内置对象之域对象 在JSP技术中,有几种内置对象被称为“域对象”,它们用于存储数据,并且具有不同的作用范围。这些域对象包括`pageContext`、`request`、`session`...
application对象是整个Web应用的代表,它允许在多个用户之间共享信息。可以利用application对象实现用户之间的交互,如计数器、聊天室等。 out对象是javax.servlet.jsp.JspWriter类的一个实例,用于向客户端发送...
在这个“jsp留言版-application”的项目中,开发者利用了JSP的内置对象`application`来实现了一个简单的在线留言功能。`application`对象在所有用户的会话之间共享数据,它在整个Web应用的生命周期内都存在,直到...
Application对象是JSP中用于存储应用程序信息的内置对象。Application对象提供了一些方法来存储和获取应用程序信息,例如: * setAttribute():设置应用程序属性 * getAttribute():获取应用程序属性 * ...
在JSP开发中,有一些内置的对象(也称为隐含对象或隐藏对象),这些对象无需显式声明即可直接使用。这些内置对象极大地简化了JSP页面的编写,并提供了丰富的功能支持。 #### 二、内置对象介绍 JSP内置对象是预定义...
application对象直接包装了servlet的ServletContext类的对象。这个对象在JSP页面的整个生命周期中都代表着这个JSP页面。 6. config对象(javax.servlet.ServletConfig) config对象用于获取servlet的配置信息。 7...