JFinal加密你值得学习

信息安全是当今互联网不可忽视的一个重大问题。加密是最直接的手段,相当于让你的数据多了一把锁,安全性直线上升。

jar包作为java程序运行的核心元素,加密变得不容忽视。本文将介绍基于JFinal 插件对我们的jar包进行加密

准备工作

  1. 引入plugin
xml 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 <modelVersion>4.0.0</modelVersion>

 <groupId>com.kang.sz</groupId>
 <artifactId>Tools</artifactId>
 <version>1.0-SNAPSHOT</version>


 <properties>
         <spring.boot.version>2.6.0</spring.boot.version>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 </properties>
<!--    <build>-->
<!--        <pluginManagement>-->
<!--            <plugins>-->
<!--            <plugin>-->
<!--                <groupId>org.springframework.boot</groupId>-->
<!--                <artifactId>spring-boot-maven-plugin</artifactId>-->
<!--                <configuration>-->
<!--                    <mainClass>com.kang.sz.app.ToolsStart</mainClass>-->
<!--                    <layout>JAR</layout>-->
<!--                </configuration>-->
<!--                <executions>-->
<!--                    <execution>-->
<!--                        <goals>-->
<!--                            <goal>repackage</goal>-->
<!--                        </goals>-->
<!--                    </execution>-->
<!--                </executions>-->
<!--            </plugin>-->
<!--            </plugins>-->
<!--        </pluginManagement>-->
<!--    </build>-->

 <build>
     <plugins>
         <plugin>
             <groupId>org.apache.maven.plugins</groupId>
             <artifactId>maven-jar-plugin</artifactId>
             <version>3.2.0</version>
             <configuration>
                 <archive>
                     <manifest>
                         <addClasspath>true</addClasspath>
                         <mainClass>com.kang.sz.app.ToolsStart</mainClass>
                     </manifest>
                 </archive>
             </configuration>
         </plugin>

         /**
         * 使用classFinal插件去加密。  关键插件
         */
         <plugin>
             <!-- https://gitee.com/roseboy/classfinal -->
             <groupId>net.roseboy</groupId>
             <artifactId>classfinal-maven-plugin</artifactId>
             <version>1.2.1</version>
             <configuration>
                 <password>123456</password>   //设置密码
                 <!--加密打包之后pom.xml会被删除,不用担心在jar包里找到此密码-->
                 <packages>com.kang.sz.app</packages>
                 <!--<excludes>org.spring</excludes>-->
                 <!--<libjars>a.jar,b.jar</libjars>-->
             </configuration>
             <executions>
                 <execution>
                     <phase>package</phase>
                     <goals>
                         <goal>classFinal</goal>
                     </goals>
                 </execution>
             </executions>
         </plugin>

     </plugins>
 </build>


</project>

效果验证

如果需要执行jar,需要输入密码,具体格式如下

ps: XML工具格式化后再贴入代码块

相关推荐
驭渊的小故事3 小时前
MyBatis XML 开发实战:从配置到 CRUD 全解析
xml·java·mybatis
哦虎!8 小时前
【JavaEE】网络初识
java
for_ever_love__8 小时前
MySQL ORDER BY 排序优化:从 Using filesort 到索引有序扫描(含双路 / 单路排序原理)
java·mysql·优化·存储·by·order·filesort
我是人✓9 小时前
Java文件上传三方式对比:从传统到SpringBoot
java·开发语言
欣栀♡9 小时前
JVM 频繁 Full GC 先看日志括号里的 cause,jstat 的 FGC 在 JDK 8 上会骗人
java·jvm
IT研究室9 小时前
最新计算机毕业设计选题推荐-基于spring boot的葡萄酒文化宣传网站-网站-文档指导-Java-springboot
java·spring boot·课程设计
慧都小项9 小时前
MyEclipse 中创建和测试 JAX-RS REST 接口:从项目配置到 REST Explorer
java·restful·myeclipse·jax-rs
Wang's Blog9 小时前
Java 项目实战: 交友项目 - 入门案例:编写 Dubbo 服务提供者
java·dubbo·交友
秋饼10 小时前
Spring AI 2.0 结构化输出企业级实战:从 BeanOutputConverter 源码到生产级解析容错
java·ai·技术分享·后端开发
摇滚侠10 小时前
《计算机是如何工作的:人人都能懂的计算机软硬件工作原理》第 9 章 机器码与汇编语言 阅读笔记 9
java·开发语言·笔记