前言

曾几何时认为世界多么的美好,可事实上虽有美好,但糟粕也是很多的,近期我们的项目,终端系统要部署到客户那里,让人没想到的是作为国内某知名专家的项目团队几乎原样将我们的宣传材料、业务流程照搬过去,着实令人汗颜,所以对项目源码的保护必须提上日程。项目为web项目。

一、选择加密工具

经过筛选,最终选择了proguard加密工具。

ProGuard是一个压缩、优化和混淆Java字节码文件的免费的工具,它可以删除无用的类、字段、方法和属性。可以删除没用的注释,最大限度地优化字节码文件。它还可以使用简短的无意义的名称来重命名已经存在的类、字段、方法和属性。

二、注意事项

具体的加密方法,这里不多做说明,网上资料还是很多的,可以参考一下,推荐文章:Android proguard 详解: http://blog.csdn.net/banketree/article/details/41928175 ,其实安卓与web很多地方都是差不多的。下面主要说明一下注意事项。

spring 及springmvc配置,尽可能采用注解形式,如果采用XML方式,类名方法名等将无法混淆,混淆后工程是无法启动的,实在无法改为注解的部分需要保留。

自定义listener、servlet,改为注解形式,Servlet 3.0 以上版本都是支持注解的,相信现在大家用JDK5或以前的版本没有了吧。

关于全局静态变量,可能很多JSP页面会有引用,这个需要注意放到keep class里面。

关于jpa 实体类,需要keep 保留。

参考资料

版权声明:除特殊说明,文章均为博主 久酷 原创文章,转载请注明来源

java web代码混淆_JAVA WEB 项目的代码混淆相关推荐

  1. java gui构造工具_Java Web框架 静态代码块、构造代码块、构造函数、普通代码块 执行顺序 Decompiler JD-GUI 反编译工具...

    1.下载jd-gui-windows-1.4.0. http://jd.benow.ca/ 2.通过jd-gui.exe查看.class文件,用于分析类编译过程. 3.源文件. // 加载相应的 He ...

  2. java web 许令波_Java Web——Web概述

    已经很久没有更新博客了,过年忙着吃喝玩乐,就怠惰了一小下下?幸好这学期新开的课程都比较有趣--Java Web和Android.至少对于我自己来说,既充满挑战,又富有趣味. --[1.Web概述]-- ...

  3. java web 打印图片_java web打印总结

    the contents you don't want to print 如果需要设置不打印区域,加入如下样式: 其实就是引用了noprint样式的控件不打印: 下面是media的相关 media类型 ...

  4. java web 监听器 例子_Java web技术应用---监听器

    监听器的定义 (专门用于对其他对象身上发生的事件或状态改变进行监听和相应处理的对象,当被监视的对象发生变化时,立即采取相应的行动) 定义:Servlet规范中定义的一种特殊的类,用于监听Servlet ...

  5. java web 初始化方法_Java Web(二) 类的初始化及初始化顺序

    1. 问题点 最近在写单例模式的时候碰到了@Autiwired注解注入为NULL的情况,研究一番,发现是和类的初始化顺序有关.先抛出我的问题: //异步处理 public class AsyncMan ...

  6. 白色flash模块代码_适用于MCU项目的代码框架BabyOS,工程师的好助手!

    来源:码云+嵌入式云IOT技术圈 一个好的代码架构直接影响项目的质量,今天为大家分享的是一个管理功能模块和外设驱动的框架:BabyOS. BabyOS是什么? BabyOS适用于MCU项目,它是一套管 ...

  7. java web 请求跟踪_java web 项目跟踪用户操作

    java web项目,就几个JSP页面,本人怎么跟踪用户什么时间点击了那个jsp页面,什么时候登录的,什么时候关闭jsp页面的,把跟踪用户的操作(基本上就上面这三个操作),存入数据库里面,什么时候干什 ...

  8. java web网上书店_java web简易网上书店项目系列,使用MVC模式(servlet+jstl+dbutils),开篇...

    一. 针对很多java web初学者入门困难的问题,笔者利用一个小型web项目,一步一步的展示java web开发方法,每一个章节引入一些java web开发的重点知识,让同学们可以将java web ...

  9. java jvm bind解决_java web项目启动的时候JVM_Bind,真的是tomcat端口被占用了吗?tomcat不同意...

    java web项目启动的时候JVM_Bind,真的是tomcat端口被占用了吗?tomcat不同意了 凯哥Java 凯哥java 记录帮朋友解决JVM_Bind错误. java web项目启动的时候 ...

  10. java导出excel 序号_java web将数据导出为Excel格式文件代码片段

    本文实例为大家分享了java web将数据导出为Excel格式文件的具体代码,供大家参考,具体内容如下 1.jsp代码 2.js代码 function getVerExcel() { window.l ...

最新文章

  1. DataRabbit 轻量的数据访问框架(13)--DataRabbit 3.0 ORM性能大幅度提升!
  2. Docker 极简入门教程,傻瓜都能看懂!
  3. 计算机老师 学高为师 身正为范,何为老师,学高为师,身正为范
  4. vue --- 使用animate.css实现动画
  5. Discuz! 防御CC攻击的设置办法
  6. jmeter 压力测试tcp
  7. 基于JAVA+Servlet+JSP+MYSQL的在线鲜花商城系统
  8. node将当前文件上传到服务器,以编程方式将文件从node.js上传到另一个Web服务器...
  9. Pycharm 设置python文件自动生成头部信息模板
  10. 插件占坑,四大组件动态注册前奏(一) 系统Activity的启动流程
  11. NSGA2 算法MATLAB完整代码 中文注释详解
  12. 【网络】HTTP原理的简单理解
  13. 声纹识别之Alize入门教程(三):I-vector
  14. C# winform excel根据当前选中内容,自动插入/编辑批注
  15. 使用1*1卷积实现咖啡豆图像分类
  16. 文件比较命令(comp)
  17. 使用python批量修改txt文件中的信息
  18. 每日一题 2019/4/8
  19. 【数据处理】格式化数据
  20. hive数据备份与恢复

热门文章

  1. android MVC
  2. python编程之处理GB级的大型文件
  3. POJ_2823 Sliding Window(单调队列)
  4. SharePoint开发错误—列表自定义表单出现“未将对象引用设置到对象的实例”
  5. php fpm 报错,PHP-FPM安装报错解决
  6. linux cpu load命令,Linux性能检测常用的10个基本命令
  7. ELK logstash的grok 自带的正则匹配、自定义正则 使用
  8. PHP中使用PDO操作MySQL
  9. vcredist_x64.exe/vcredist_x86.exe的用处
  10. 代码管理学:代码分堆