首先复写一个Session的监听器,对新创建的session进行监听。
ApplicationListener.java
package dsh.bikegis.listener;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
import dsh.bikegis.dao.AccessPeopleDao;
import dsh.bikegis.tool.SpringBeanFactory;
/**
* 統計網站訪問人數
*
* @author NanGuoCan
*
*/
public class ApplicationListener implements HttpSessionListener {
/**
* 把歷史訪問人數讀取出來,並且把已經加1的訪問人數存入數據庫中
*/
public void sessionCreated(HttpSessionEvent se) {
AccessPeopleDao apd = (AccessPeopleDao) SpringBeanFactory
.getBean("apd");
int count;
count = Integer.parseInt(apd.getNum());// 從數據庫中讀取歷史訪問人數
++count;// 訪問人數加1
apd.updateNum(Integer.toString(count));// 寫入到數據庫
se.getSession().setAttribute("count", count);
}
/**
* Session Destroyed
*/
public void sessionDestroyed(HttpSessionEvent se) {
}
}
配置web.xml文件(此文件要配置在Spring监听器文件之后,否则可能造成空指针异常)
<listener>
<listener-class>
dsh.bikegis.listener.ApplicationListener
</listener-class>
</listener>
一个工具类,用来获得Spring注入的bean
SpringBeanFactory .java
package dsh.bikegis.tool;
import org.apache.struts2.ServletActionContext;
import org.springframework.context.ApplicationContext;
import org.springframework.web.context.WebApplicationContext;
/**
*
* @author NanGuoCan
*
*/
public class SpringBeanFactory {
public static Object getBean(String beanName) {
ApplicationContext applicationContext = (ApplicationContext) ServletActionContext
.getServletContext()
.getAttribute(
WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE);
return applicationContext.getBean(beanName);
}
}
下面是对数据库的操作了,在此我就不上传代码了,主要就是先读取数据库中的历史访问人数,然后加1,再写入数据库,并且把加1后的数据放在session中,在前台取得
分享到:
相关推荐
在这个在线考试系统的实现中,SSH框架扮演了核心角色,它提供了模型-视图-控制器(MVC)的设计模式,使得开发者能够更清晰地分离业务逻辑、数据访问和用户界面。 首先,Struts2是Action层的框架,负责处理HTTP请求...
7. **统计分析**:提供对内容访问量、用户行为等数据的统计分析功能。 8. **API接口**:可能与其他系统或服务集成,如社交媒体分享、数据分析工具等。 **源码学习价值** 对于开发者来说,分析和学习这样的源码可以...
- **AOP面向切面编程**:用于实现日志记录、性能统计等横切关注点功能。 - **事务管理**:Spring提供了声明式事务管理方式,简化了事务控制逻辑。 ##### 2. Struts框架 - **控制器**:Struts的核心是ActionServlet...
这个系统的设计和实现充分展示了SSH框架组合的优势,即强大的业务逻辑处理能力、数据库操作便捷性以及良好的结构和组件解耦。通过学习和理解这个系统,开发者可以深入掌握企业级Java应用的开发技巧,为今后的项目...
在SSH系统中,Spring负责管理整个应用的bean,包括Struts的Action、Hibernate的数据访问对象(DAO)等,实现各组件间的解耦。此外,Spring还提供了事务管理,确保数据操作的一致性和完整性。 3. **Hibernate框架** ...
这些组件能帮助开发者快速实现分页界面,减少代码量。 6. **源码注释**:提供的源码中应包含详细的注释,有助于理解每个部分的作用,包括Action类中的逻辑处理、Service层的数据获取、DAO层的数据库操作以及视图层...
【基于SSH的在线考试系统】是一个使用Java技术栈开发的Web应用程序,主要目的是实现一个功能完善的在线考试平台。SSH在这里指的是Struts2、Spring和Hibernate这三个开源框架的组合,它们在Java Web开发中广泛用于...
SSH框架,全称为Spring、Struts和Hibernate的缩写,是一种经典的Java Web开发技术栈,广泛应用于企业级应用系统开发,尤其是学生管理系统等信息管理系统的构建。本项目以SSH框架为基础,提供了一套完整的学生管理...
5. **报表统计**:生成各类统计报表,如班级成绩分布、选课人数统计等。 **系统架构与设计** 系统可能采用了模块化设计,将用户界面、业务逻辑和服务接口分开,便于维护和扩展。同时,可能采用了RESTful API设计,...
这个在线考试系统的实现基于SSH框架,旨在提供一个简单但功能齐全的平台,供用户进行在线答题。下面将详细介绍SSH框架及如何利用其构建在线考试系统。 **Spring框架**:Spring是一个全面的后端应用管理框架,它提供...
开发者可以根据实际需求,在此基础上扩展其他功能,如教师工作量统计、查询、报表生成等,以满足更复杂的教学管理需求。这个系统充分体现了SSH框架的灵活性和实用性,是Java Web开发的一个典型应用实例。
综上所述,基于SSH的商场管理系统充分利用了SSH框架的优势,实现了高效、可扩展的后台管理功能,为商场运营提供了坚实的技术支撑。在实际开发过程中,还需结合前端技术(如HTML、CSS、JavaScript)以及可能的移动...
SSH框架组合是Java Web开发中的经典选择,因为它能够有效地处理MVC(模型-视图-控制器)架构,实现业务逻辑和表现层的分离,提高代码的可维护性和可扩展性。 首先,让我们深入理解SSH框架的核心功能: 1. **Struts...
在SSH整合中,Spring负责管理和协调其他两个框架,比如管理Struts的Action beans和Hibernate的数据访问对象(DAO)。 在"SSH 银行管理系系统"项目中,丰富的注解使得代码更加简洁易懂。注解是一种元数据,可以提供...
它简化了数据库访问,通过ORM(对象关系映射)将Java对象与数据库表对应,从而减少了手动编写SQL语句的工作量。在SSH_CRM系统中,Hibernate可能用于处理客户、订单、产品等实体的CRUD(创建、读取、更新、删除)操作...
【SSH酒店网站管理系统详解】 SSH(Struts2 + Spring + Hibernate)是一个经典的Java Web开发框架,常用于构建高效、可维护的企业级应用。本系统基于SSH框架,旨在提供一个全面的酒店网站管理解决方案,帮助酒店...
1. **用户权限管理**:SSH框架提供了对用户角色和权限的管理,确保不同用户只能访问其权限范围内的功能。 2. **工作流引擎**:OA系统通常包含一个工作流引擎,用于定义和执行各种审批流程,如请假申请、报销审批等。...
总结来说,SSH2分页类是SSH2框架中处理大数据量分页显示的重要工具,通过合理的设计和优化,可以有效地提升Web应用的性能和用户体验。在开发过程中,我们需要关注分页参数的处理、数据查询的效率、分页对象的构建...
【简单工作流系统ssh】是一个基于Java技术栈的项目,主要使用了Hibernate、Struts和Spring这三大框架,旨在实现企业内部的轻量级工作流程管理。这些功能包括但不限于员工的上下班打卡以及考勤记录等日常管理任务。...
在实现时,首先查询数据库中所有博文的数量,然后根据提供的分页参数(起始位置offset和每页大小pageSize)来确定实际需要返回的数据量,最后构建分页对象返回给前端。 - **查询最新博文列表**:该方法用于获取最新...