首页>代码>Spring MVC+mybatis+easyui+ueditor+shiro权限框架开发吉客多后台管理系统>/geekdol/src/com/baidu/ueditor/ActionEnter.java
package com.baidu.ueditor; import java.util.Map; import javax.servlet.http.HttpServletRequest; import com.baidu.ueditor.define.ActionMap; import com.baidu.ueditor.define.AppInfo; import com.baidu.ueditor.define.BaseState; import com.baidu.ueditor.define.State; import com.baidu.ueditor.hunter.FileManager; import com.baidu.ueditor.hunter.ImageHunter; import com.baidu.ueditor.upload.Uploader; public class ActionEnter { private HttpServletRequest request = null; private String rootPath = null; private String contextPath = null; private String actionType = null; private ConfigManager configManager = null; private String saveRootPath = null; private String type; //判断加载哪个 .json文件 public ActionEnter ( HttpServletRequest request, String saveRootPath,String rootPath,String type) { this.type=type; this.request = request; this.rootPath = rootPath; this.saveRootPath = saveRootPath; this.actionType = request.getParameter( "action" ); this.contextPath = request.getContextPath(); this.configManager = ConfigManager.getInstance(this.rootPath,this.saveRootPath, this.contextPath, request.getRequestURI(),type); } public String exec () { String callbackName = this.request.getParameter("callback"); if ( callbackName != null ) { if ( !validCallbackName( callbackName ) ) { return new BaseState( false, AppInfo.ILLEGAL ).toJSONString(); } return callbackName+"("+this.invoke()+");"; } else { return this.invoke(); } } public String invoke() { if ( actionType == null || !ActionMap.mapping.containsKey( actionType ) ) { return new BaseState( false, AppInfo.INVALID_ACTION ).toJSONString(); } if ( this.configManager == null || !this.configManager.valid() ) { return new BaseState( false, AppInfo.CONFIG_ERROR ).toJSONString(); } State state = null; int actionCode = ActionMap.getType( this.actionType ); Map<String, Object> conf = null; switch ( actionCode ) { case ActionMap.CONFIG: return this.configManager.getAllConfig().toString(); case ActionMap.UPLOAD_IMAGE: case ActionMap.UPLOAD_SCRAWL: case ActionMap.UPLOAD_VIDEO: case ActionMap.UPLOAD_FILE: conf = this.configManager.getConfig( actionCode ); state = new Uploader( request, conf ).doExec(); break; case ActionMap.CATCH_IMAGE: conf = configManager.getConfig( actionCode ); String[] list = this.request.getParameterValues( (String)conf.get( "fieldName" ) ); state = new ImageHunter( conf ).capture( list ); break; case ActionMap.LIST_IMAGE: case ActionMap.LIST_FILE: conf = configManager.getConfig( actionCode ); int start = this.getStartIndex(); state = new FileManager( conf ).listFile( start ); break; } return state.toJSONString(); } public int getStartIndex () { String start = this.request.getParameter( "start" ); try { return Integer.parseInt( start ); } catch ( Exception e ) { return 0; } } /** * callback参数验证 */ public boolean validCallbackName ( String name ) { if ( name.matches( "^[a-zA-Z_]+[\\w0-9_]*$" ) ) { return true; } return false; } }
最近下载更多
testuser1234567 LV24
2022年7月21日
1900110734 LV6
2021年4月14日
zjjhzjb LV14
2021年3月27日
1587767925 LV7
2020年12月24日
qq331974234 LV3
2020年12月17日
123456nty LV37
2020年12月15日
sunlea LV20
2020年12月6日
iven_muyi LV8
2020年10月12日
起名字是个麻烦事 LV12
2020年7月7日
1229290378 LV8
2020年7月6日
最近浏览更多
wddq123
4月3日
暂无贡献等级
xuweiwowzy LV5
1月14日
WBelong LV8
2023年12月26日
矿泉水 LV30
2023年8月10日
shaoqi
2023年7月26日
暂无贡献等级
lzr369258147 LV1
2023年6月9日
1379585889 LV11
2023年6月7日
yueeeii
2023年4月21日
暂无贡献等级
yuanshun LV6
2023年4月4日
uni-code_0123 LV1
2023年3月23日