Java2HTML改造手记(1)

Linux关机重启原理:从shutdown到systemd事务化控制 关机与重启是操作系统最基础却最易被误解的核心操作,其本质是系统状态的一致性迁移过程。在Linux中,它涉及内核调用、init系统演进(SysV init→systemd)、权限模型(polkit/setuid)、固件交互(UEFI启动项)及安全策略(SELinux/桌面拦截)等多层机制。理解`shutdown`命令的`-h`(halt)、`-r`(reboot)、`-P`(poweroff)参数差异,有助于区分‘暂停’‘重启’与‘断电’的语义边界;而`systemd中的reboot命令`通过事务化服务停止保 阅读详情

Java2Html(http://www.java2html.com/)是一个非常好用的工具,它可以直接将您的java源代码生成HTML页面,而且结构组织的就象javadoc组织的一样好,并且支持Ant Task扩展,给广大的编程爱好者一个非常方便实用的功能.笔者就非常喜欢使用ant结合javadoc/java2html等直接生成javadoc和java html文件并发布到服务器上.各位可以去我的站点看一下(http://www.ibeyond.org/code),我的网站就是使用eclipse(http://www.eclispse.org)结合ant(http://ant.apache.org/)等自动发布的,如果你愿意的话甚至可以进行每日构建.我简直是太喜欢Ant这个工具了(话题有点跑了,没有办法,小时候写作文就容易跑题,习惯了).

 

       言归正传,还是回到改造手记上来.

 

       不知道使用过java2html的各位看客有没有注意到.java2html默认是不支持字符编码的.也是,谁让作者是一个洋人(从它的版权信息里看,应该是一个英国人)呢?他们怎么能注意到遥远的东方有一群”巨龙”将要使用他的”小软件”呢?如果你的程序代码中输入了中文那么,^_^,那么恭喜你,你可以见识一下带有中文乱码的Html页面了.说实话,这也是不容易见到的.当然,英文极好的看官可以离开了,因为英文极好的您的代码里当然不会出现中文字符了,这也有损于你的能力的体现了,而象我等这样只是认识简单的二十几个英文字母的英文爱好者当然会觉得心理非常不爽了(如果有可能我甚至想把程序代码全部使用中文书写,当然java支持这么作,只是我的boss不同意吧了,但愿这片文章不会呗我的boss看到.).

 

       我知道很多人都象我一样对于程序对于编程有着近乎狂热的爱好(如果没有这么狂热的爱好你也不会利用者有限的宝贵的等价于金钱的时间来看我的这个臭屁文章),当然不满足于使用的软件会有这样的瑕疵,那么好吧,套用现在计算机硬件高手常用的一个口头禅,让我们开始”DIY”历程吧(臭屁这么多,终于要进入主题了,我也开始有些心急了,呵呵).

 

       实际上,到这里,我这个”榆木脑袋”(小学老师就是经常使用这个”爱称”)只想到了两个解决办法:

一.   在使用java2html之前先将我的代码进行转码,然后让java2html使用转码后的代码.

二.   直接修改这个java2html的代码,给java2html添加一个encoding编码参数.

 

各位不难想象.如果利用方法一,不管你如何转换在英文环境中还是会出现乱码,既是能正确显示中文也需要你在Browser上手动选择一下编码方式.而方法二才能体现出我们的”高超水平”,而且可以很平滑的和原有的软件结合,不影响其他的应用.

 

从作者的软件许可协议(http://www.vaegar.f9.co.uk/#License)可以看到这是一个共享软件,使用者可以自由的发布,但是不可以反编译,逆向工程等.所以我接下来将要作的是严格来说应该很不妥当的,但是同样我也不能容忍这个软件的这个微小的瑕疵,于是,我在完全保留其版权信息并且尊重其版权的情况下对java2html进行了有限的扩充(在软件中我还加入了我自己的一点小记号,呵呵,人无完人呀).

 

接下来我们要作的既是反编译这个软件包了.关于Decompile,业界有很多争议,很多人认为java编译过的代码是不安全的,既是使用了混淆器也是这样,这里我不想讨论这个问题,因为我对这个方面也不是专家,也不是能人里手,还是留给那些喜欢讨论的人来进行吧(关于java的讨论实在是太多了).我在这里想说的是,我并不是鼓励大家对java软件进行反编译,个人认为只是在觉得需要完善这个软件的时候但不能获得java源代码的时候才能采用这种最下策的下策,而且进行相关工作的时候也一定要保留原作者的相关版权信息,仅此声明一下.

 

首先将原来的j2h.jar(可以从http://www.java2html.com下载)解包,用Winrar之类的就可以解开,然后象一个专业的骇客一样,寻找入口吧(有点黑客帝国的意思了).最明显的入口就是META-INF/MANIFEST.MF,为什么这么说呢?因为java通过这个文件指定这个Jar包的执行程序的类名,也就是带有Main方法的类,当然它就是入口了(我并不是黑客帝国中的先知,第一那个先知是女的,至少是一个女人形态,而我是男的;第二,我并没有未卜先知的能力,如果有这个能力我就去考买奖券发家了,谁还来写这劳什子程序呀).所有我们的目标就是先搞定这个文件,通过它寻找突破口.

J2h.class:

import com.java2html.Java2HTML;

 

public class j2h

{

 

    public static void main(String args[])

        throws Exception

    {

        Java2HTML.main(args);

    }

 

    public j2h()

    {

    }

}

 

看到了,它直接把args参数送到java2html.main中了,就象破案一样,有了现在就开始追踪吧.

欲知后事如何,且听下回分解.

Java转HTML文档转换工具Java2HTML实战应用 Java2HTML是一种将Java源代码自动转换为格式化HTML文档的实用工具,旨在解决开发者在技术分享、教学演示和文档编写中面临的代码排版混乱、可读性差等问题。它通过词法分析识别关键字、注释、字符串等语法元素,并结合CSS实现语法高亮,保留原始缩进与结构,输出语义化的HTML标记。相比手动复制或截图,Java2HTML支持批量处理、主题自定义及主流编码格式(如UTF-8),并兼容Java 17+的新语法特性,显著提升代码展示的专业性与一致性,已成为现代开发流程中不可或缺的辅助工具。body { 阅读详情

相关推荐

java2html,将java转成html文档的工具

将java转成html文档的工具,方便阅读。

Java2Html使用详解

Java2Html使用详解   在写Blog的时候,常常需要粘贴Java源代码,但是从IDE中复制过去的源码为纯文本格式的。IDE中的高亮语法语法全部丢失,贴出去全成黑白的了。看起来很难看,也不易于阅读。   鉴于此,在网上终于找到了一个可以将Java转换为Html的工具,但是没有相关的文章。于是顺便研究一下用法,前后不过15分钟,现在放出来,和大家一块分享。 还有唯一一个没有解决的问题...

weixin_34356138的博客 179

html2article

新闻正文提取代码!支持有标签和无标签提取正文内容!

java2html 用法

一个将JAVA源码转为HTML的小东东.网址和介绍如下:http://www.java2html.de/ ant的定义如下:   classname="de.java2html.anttasks.Java2HtmlTask"  classpath="${lib.dir}" />        srcdir="${src.dir}"       destdir="

WalkingWithJava 1168

VMD-CNN-BiLSTM-Attention预测模型 —— 数学模型介绍&完整实例代码

想解决电力负荷预测中的非线性、非平稳难题?这篇博客介绍了一种创新混合模型,结合变分模态分解(VMD)和CNN-BiLSTM-Attention深度学习架构,实现超高精度预测! ✨ 核心亮点: ✅ VMD分解:有效分离复杂负荷信号,提取关键频率特征 ✅ 混合深度学习:CNN捕捉局部模式 + BiLSTM学习长时序依赖 + 注意力机制聚焦关键时段 ✅ 端到端优化:从数据预处理(滑动窗口、归一化)到模型训练(MSE损失+Adam优化),完整流程公开! ✅ 工业级评估:提供MSE、MAE、MAPE、R²多指标验证

qq_42924330的博客 1653

从JX-2R-01热敏打印机芯到稳定打印:硬件设计与时序控制的实践指南

本文详细解析了JX-2R-01热敏打印机芯的硬件设计与驱动开发全流程。核心内容包括:实现严格的双电源上电时序控制、采用PWM恒流驱动步进电机确保走纸平稳,以及精确控制SPI数据加载与加热脉冲时序以获得清晰打印效果。文章提供了从电路设计、芯片选型到代码调试的实战指南,旨在帮助开发者构建稳定可靠的热敏打印模块。

weixin_29169899的博客 220

Java中的HTML生成

无论是为了生成报告、网页内容,还是为了实现一些自动化任务,了解如何在Java中高效地生成HTML是非常有必要的。今天,我将带你深入了解几种Java中生成HTML的技术,从基础到高级,助你在开发中如虎添翼。在Java中生成HTML的方式多种多样,从简单的字符串拼接,到功能强大的模板引擎和HTML生成库,每种方法都有其独特的优势和适用场景。关注我,获取更多Java开发的实用技巧和最佳实践。使用j2html,你可以在编译时捕获HTML生成中的错误,从而减少运行时错误【5†source】【6†source】。

weixin_46372265的博客 2140

工作:三菱PLC与伺服之CC-Link IE Field Network通讯应用

CC-LINK-IE

好记性不如烂笔头 2万+

linux下使用shutdown命令关机,提示: command not found

有点linux基础知识的,或者是系统的学习过计算机知识的人,没用过也能猜到,关机命令十有八九可能是shutdown。没错,实际上shutdown确实是liunx的关机命令,再配合各种选项,实现不同的关机效果。 然而在此之前,我却从没成功运行过shutdown。我是用普通用户登录,在终端下输入shutdown命令,结果显示 command not found。这就奇怪了,难道我的linux不支持这...

tjmzgn 2389

金蝶云星空初级实施认证考题

Q4.[单选题] (1.5分) 总账中的多账簿账表主要是基于什么进行查看的Q47.[多选题] (2.5分) 销售订单的收款计划页签勾选预收之后,预收控制环节可以控制哪些节点?

m0_51994557的博客 3121

STM32/GD32以太网开发避坑指南:ZLG EPORTM模块调试实战(含YT8512H配置)

本文针对STM32/GD32平台使用ZLG EPORTM模块进行以太网开发时遇到的常见问题,提供了详细的调试实战指南。重点解析了从传统PHY驱动迁移到YT8512H芯片的核心步骤,包括软件复位延时、RMII时钟配置等关键陷阱,并分享了LWIP集成与稳定性验证的实用经验,帮助开发者高效避坑。

rice5的博客 1161

linux停机命令shutdown,linux下使用shutdown命令关机,提示: command not found (转)

有点linux基础知识的,或者是系统的学习过计算机知识的人,没用过也能猜到,关机命令十有八九可能是shutdown。没错,实际上shutdown确实是liunx的关机命令,再配合各种选项,实现不同的关机效果。然而在此之前,我却从没成功运行过shutdown。我是用普通用户登录,在终端下输入shutdown命令,结果显示 command not found。这就奇怪了,难道我的linux不支持这个命...

weixin_28829173的博客 890

HyperLynx(十五)多板仿真

在对话框的“Design file#1”下拉列表中选择“B00,Mainboard”,在其下方的“Reference designators”列表中选择元器件“J1”,然后在“Designfile#2”下拉列表中选择“BO1、RAM1”,在其下方的“Refer ence designators”列表中选择元器件“J1”,单击“Insert”按钮,为这两个元器件建立互连映射。在“Assign Models”对话框中,选择“B00 Motherboard”,将“U16.B12”设置为输出。

小幽余生不加糖 5060

linux下使用shutdown命令关机,提示: -bash:shutdown:command not found

<br />有点linux基础知识的,或者是系统的学习过计算机知识的人,没用过也能猜到,关机命令十有八九可能是shutdown。没错,实际上shutdown确实是liunx的关机命令,再配合各种选项,实现不同的关机效果。<br /> 然 而在此之前,我却从没成功运行过shutdo

datarookie 6831

VMware下载与安装

一、VMware下载 二、VMware安装

欢迎订阅我的“JAVA全栈开发笔记(全)”专栏,价格优惠,仅需19.9元。 315

机器学习扩散模型简介

​ 扩散模型是生成模型,在过去几年中越来越受欢迎,这是有充分理由的。仅在 2020 年代发布的几篇开创性论文就向世界展示了 Diffusion 模型的能力,例如在图像合成方面击败 GAN[6]。最近,从业者将看到DALL-E 2(OpenAI 上个月发布的图像生成模型)中使用的扩散模型。

gongdiwudu的专栏 4265

linux下使用shutdown命令关机,提示: command not found (转)

有点linux基础知识的,或者是系统的学习过计算机知识的人,没用过也能猜到,关机命令十有八九可能是shutdown。没错,实际上shutdown确实是liunx的关机命令,再配合各种选项,实现不同的关机效果。 然而在此之前,我却...

cnb2014的博客 415

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

解决linux下"bash:shutdown:command not found"的解决方法

在学习使用linux过程中,发现一个问题,当我使用su命令成为超级用户的时候,使用shutdown来关机或重启时,会给我一个"bash:shutdown:command not found" 在网上找了挺多的解决方法,终于解决了。现在把方法留下。 首先我们要知道为什么会出现这种问题:首先这个命令是一定存在的,现在找不到,估计是寻找的路径不对。所以我们要看看root用户的环境变量。 先切到ro

叶子一哥 3万+

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

linux下提示 -bash: ******* :command not found

原文地址:http://blog.youkuaiyun.com/chuanj1985/article/details/6873717 如果新装的系统,运行一些很正常的诸如:shutdown,fdisk的命令时,悍然提示:bash:command not found。那么 首先就要考虑root 的$PATH里是否已经包含了这些环境变量。 主要是这四个:/bin ,/usr/bin,/sbin,

落尘纷扰的专栏 1万+

linux下提示bash:command not found的解决方法

如果是新安装的linux系统,如果进行精简安装可能会出现bash:command not found 的提示,大家在安装的时候可以选择默认安装basic的组件,一般就可以解决问题。到时候可以再升级。 如果新装的系统,运行一些很正常的诸如:shutdown,fdisk的命令时,悍然提示:bash:command not found。那么首先就要考虑root 的$PATH里是否已经包含了这些环境变...

相信自己 1万+

linux下command not found详解

问题一 如果新装的系统,运行一些很正常的诸如:shutdown,fdisk的命令时,悍然提示:bash:command notfound。那么 首先就要考虑root 的$PATH里是否已经包含了这些环境变量。 主要是这四个:/bin ,/usr/bin,/sbin,/usr/sbin。 四个主要存放的东东: ./bin: bin为binary的简写主要放置一些系统的

My Heart Will Go On 1万+

linux下提示bash:command not found

新安装的linux系统,如果进行精简安装可能会出现bash:command not found 的提示,大家在安装的时候可以选择默认安装basic的组件,一般即可。到时候可以再升级。 如果新装的系统,运行一些很正常的诸如:shutdown,fdisk的命令时,悍然提示:bash:command not found。那么  首先就要考虑root 的$PATH里是否已经包含

yiluoAK_47的专栏 4707
上一篇: 喜欢,是一种心情;爱,是一种感情
下一篇: Java2HTML改造手记(2)
keithhe
博客等级 码龄24年 1粉丝 7原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值