?? check.java
字號:
/*
* 創建日期 2005-8-21
*
* TODO 要更改此生成的文件的模板,請轉至
* 窗口 - 首選項 - Java - 代碼樣式 - 代碼模板
*/
package org.infosys.security;
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.jsp.PageContext;
import org.infosys.common.Constants;
import org.infosys.util.Page2private;
import org.infosys.util.ParamUtil;
/**
* @author Administrator
*
* TODO 要更改此生成的類型注釋的模板,請轉至
* 窗口 - 首選項 - Java - 代碼樣式 - 代碼模板
*/
public class Check {
/**
* 是否登錄
* @param request
* @param response
* @return boolean
*/
public static boolean isLogin(HttpServletRequest request,HttpServletResponse response){
boolean islogin=true;
try{
Object loginUser=request.getSession().getAttribute(Constants.SESSION_USER_DATA);
if(loginUser==null){
islogin=false;
}
}catch(Exception e){
islogin=false;
e.printStackTrace();
}
return islogin;
}
/**
* 轉移頁面
* @param request
* @param response
* @param redirectUrl 要轉到的頁面
* @throws Exception
*/
public static void redirectErr(HttpServletRequest request,HttpServletResponse response,String redirectUrl){
try{
response.sendRedirect(redirectUrl);
}catch(Exception e){
e.printStackTrace();
}
}
/**
* 檢驗登錄
* @param request
* @param response
* @param redirectUrl 要轉到的頁面
* @throws Exception
*/
public static void checkLogin(HttpServletRequest request,HttpServletResponse response,String redirectUrl){
try{
Object loginUser=request.getSession().getAttribute(Constants.SESSION_USER_DATA);
if(loginUser==null){
response.sendRedirect(redirectUrl);
return;
}
}catch(Exception nonesession){
try {
response.sendRedirect(redirectUrl);
} catch (IOException e) {
e.printStackTrace();
}
}
}
/**
* 驗證權限
* @param request
* @param response
* @param userRights 以","分割的權限點串
* @return 錯誤原因
*/
public static String ValidateRights(HttpServletRequest request,HttpServletResponse response,String userRights){
String splitChar=",";
String userRightsArr[]=ParamUtil.trimChar(userRights,',').split(splitChar);
String userRightsStr=null;
Object groupRights=null;
boolean isRight=false;
String retStatus="";
try{
groupRights=request.getSession().getAttribute(Constants.SESSION_USER_RIGHTSPOINT);
if(groupRights==null){
retStatus=Constants.TIPS_LOGIN_NONE;
}else{
userRightsStr=groupRights.toString();
for(int i=0;i<userRightsArr.length;i++){
if(userRightsStr.indexOf(splitChar+userRightsArr[i]+splitChar)>=0){
isRight=true;
break;
}
}
if(isRight){
retStatus=Constants.PROCESS_OK;
}else{
retStatus=Constants.TIPS_RIGHTS_ERROR;
}
}
}catch(Exception e){
e.printStackTrace();
}finally{
groupRights=null;
userRightsStr=null;
}
return retStatus;
}
/**
* 檢驗權限
* @param request
* @param response
* @param userRights 以","分割的權限點串
* @param redirectUrl 要轉到的頁面
*/
public static void checkRights(HttpServletRequest request,HttpServletResponse response,String userRights,String redirectUrl){
String splitChar=",";
String userRightsArr[]=ParamUtil.trimChar(userRights,',').split(splitChar);
boolean isRight=false;
try{
String userRightsStr=request.getSession().getAttribute(Constants.SESSION_USER_RIGHTSPOINT).toString();
for(int i=0;i<userRightsArr.length;i++){
if(userRightsStr.indexOf(splitChar+userRightsArr[i]+splitChar)>=0){
isRight=true;
break;
}
}
if(isRight==false){
response.sendRedirect(redirectUrl);
return;
}
}catch(Exception nonesession){
try {
response.sendRedirect(redirectUrl);
} catch (IOException e) {
e.printStackTrace();
}
}
}
/**
* 驗證頁面自己的權限點
* @param request
* @param response
* @return 錯誤原因
*/
public static String isRights(HttpServletRequest request,HttpServletResponse response){
String userRights="";
try{
userRights=(new Page2private()).get(request);
}catch(Exception e) {
return Constants.TIPS_RIGHTS_ERROR;
}
String splitChar=",";
String userRightsStr=null;
Object groupRights=null;
String retStatus="";
try{
groupRights=request.getSession().getAttribute(Constants.SESSION_USER_RIGHTSPOINT);
if(groupRights==null){
retStatus=Constants.TIPS_LOGIN_NONE;
}else{
userRightsStr=groupRights.toString();
if(userRightsStr.indexOf(splitChar+userRights+splitChar)>=0){
retStatus=Constants.PROCESS_OK;
}else{
retStatus=Constants.TIPS_RIGHTS_ERROR;
}
}
}catch(Exception e){
e.printStackTrace();
}finally{
groupRights=null;
userRightsStr=null;
}
return retStatus;
}
/**
* 驗證指定頁面的權限點
* @param request
* @param response
* @param privUrl 指定頁面
* @return 錯誤原因
*/
public static String isRights(HttpServletRequest request,HttpServletResponse response,String privUrl){
String userRights="";
try{
userRights=(new Page2private()).get(privUrl);
}catch(Exception e) {
return Constants.TIPS_RIGHTS_ERROR;
}
String splitChar=",";
String userRightsStr=null;
Object groupRights=null;
String retStatus="";
try{
groupRights=request.getSession().getAttribute(Constants.SESSION_USER_RIGHTSPOINT);
if(groupRights==null){
retStatus=Constants.TIPS_LOGIN_NONE;
}else{
userRightsStr=groupRights.toString();
if(userRightsStr.indexOf(splitChar+userRights+splitChar)>=0){
retStatus=Constants.PROCESS_OK;
}else{
retStatus=Constants.TIPS_RIGHTS_ERROR;
}
}
}catch(Exception e){
e.printStackTrace();
}finally{
groupRights=null;
userRightsStr=null;
}
return retStatus;
}
/**
* 驗證頁面自己的權限點
* @param request
* @param response
* @return 錯誤原因
*/
public static String isRights(PageContext pagecontext){
String userRights="";
HttpServletRequest request=(HttpServletRequest) pagecontext.getRequest();
try{
userRights=(new Page2private()).get(request);
}catch(Exception e) {
return Constants.TIPS_RIGHTS_ERROR;
}
String splitChar=",";
String userRightsStr=null;
Object groupRights=null;
String retStatus="";
try{
groupRights=request.getSession().getAttribute(Constants.SESSION_USER_RIGHTSPOINT);
if(groupRights==null){
retStatus=Constants.TIPS_LOGIN_NONE;
}else{
userRightsStr=groupRights.toString();
if(userRightsStr.indexOf(splitChar+userRights+splitChar)>=0){
retStatus=Constants.PROCESS_OK;
}else{
retStatus=Constants.TIPS_RIGHTS_ERROR;
}
}
}catch(Exception e){
e.printStackTrace();
}finally{
groupRights=null;
userRightsStr=null;
}
return retStatus;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -