基於jeesite的cms系統(七):GlobalException全局異常和部署

關於全局異常:html

在業務代碼中專一處理業務,而不是返回各類CodeMsg(好比這裏只須要知道登陸時成功仍是失敗,其他狀況直接拋出異常),能夠直接拋出異常,添加一個全局異常類,根據CodeMsg來生成異常, 交由GlobalExceptionHandler全局異常處理器處理(在其中增長if條件分支便可)java

springboot之全局異常攔截器

使用異常處理器以前,spring

我處理登錄的service方法代碼是這樣的:數據庫

 public CodeMsg login(LoginVal loginVal){
        if(null==loginVal){
           throw new GlobalException(CodeMsg.SERVER_ERROR);
        }
        String mobile=loginVal.getMobile();
        String password=loginVal.getPassword();
        MiaoshaUser user=miaoShaUserDao.getUserById(Long.parseLong(mobile));
        if(null==user){
            return CodeMsg.MSG_MOBILE_NOT_EXIST;
        }
        //
       if(!user.getPassword().equals(MD5Util.formPassword2DbPass(password,user.getSalt())) ){
           return CodeMsg.MSG_PASSWORD_ERROR;
        }
 
        return CodeMsg.SUCCESS;
    }

添加異常處理器以後:tomcat

service的處理login的業務代碼是這樣的:springboot

//登陸的記過只想知道是true仍是false,其他均是拋出全局異常,交由異常處理器處理
 public boolean login(LoginVal loginVal){
  
      if(null==loginVal){
           throw new GlobalException(CodeMsg.SERVER_ERROR);
        }
        String mobile=loginVal.getMobile();
        String password=loginVal.getPassword();
        MiaoshaUser user=miaoShaUserDao.getUserById(Long.parseLong(mobile));
        if(null==user){
           throw new GlobalException( CodeMsg.MSG_MOBILE_NOT_EXIST);
        }
       if(!user.getPassword().equals(MD5Util.formPassword2DbPass(password,user.getSalt())) ){
          throw  new GlobalException(CodeMsg.MSG_PASSWORD_ERROR);
        }
        return true;
    }

關於部署:服務器

教程是這樣給的session

1、確保正式服務器jdk1.8及數據庫環境已經具有

2、配置系統環境變量JAVA_HOME指定jdk1.8路徑,注意不要包含空格

三、執行bin/package.bat(.sh)進行打成war包文件,並將此war拷貝到服務器上

四、進行解壓war包,配置yml相關參數,運行/WEB-INF/startup.bat(.sh)腳本

5、若需修改jvm參數,編輯startup.bat(.sh)修改JAVA_OPTS參數優化jvm環境

六、支持啓動參數增長-Dspring.config.location=x:/app.yml加載指定配置文件

七、若須要配置環境,則指定-Dspring.profiles.active=dev,則加載application-dev.yml屬性文件

實際狀況是,打包使用外部tomcat部署會報錯,這裏依然是用SpringBoot內置容器部署app

一、源碼上傳至服務器修改aplication.yml配置數據庫和端口。jvm

二、修改LuceneService.java的indexPath路徑

三、爲了保證任務持續運行,可使用screen持續會話,

建立名爲yuosc的會話:screen -S yuosc

查看全部會話:screen -ls

進入yuosc會話:screen -r yuosc

退出會話:Ctrl-a d

刪除會話:screen -X -S [session # you want to kill] quit

四、先給bin/rum-tomcat.sh執行權限,而後後執行編譯部署。

五、日誌直接在控制檯輸出,須要打印文件能夠修改日誌級別。

六、這裏給出一些打war包在外部tomcat部署 的方案:

SpringBoot項目部署到外部Tomcat中的方法

Spring-Boot項目部署到單獨tomcat運行

相關文章
相關標籤/搜索