bboss mvc启动事件监听器使用方法

简介: 在实际应用,往往需要在mvc容器启动后执行相应的操作,bboss提供了mvc容器启动监听器来达成这个目的,本文详细介绍bboss mvc启动事件监听器使用方法。 1.首先要实现一个ioc容器监听器,这个监听器只要实现接口即可: org.
在实际应用,往往需要在mvc容器启动后执行相应的操作,bboss提供了mvc容器启动监听器来达成这个目的,本文详细介绍bboss mvc启动事件监听器使用方法。

1.首先要实现一个ioc容器监听器,这个监听器只要实现接口即可:
org.frameworkset.spi.event.IocLifeCycleEventListener

接口中提供了两个事件方法和一个初始化参数方法:
public void init(Map<String,String> params);//监听器初始化参数方法
public void beforestart()//mvc容器启动前事件触发的方法
public void afterstart(BaseApplicationContext arg0) //mvc容器启动后事件触发的方法,将mvc对应的ioc容器对象作为after事件方法的参数


以下是一个简单的接口实现实例:
package com.frameworkset.platform.sysmgrcore.manager;

import org.frameworkset.spi.BaseApplicationContext;
import org.frameworkset.spi.event.IocLifeCycleEventListener;
import org.frameworkset.task.TaskService;

public class QuartzIocLifeCycleEventListener implements IocLifeCycleEventListener {

	public QuartzIocLifeCycleEventListener() {
		// TODO Auto-generated constructor stub
	}

	@Override
	public void afterstart(BaseApplicationContext arg0) {
		// mvc容器启动后,初始化任务管理quartz服务
		TaskService service = TaskService.getTaskService();
		service.startService();

	}

	@Override
	public void beforestart() {
		//do something here.

	}

	@Override
	public void init(Map<String, String> arg0) {
		sqlitepath = arg0.get("sqlitepath");

	}
}


2.实现事件监听器后,需要将监听器配置到mvc拦截器中,配置方法如下:
找到应用的web.xml文件,在DispatchServlet中增加iocLifeCycleEventListeners参数,多个事件监听器以逗号分隔。

<servlet-name>mvc</servlet-name>
        <servlet-class>org.frameworkset.web.servlet.DispatchServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/conf/appbom/bboss-*.xml,
            /WEB-INF/conf/commons/bboss-*.xml,           
            /WEB-INF/conf/workflow/bboss-*.xml,
			/WEB-INF/conf/application/bboss-*.xml,
            /WEB-INF/conf/document/bboss-*.xml,
            /WEB-INF/conf/params/bboss-*.xml,
            /WEB-INF/conf/counter/bboss-*.xml,
            /WEB-INF/conf/channel/bboss-*.xml
            </param-value>
        </init-param>
        <init-param>
			<param-name>messagesources</param-name>
			<param-value>/WEB-INF/messages_pdp,/WEB-INF/messages_pdp_common,
			/WEB-INF/conf/appbom/messages_appbom,
			/WEB-INF/conf/sanyems/messages</param-value>
		</init-param>
		<init-param>
			<param-name>useCodeAsDefaultMessage</param-name>
			<param-value>true</param-value>
		</init-param>
		<init-param>
			<param-name>iocLifeCycleEventListeners</param-name>
			<param-value>com.frameworkset.platform.sysmgrcore.manager.QuartzIocLifeCycleEventListener</param-value>
		</init-param>
<init-param>
			<param-name>iocLifeCycleEventListenerParams</param-name>
			<param-value>sqlitepath=d:/gencodedb|sourcepath=d:/sourcecode</param-value>
		</init-param>
		<load-on-startup>0</load-on-startup>
    </servlet>


参数iocLifeCycleEventListeners中可以配置多个事件监听器,配置时用逗号分隔即可,例如:
<init-param>
			<param-name>iocLifeCycleEventListeners</param-name>
			<param-value>com.frameworkset.platform.sysmgrcore.manager.QuartzIocLifeCycleEventListener,com.frameworkset.platform.OtherIocLifeCycleEventListener</param-value>
		</init-param>


iocLifeCycleEventListenerParams中可以配置监听器依赖的初始化参数,多个参数用|分隔,例如:
sqlitepath=d:/gencodedb|sourcepath=d:/sourcecode

mvc容器事件监听器主要用来保证其他服务和mvc ioc容器启动的先后顺序,以便解决其他服务和mvc容器启动顺序冲突问题。只有存在顺序冲突的情况下才需要用到mvc ioc容器事件监听器;如果没有启动顺序冲突,不需要使用事件监听器。
目录
相关文章
|
前端开发 数据库连接 PHP
symfony框架MVC模式中的Model使用方法
symfony框架MVC模式中的Model使用方法
symfony框架MVC模式中的Model使用方法
|
前端开发 关系型数据库 Java
bboss mvc 控制器方法参数绑定技巧-Map类型参数绑定介绍
本文介绍bboss mvc 控制器方法参数绑定技巧-Map类型参数绑定的使用方法,切入正题。 1、概述 Map类型参数绑定有两种方式: 方式一 Map方式,直接将Request对象中的参数转储到Map对象中 方式二 Map方式,这种方式用来将多条记录转换为Bean类型值对象,然后根据@MapKey中指定记录字段的值作为Map的key值,Bean对象作为value,形成一个Map对象作为控制器方法参数。
823 0
|
前端开发
web开发利器bboss mvc结合ext 4 desktop开发的桌面应用程序效果分享
web开发利器bboss mvc结合ext 4 desktop开发的桌面应用程序效果分享 废话少说,看效果图: 整体效果 开始菜单效果区域: 任务栏效果图: 窗口打开效果图:
774 0
|
缓存 JSON 前端开发
bboss mvc 对象自动转换为json响应请求浅析
bbossgroups mvc 对象自动转换为json响应请求功能浅析 bbossgroups mvc 对象自动转换为json响应请求有两种使用方式 方式一 服务端指定响应datatype为json,将返回对象直接转换为json数据返回到客户端 方式二 客户端请求中的datatype为json,则将返回对象直接转换为json数据返回到客户端 如果要使用对象转json数据功能,必须在bboss-mvc.xml文件中的httpMessageConverters节点中配置以下jackson转换器: 下面分别讲述两种方法的使用方法。
829 0
|
JSON 前端开发 Java
bboss mvc基础配置介绍
bboss mvc基础配置介绍,本文重点介绍bboss-mvc.xml文件中的一些有意义的配置以及其什么时候被加载。 1.bboss-mvc.xml加载 首先介绍bboss-mvc.xml文件什么时候会被加载,先谈一下web.
811 0
|
前端开发 Java 应用服务中间件
bboss mvc文件上传下载实战演练
本文以一个实际的demo工程来介绍,如何通过bbossgroups来实现以下功能: 1.通过MVC实现文件上传,通过持久层框架将文件存入数据库 2.使用持久层框架从数据库中获取文件实现下载功能(blob下载和转储为File下载两种方式) 3.本文涉及框架模块:mvc,persistent,taglib,aop/ioc    本文展示如何从MultipartHttpServletRequest中获取上传的附件,  后续将撰文介绍直接绑定MultipartFile对象或者数组到控制其方法参数或者po对象属性的案例。
775 0
|
存储 SQL 前端开发
bboss mvc文件上传下载实战进阶
在上一篇文章《bboss mvc文件上传下载实战演练》 http://yin-bp.iteye.com/blog/1130035 中介绍了采用bboss mvc、aop/ioc、persistent组合完成文件上传、存储到数据库、从数据库中下载文件的基本功能,我们看到了如何通过Multip...
720 0
|
前端开发 数据安全/隐私保护 安全
浅谈 bboss mvc 页面访问控制实现机制
声明:3.6以后的bboss中已经增加了安全过滤器,不再需要这个拦截器来进行安全认证检测 浅谈 bboss mvc 页面访问控制实现机制,本文介绍如何通过bboss mvc框架中的拦截器来实现页面访问控制功能,内容不多,很简单,但是很实用,呵呵。
875 0
|
前端开发 Java JavaScript
bboss mvc框架中使用注解指定控制器方法日期类型参数日期格式的例子
bboss mvc框架中使用注解指定控制器方法日期类型参数日期格式的例子 直入正题: 1.控制器方法定义-DateConvertController /* * Copyright 2008 biaoping.
847 0
|
SQL 前端开发 关系型数据库
通过bboss mvc实现分页操作
通过bboss mvc实现分页操作 mvc demo下载和部署方法可以参考文档: http://yin-bp.iteye.com/blog/1026245 这里介绍一下通过bboss mvc实现分页操作的实现步骤,呵呵 1.
757 0