FineReport:任意时刻只允许在一个客户端登陆账号的插件

  FineA

<强>

~

<强>

package  com.fr.stable.fun;   ,   import  com.fr.stable.fun.mark.Layer;   import  com.fr.stable.fun.mark.Mutable;   import  com.fr.stable.web.RequestCMDReceiver;   ,/* *   ,* Created  by  richie 提醒16/8/9。   ,*请求拦截器,通过传递op和cmd进行内置请求的拦截   ,*/public  interface  RequestInterceptor  extends 可变,RequestCMDReceiver, Layer  {   ,   ,,,String  MARK_STRING =,“RequestInterceptor”;   ,   ,,,int  CURRENT_LEVEL =, 1;   }

package  com.fr.stable.web;   ,   import  javax.servlet.http.HttpServletRequest;   import  javax.servlet.http.HttpServletResponse;   ,/* *   ,* Created  by  richie 提醒16/8/9。   ,*请求接收器   ,*/public  interface  RequestCMDReceiver  {   ,   ,,,/* *   ,,,,*,cmd参数的值   ,,,,*,@return  cmd参数的值   ,,,*/,,,String  getCMD ();   ,   ,,,/* *   ,,,,*,执行   ,,,,*,@param  req  http请求   ,,,,*,@param  res  http应答   ,,,,*,@param  sessionID 会话ID   ,,,,*,@throws  Exception 处理失败则抛出异常   ,,,*/,,,void  actionCMD (HttpServletRequest 点播,HttpServletResponse  res,   ,,,,,,,,,,,,,,,,,,String  sessionID), throws 例外;   ,   ,,,/* *   ,,,,*,执行请求   ,,,,*,@param  req  http请求   ,,,,*,@param  res  http响应   ,,,,*,@throws  Exception 处理失败则抛出异常   ,,,*/,,,void  actionCMD (HttpServletRequest 点播,HttpServletResponse  res), throws 例外;   }

& lt; extra-core>   ,,& lt; RequestInterceptor 类=癱om.fr.plugin.xxx.youclassname”, op=癴s_load”, cmd=暗锹肌?pid=" com.fr.plugin.xxx.name "/比;   & lt;/extra-core>

~ FR

JAR

FSLoadLoginAction

actionCMD (HttpServletRequest点播,HttpServletResponse res)

保护无效signOnSuccess (HttpServletRequest点播、HttpServletResponse res PrintWriter作家,字符串url)

@Override   ,,,,,,,public  void  actionCMD (HttpServletRequest 点播,HttpServletResponse  res)   ,,,,,,,,,,,throws  Exception  {   ,,,,,,,,,,,,,,,String  username =, WebUtils.getHTTPRequestParameter(点播,Constants.FR_USERNAME);   ,,,,,,,,,,,,,,,String  heartBeat =, WebUtils.getHTTPRequestParameter(要求,“__heartbeat__”);   ,,,,,,,,,,,,,,,如果(ComparatorUtils.equals(心跳,,“__active__”)) {   ,,,,,,,,,,,,,,,,,,,,,,,如果(StringUtils.isEmpty(用户名)){   ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,username =, WebUtils.getHTTPRequestParameter(要求,“__username__”);   ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,如果(! StringUtils.isEmpty(用户名)){   ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,req.getSession(真正的).removeAttribute (“__username__”);   ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,}   ,,,,,,,,,,,,,,,,,,,,,,,}   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

FineReport:任意时刻只允许在一个客户端登陆账号的插件