管道基础大数据平台系统开发-【后端】-Server
1
13693261870
2022-10-21 7da0ddeee941205582bdb8721b81fe2b5f532677
1
已添加1个文件
已修改4个文件
173 ■■■■■ 文件已修改
data/db_tab.sql 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/aspect/LogAspect.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/config/InitConfig.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/helper/AesHelper.java 129 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/helper/Zip4jHelper.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
data/db_tab.sql
@@ -372,7 +372,7 @@
comment on table lf.sys_res_op is '资源操作表';
comment on column lf.sys_res_op.id is '主键ID';
comment on column lf.sys_res_op.resid is '资源ID';
comment on column lf.sys_res_op.type is '操作类型:1-查看,2-新增,3-修改,4-删除,5-上传,6-下载';
comment on column lf.sys_res_op.type is '操作类型:1-查看,2-新增,3-修改,4-删除,5-上传,6-下载,7-统计';
comment on column lf.sys_res_op.ip is 'IP地址';
comment on column lf.sys_res_op.userid is '操作人ID';
comment on column lf.sys_res_op.optime is '创建时间';
@@ -404,12 +404,13 @@
comment on column lf.sys_auth.update_user is '更新人ID';
comment on column lf.sys_auth.update_time is '更新时间';
comment on column lf.sys_auth.bak is '备注';
/*insert into lf.sys_auth (name,tag) values ('查看','select');
/* insert into lf.sys_auth (name,tag) values ('查看','select');
insert into lf.sys_auth (name,tag) values ('新增','insert');
insert into lf.sys_auth (name,tag) values ('修改','update');
insert into lf.sys_auth (name,tag) values ('删除','delete');
insert into lf.sys_auth (name,tag) values ('上传','upload');
insert into lf.sys_auth (name,tag) values ('下载','download');*/
insert into lf.sys_auth (name,tag) values ('下载','download');
insert into lf.sys_auth (name,tag) values ('统计','count'); */
select * from lf.sys_auth;
----------------------------------------------------------------------------------------------------- 11.角色表
src/main/java/com/lf/server/aspect/LogAspect.java
@@ -32,17 +32,19 @@
    @Autowired
    private OperateService operateService;
    private final static String SELECT = "select";
    private final static String SELECT = "/select";
    private final static String INSERT = "insert";
    private final static String INSERT = "/insert";
    private final static String UPDATE = "update";
    private final static String UPDATE = "/update";
    private final static String DELETE = "delete";
    private final static String DELETE = "/delete";
    private final static String UPLOAD = "upload";
    private final static String UPLOAD = "/upload";
    private final static String DOWNLOAD = "download";
    private final static String DOWNLOAD = "/download";
    private final static String COUNT = "/count";
    private final static String SPLIT = "\\\\";
@@ -140,6 +142,9 @@
        if (methodName.indexOf(DOWNLOAD) > -1) {
            return 6;
        }
        if (methodName.indexOf(COUNT) > -1) {
            return 7;
        }
        return 0;
    }
src/main/java/com/lf/server/config/InitConfig.java
@@ -1,10 +1,12 @@
package com.lf.server.config;
import cn.hutool.crypto.symmetric.AES;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.lf.server.entity.bd.DlgAgnpEntity;
import com.lf.server.helper.AesHelper;
import com.lf.server.helper.PathHelper;
import com.lf.server.mapper.bd.DlgAgnpMapper;
import com.lf.server.service.sys.ArgsService;
@@ -49,6 +51,7 @@
            //com.lf.server.helper.RsaHelper.generate();
            //testMybatisPlus();
            //testAes();
            //boolean f1 = ZipHelper.unzip("D:\\LF\\data\\resources.zip", "D:\\LF\\data\\unzip");
            //boolean f2 = ZipHelper.zip("D:\\LF\\data\\res.zip", "D:\\LF\\data\\unzip\\resources");
@@ -110,4 +113,19 @@
        w3.like("name", "多").ge("gid", 100);
        List<DlgAgnpEntity> list5 = dlgAgnpMapper.selectList(w3);
    }
    private void testAes() {
        try {
            String content = "POLYGON ((115.94927385452 32.3754479115071 0,121.989371092554 32.2766788010181 0,121.850621222894 29.6874200067864 0,115.9727267226 29.7835368627922 0,115.94927385452 32.3754479115071 0))";
            System.out.println("加密前:" + content);
            String encrypt = AesHelper.encrypt(content);
            System.out.println("加密后:" + encrypt);
            String decrypt = AesHelper.decrypt(encrypt);
            System.out.println("解密后:" + decrypt);
        } catch (Exception ex) {
            log.error(ex.getStackTrace());
        }
    }
}
src/main/java/com/lf/server/helper/AesHelper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,129 @@
package com.lf.server.helper;
import javax.crypto.Cipher;
import javax.crypto.KeyGenerator;
import javax.crypto.spec.SecretKeySpec;
import java.util.Base64;
/**
 * AES加密帮助
 * @author WWW
 */
@SuppressWarnings("restriction")
public class AesHelper {
    /**
     * å¯†é’¥é•¿åº¦å¿…须是16
     */
    private static final String DEFAULT_KEY = "A#s_lF_sErve_k.y";
    private static final String KEY_ALGORITHM = "AES";
    /**
     * ç®—法
     */
    private static final String ALGORITHMSTR = "AES/ECB/PKCS5Padding";
    /**
     * aes解密
     *
     * @param encrypt å†…容
     * @return
     * @throws Exception
     */
    public static String decrypt(String encrypt) throws Exception {
        return decrypt(encrypt, DEFAULT_KEY);
    }
    /**
     * aes加密
     *
     * @param content å†…容
     * @return
     * @throws Exception
     */
    public static String encrypt(String content) throws Exception {
        return encrypt(content, DEFAULT_KEY);
    }
    /**
     * base 64 encode
     *
     * @param bytes å¾…编码的byte[]
     * @return ç¼–码后的base64 code
     */
    private static String base64Encode(byte[] bytes) {
        return Base64.getEncoder().encodeToString(bytes);
    }
    /**
     * base 64 decode
     *
     * @param base64Code å¾…解码的base64 code
     * @return è§£ç åŽçš„byte[]
     * @throws Exception
     */
    private static byte[] base64Decode(String base64Code) {
        return StringHelper.isEmpty(base64Code) ? null : Base64.getDecoder().decode(base64Code);
    }
    /**
     * AES加密
     *
     * @param content    å¾…加密的内容
     * @param encryptKey åР坆坆钥
     * @return åŠ å¯†åŽçš„byte[]
     * @throws Exception
     */
    private static byte[] aesEncryptToBytes(String content, String encryptKey) throws Exception {
        //KeyGenerator kGen = KeyGenerator.getInstance(KEY_ALGORITHM);
        //kGen.init(128);
        Cipher cipher = Cipher.getInstance(ALGORITHMSTR);
        cipher.init(Cipher.ENCRYPT_MODE, new SecretKeySpec(encryptKey.getBytes(), KEY_ALGORITHM));
        return cipher.doFinal(content.getBytes("utf-8"));
    }
    /**
     * AES加密为base 64 code
     *
     * @param content    å¾…加密的内容
     * @param encryptKey åР坆坆钥
     * @return åŠ å¯†åŽçš„base 64 code
     * @throws Exception
     */
    public static String encrypt(String content, String encryptKey) throws Exception {
        return base64Encode(aesEncryptToBytes(content, encryptKey));
    }
    /**
     * å°†base 64 code AES解密
     *
     * @param encryptStr å¾…解密的base 64 code
     * @param decryptKey è§£å¯†å¯†é’¥
     * @return è§£å¯†åŽçš„string
     * @throws Exception
     */
    public static String decrypt(String encryptStr, String decryptKey) throws Exception {
        return StringHelper.isEmpty(encryptStr) ? null : aesDecryptByBytes(base64Decode(encryptStr), decryptKey);
    }
    /**
     * AES解密
     *
     * @param encryptBytes å¾…解密的byte[]
     * @param decryptKey   è§£å¯†å¯†é’¥
     * @return è§£å¯†åŽçš„String
     * @throws Exception
     */
    private static String aesDecryptByBytes(byte[] encryptBytes, String decryptKey) throws Exception {
        //KeyGenerator kGen = KeyGenerator.getInstance(KEY_ALGORITHM);
        //kGen.init(128);
        Cipher cipher = Cipher.getInstance(ALGORITHMSTR);
        cipher.init(Cipher.DECRYPT_MODE, new SecretKeySpec(decryptKey.getBytes(), KEY_ALGORITHM));
        byte[] decryptBytes = cipher.doFinal(encryptBytes);
        return new String(decryptBytes);
    }
}
src/main/java/com/lf/server/helper/Zip4jHelper.java
@@ -99,7 +99,7 @@
            ZipFile zip = new ZipFile(zipFile);
            // è®¾ç½®å¯†ç 
            if (!Strings.isNullOrEmpty(password)) {
            if (!StringHelper.isEmpty(password)) {
                zip.setPassword(password.toCharArray());
            }