学习Java to Html
java markdown转html应用与实践
Java Markdown转HTML应用与实践一、背景介绍1.1 什么是MarkdownMarkdown是一种轻量级的标记语言,最初由John Gruber和Aaron Swartz设计,旨在简化HTML的写作。
Markdown使用易读易写的文本格式,并可以转换为HTML、PDF等多种格式,是撰写网络文章和文档的理想选择。
1.2 Java语言介绍Java是一种广泛应用于企业级开发、移动应用开发等领域的跨评台编程语言,由Sun Microsystems公司于1995年发布。
Java拥有强大的跨评台特性和丰富的生态系统,被广泛应用于各种软件开发项目中。
1.3 Markdown转HTML的需求在实际的软件开发过程中,经常会遇到将Markdown格式的文本转换为HTML的需求,以便在网页上展示和发布。
由于Java在企业级应用中的地位和优势,因此许多开发者希望能够通过Java语言来实现Markdown转HTML的功能,从而简化开发流程、提高效率。
二、Java Markdown转HTML的实现方式2.1 使用现有的Markdown解析库目前,市面上有许多基于Java语言的Markdown解析库,如CommonMark、Flexmark等,它们提供了丰富的API和功能,可以方便地将Markdown格式的文本解析为HTML格式。
开发者可以通过引入这些库来实现Markdown转HTML的功能,从而避免重复造轮子,快速完成开发任务。
2.2 自行编写Markdown解析器另一种实现Java Markdown转HTML的方式是自行编写Markdown 解析器。
开发者可以根据Markdown语法规范,逐步解析Markdown文本,将其转换为HTML格式。
虽然这种方式需要投入更多的时间和精力,但可以更好地理解Markdown语法和转换原理,有助于提高编码水平。
2.3 集成第三方工具或服务除了上述两种方式,开发者还可以考虑集成第三方的Markdown转HTML工具或服务。
javaweb实习报告
javaweb实习报告篇一:JavaWeb实习报告JavaWeb实习报告一、实习目的与任务为了锻炼我们的实践动手能力,提高我们分析问题、解决问题的能力,培养我们的工作意识和团队合作的意识,了解软件开发的过程和基本流程,以便于帮助我们能够在大四毕业时可找到一份客观的工作,我们在大四刚开学就开始了生产实习。
这次实习的主要任务是Java Web软件开发,学习Java 开发中比较典型且经常用到的几个知识,其中包括Jsp、Servlet、Html、JDBC等等,另外,Java开发中也必须要用到数据库,因此实习中还加入了Mysql数据库的学习。
掌握了这些基本知识之后,就开始真正的项目开发,而且此次我们所要开发的项目是有关博客页面的项目,并完成老师指定的功能。
二、实习地点重庆足下科技有限公司三、实习内容和要求我们这次实习,在校外也就是软帝公司总共是十天,开始几天基本上是每天学习一个方面的内容,大概学习了六天其中包括Jsp、Servlet、Html、JDBC、Mysql等等,剩下几天就是项目时间,做出一个博客开发的项目。
大致内容如下:一、Java语言简介Java语言Java是由Sun微系统公司所发展出来的程序语言,它是一种面向地向的语言,Java也号称是能跨平台使用的语言,这主要是因为Java本身被编译之后,并不是直接产生可执行的代码,而是产生一种中间码叫作 ByteCode,这种代码必需在透过 Java 的直译器来解读它,才能够真正的被执行,所以只要平台上装有这种Java的直译器,就能解读ByteCode也就能执行Java编译过的程序,故与Java 程序是在那种平台上被编译的,就完全没有干系了。
Java写出来的程序可分为两类,分别是Java Applet与一般的Application,而Application这一类就与一般的程序如C++的作用是比较类似的,是一个独立可执行的应用程序,像HotJava是一个浏览器,且就是使用Java程序所发展出来的。
程序员技术练级攻略——程序员大牛进阶之路!
程序员技术练级攻略——程序员大牛进阶之路!你是否觉得自己从学校毕业的时候只做过小玩具一样的程序?走入职场后哪怕没有什么经验也可以把以下这些课外练习走一遍(朋友的抱怨:学校课程总是从理论出发,作业项目都看不出有什么实际作用,不如从工作中的需求出发)建议:不要乱买书,不要乱追新技术新名词,基础的东西经过很长时间积累而且还会在未来至少10年通用。
回顾一下历史,看看历史上时间线上技术的发展,你才能明白明天会是什么样。
一定要动手,例子不管多么简单,建议至少自己手敲一遍看看是否理解了里头的细枝末节。
一定要学会思考,思考为什么要这样,而不是那样。
还要举一反三地思考。
注:你也许会很奇怪为什么下面的东西很偏Unix/Linux,这是因为我觉得Windows下的编程可能会在未来很没有前途,原因如下:现在的用户界面几乎被两个东西主宰了,1)Web,2)移动设备iOS或Android。
Windows的图形界面不吃香了。
越来越多的企业在用成本低性能高的Linux和各种开源技术来构架其系统,Windows的成本太高了。
微软的东西变得太快了,很不持久,他们完全是在玩弄程序员。
详情参见《Windows编程革命史》所以,我个人认为以后的趋势是前端是Web+移动,后端是Linux+开源。
开发这边基本上没Windows什么事。
1、学习一门脚本语言,例如Python/Ruby可以让你摆脱对底层语言的恐惧感,脚本语言可以让你很快开发出能用得上的小程序。
实践项目:处理文本文件,或者csv (关键词python csv, python open, python sys) 读一个本地文件,逐行处理(例如 word count,或者处理log)遍历本地文件系统 (sys, os, path),例如写一个程序统计一个目录下所有文件大小并按各种条件排序并保存结果跟数据库打交道(python sqlite),写一个小脚本统计数据库里条目数量学会用各种print之类简单粗暴的方式进行调试学会用Google (phrase, domain, use reader to follow tech blogs)为什么要学脚本语言,因为他们实在是太方便了,很多时候我们需要写点小工具或是脚本来帮我们解决问题,你就会发现正规的编程语言太难用了。
狂神说Java--Java学习笔记(基础合集)
狂神说Java--Java学习笔记(基础合集)笔记参考来源狂神说Java视频https:///video/BV12J41137hu 本篇笔记有点长,可以根据⽬录定位,建议配合视频学习。
预科什么是计算机1. 名称:Computer,全称电⼦计算机,俗称电脑。
2. 定义:能够按照程序运⾏,⾃动、⾼速处理海量数据的现代化智能电⼦设备。
3. 组成:由硬件和软件组成。
4. 形式:常见显⽰有台式计算机、笔记本计算机、⼤型计算机等。
5. 应⽤:科学计算、数据处理、⾃动控制、计算机辅助设计、⼈⼯智能、⽹络等领域。
硬件及冯诺依曼结构计算机硬件组成:CPU,主板,内存,电源,主机箱,硬盘,显卡,键盘、⿏标,显⽰器。
冯诺依曼结构软件及软件开发计算机软件Windows常⽤快捷键Alt+f4关闭窗⼝ Shift+Delete永久删除 ctrl+w⾃动保存死机:任务管理器结束进程基本的Dos命令打开CMD的⽅式1. 开始+系统+命令提⽰符2. win键+R+输⼊cmd (推荐使⽤)3. 在任意的⽂件夹下,按住Shift键+⿏标右击,打开命令⾏窗⼝4. 在资源管理器地址栏路径前⾯加 “cmd ”5. 管理员运⾏⽅式:命令提⽰符右键以管理员⾝份运⾏(最⾼权限运⾏)常⽤的Dos命令# 盘符切换 E:# 查看当前⽬录下所有⽂件 dir# 切换⽬录 cd /d E:\idea# 返回上⼀级⽬录 cd ..# 进⼊同级⽬录下的下⼀级⽬录 cd tmp(该⽬录下的⽂件名)# 清屏 cls (clear screen)# 退出终端 exit# 查看电脑当前IP地址 ipconfig# 打开计算器 calc# 打开画图 mspaint# 新建记事本 notepad# 在当前⽬录新建⽂件夹 md test(⽂件夹名)# 新建⽂件 cd> a.txt(⽂件名)# 删除⽂件 del a.txt(⽂件名)# 删除⽬录 rd test(⽬录名)# ping命令(复制链接进⼊Dos直接单击⿏标右键粘贴)ping 计算机语⾔发展史第⼀代语⾔:机器语⾔第⼆代语⾔:汇编语⾔第三代语⾔:⾼级语⾔⾼级语⾔C、C++、Java、C#、Python、PHP、JavaScript …⼤体上分为:⾯向过程与⾯向对象两⼤类C语⾔是典型的⾯向过程的语⾔,C++,Java是典型的⾯向对象的语⾔Java⼊门Java帝国的诞⽣Java特性与优势简单性⾯对对象可移植性⾼性能分布式多态性多线程安全性健壮性Java三⼤版本Write Once,Run AnywhereJavaSE: 标准版 (桌⾯程序,控制台开发…)JavaME: 嵌⼊式开发 (⼿机,⼩家电…),已经凉了JavaEE: E企业级开发 (Web端,服务端开发…),JavaSE为基础JDK JRE JVMJDK:Java Development Kit (Java开发者⼯具,包括 JRE,JVM)JRE:Java Runtime Environment (Java运⾏时环境)JVM:Java Virtual Machine (Java虚拟机,跨平台核⼼)安装开发环境卸载JDk1. 删除Java安装⽬录2. 删除环境变量JAVA_HOME3. 删除path下关于JAVA的⽬录4. Java -version安装JDK1. 百度搜索JDK8,找到下载地址2. 同意协议,下载电脑对应的版本,如64位操作系统下载 jdk-8u281-windows-x64.exe3. 双击安装JDK4. 记住安装路径5. 配置环境变量1. 我的电脑-》属性-》系统⾼级设置-》环境变量2. 系统变量新建–> JAVA_HOME 输⼊对应的jdk安装路径3. path变量–>% JAVA_HOME%\bin6. 测试是否成功 cmd–>Java -versionJava基础注释1. 单⾏注释 //2. 多⾏注释 /* */3. ⽂档注释 /** */标识符和关键字Java 所有的组成部分都需要名字。
用java生成html文件实现原理及代码
⽤java⽣成html⽂件实现原理及代码原理跟⽤java⽣成jsp的servlet差不多。
我们可以⽤printStream来向html⽂件⾥输出数据。
先创建⼀个StringBuilder对象,通过append⽅法来为其添加html语句。
如下⾯例⼦所⽰:复制代码代码如下:StringBuilder sb = new StringBuilder();Properties fileProperties = getProperties("file");Properties sqlProperties = getProperties("sql");PrintStream printStream = new PrintStream(new FileOutputStream("report.html"));sb.append("<html>");sb.append("<head>");sb.append("<title>每⽇运营报表</title>");sb.append("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />");sb.append("<style type=\"text/css\">");sb.append("TABLE{border-collapse:collapse;border-left:solid 1 #000000; border-top:solid 1 #000000;padding:5px;}"); sb.append("TH{border-right:solid 1 #000000;border-bottom:solid 1 #000000;}");sb.append("TD{font:normal;border-right:solid 1 #000000;border-bottom:solid 1 #000000;}");sb.append("</style></head>");sb.append("<body bgcolor=\"#FFF8DC\">");sb.append("<div align=\"center\">");sb.append("<br/>");sb.append("<br/>");List<Map<String, Object>> result1 = getRpt(sqlProperties.getProperty("sql1"));for (Map.Entry<String, Object> m : result1.get(0).entrySet()) {sb.append(fileProperties.getProperty("file1"));sb.append(m.getValue());}sb.append("<br/><br/>");输出的话,也很简单。
Javascript学习心得
Javasc ript学习心得Java scrip t的应用目的通过对JavaS cript的学习,知道它是由C语言演变而来的,而且在很大程度上借用了J ava的语法,而Ja va又是由C和C++演生而来的,所以Ja vaScr ipt和C有许多相似的语法特点。
Java Scrip t的出现,可以使得信息和用户之间不仅只是一种显示和浏览的关系,而是实现了一种实时的、动态的、可交互的表达能力。
从而基于C GI 静态的HTML页面将被可提供动态实时信息,并对客户操作进行反应的W eb页面取代。
Jav aScri pt 脚本正是满足这种需求而产生的语言。
它深受广泛用户的喜爱和欢迎,它是众多脚本语言中较为优秀的一种。
Ja vascr ipt的优点 Jav aScri pt是一种基于对象和事件驱动并具有安全性能的脚本语言。
使用它的目的是与HTML超文本标记语言、Jav a 脚本语言一起实现在一个We b页面中链接多个对象,与Web客户交互作用。
从而可以开发客户端的应用程序等。
它是通过嵌入或调入在标准的HTML语言中实现的。
它的出现弥补了H TML语言的缺陷,它是Java与HTML折衷的选择,具有以下几个基本特点:一、脚本编写语言 Java Scrip t是一种脚本语言,它采用小程序段的方式实现编程。
像其它脚本语言一样,J avaSc ript同样已是一种解释性语言,它提供了一个简易的开发过程。
它的基本结构形式与C、C++、VB等语言十分类似。
但它不像这些语言一样,需要先编译,而是在程序运行过程中被逐行地解释。
它与HTM L标识结合在一起,从而方便用户的使用操作。
java获取html标签内容的方法
java获取html标签内容的方法在Java中,我们可以使用不同的方法来获取HTML标签的内容。
下面介绍几种常用的方法:1. 使用正则表达式:通过正则表达式可以方便地从HTML文档中提取标签内容。
我们可以使用`<标签名>(.*?)</标签名>`的正则表达式来匹配指定标签的内容,并提取出其中的文本。
示例代码如下:```javaString html = "<p>这是一个段落。
</p>";String pattern = "<p>(.*?)</p>";Pattern r = pile(pattern);Matcher m = r.matcher(html);if (m.find()) {String content = m.group(1);System.out.println(content);} else {System.out.println("未匹配到指定标签的内容");}```2. 使用Jsoup库:Jsoup是一个用于解析HTML的Java库,它提供了简洁易用的API来获取HTML标签的内容。
首先,需要使用Maven或者手动下载Jsoup,并将其引入到项目中。
然后,可以使用以下代码来获取指定标签的内容:```javaimport org.jsoup.Jsoup;import org.jsoup.nodes.Document;import org.jsoup.nodes.Element;String html = "<p>这是一个段落。
</p>";Document doc = Jsoup.parse(html);Element element = doc.select("p").first();String content = element.text();System.out.println(content);```3. 使用第三方库:除了Jsoup,还有其他一些开源的第三方库可以用于解析HTML,如HtmlUnit、NekoHTML等。
后端接口返回html的机制
后端接口返回html的机制
后端接口返回HTML的机制涉及到Web开发中的后端技术和前端
技术。
通常情况下,后端接口返回HTML的过程可以通过以下步骤来
解释:
1. 服务器端处理,当客户端(通常是浏览器)发送HTTP请求
到服务器时,服务器端的后端程序(比如使用Node.js、Python、Java、PHP等编程语言编写的服务器端程序)会接收到这个请求。
2. 生成HTML,后端程序根据接收到的请求,可能会从数据库
中获取数据,进行一些逻辑处理,然后将这些数据和逻辑处理结果
嵌入到HTML模板中,形成最终的HTML页面。
3. 返回HTML,生成的HTML页面会作为HTTP响应的一部分,
通过HTTP协议返回给客户端,客户端的浏览器接收到这个HTML响
应后会解析并渲染页面内容。
4. 前端渲染,在浏览器端,HTML页面被渲染成可视化的界面,同时浏览器可能会请求CSS样式表、JavaScript文件等资源来完善
页面的呈现。
在这个过程中,后端接口返回HTML的机制涉及到后端程序的数据处理和HTML生成,以及前端浏览器的页面渲染过程。
这种机制使得后端和前端可以分工合作,实现数据和界面的有效分离,从而提高了Web应用的灵活性和可维护性。
同时,也为实现前后端分离、实现RESTful API等现代Web开发模式提供了基础。
javaweb清华大学出版社
404错误表示的是客户端错误,表示路径出错 Tomcat将目录的列表功能关闭了,所以现在要 修改Tomcat中的web.xml文件
第一个程序Hello World。
hello.jsp <html> <head> <title>HELLO WORLD!!!</title> </head> <body> <% out.println("Hello World!!!<br>"); out.println("Hello World!!!"); %> </body> </html>
万维网上服务器所提供的文档需要通过浏览器进行访问, 浏览器是一种程序。
1993年,美国伊利诺伊大学的 Marc Andreessen开发并发布了 第一个图形化的浏览器,名为Mosaic。 Mosaic非常受欢迎,以至于在一年后Andreessen离开学校创办 了著名的Netscape公司(Netscape Communications Corp.), 其开发的浏览器称为Netscape Navigator。 1994年,CERN和MIT(Massachusetts Institute of Technology)签署了建立万维网联盟(World Wide Web Consortium,简称W3C)的协议,该组织致力于进一步开发Web、 对协议进行标准化等工作。 W3C的主页是/Consortium/,在这里可以获 得关于Web的最新信息。
配置虚拟目录
Tomcat中配置虚拟目录是必须的,因为所有的开发有可能是在 其他目录中完成的,当然,如果想要配置需要目录,则首先也 有严格的要求,配置的虚拟目录里必须有以下的目录结构: WEB ROOT->一般情况下虚拟目录要配置到此文件夹之中 WEB-INF web.xml:配置文件,有格式要求 但是,此时不知道文件的格式是什么,那么可以直接从Tomcat 中找到此配置要求。
传智 韩顺平 html+css+javascrtpt 课程笔记3(吐血整理)
javascript 3=============================================================================== 1.Dom(文档对象模型)编程简介DOM = Document Object Model(文档对象模型),根据W3C的DOM规范,DOM是HTML 与XML的应用编程接口(API),它将整个页面映射为一个由层次节点组成的文件。
编程人员通过访问dom 对象,就可以实现对浏览器本身、网页文档、网页文档中元素的操作,从而控制浏览器和网页元素的行为和外观。
2.html dom层次图dom编程的核心是各个dom 对象。
HTML DOM定义了访问和操作HTML文档的标准方法。
HTML DOM把HTML文档呈现为带有元素、属性和文本的树结构(节点树),每个节点是一个HTML DOM内置对象。
3.BOM(浏览器对象模型)介绍通过使用BOM,可移动窗口、更改状态栏文本。
bom 是w3c 组织提出的,他建议所有的浏览器都应当遵循这样的设计规范。
可以说bom 和dom 关系密切, 相互影响,bom 为纲,dom为目,我们可以简单的理解,dom 是bom 中document的具体实现。
要求浏览器必须支持4.常用dom对象window对象window 对象表示一个浏览器窗口或一个框架。
在客户端JavaScript中,Window 对象是全局对象,要引用当前窗口根本不需要特殊的语法,可以把那个窗口的属性作为全局变量来用。
注:在使用window对象的方法和属性的时候,可以不带window,如下window.alert(“韩顺平!”)等价于:alert(“韩顺平”)。
常用方法和属性:✧alert() 显示消息和一个确认按钮的警告框✧confirm() 显示消息以及确认按钮和取消按钮的对话框✧setInterval() 按照指定的周期(毫秒计)来循环调用函数或计算表达式✧clearInterval() 取消由setInterval()设置的定时器✧setTimeout() 指定的毫秒数后调用一次函数或计算表达式✧clearTimeout() 取消由setTimeout()设置的定时器✧moveTo() 把窗口的左上角移动到一个指定的坐标✧moveBy() 可相对窗口的当前坐标把它移动指定的像素✧resizeBy() 按照指定的像素调整窗口的大小✧resizeTo() 把窗口的大小调整到指定的宽度和高度✧open() 打开一个新的浏览器窗口或查找一个已命名的窗口✧close() 关闭窗口✧closed 返回窗口是否已被关闭✧status 设置窗口状态栏的文本✧opener 返回对创建此窗口的窗口的引用✧onload 页面装载✧onunload 关闭窗口案例:一个js版用户登录系统,当用户输入顺平密码是123,就跳到第二个页面,5秒后,自动跳转到第三个页面。
java在开发过程中实用小技巧
java在开发过程中实用小技巧以Java在开发过程中实用小技巧为题,我们将探讨一些能够提高开发效率和代码质量的实用技巧。
这些技巧涵盖了Java语言的各个方面,包括代码编写、调试、测试和性能优化等。
通过运用这些技巧,开发者可以更好地使用Java开发出高质量的应用程序。
1. 使用合适的命名规范在Java开发中,使用合适的命名规范可以让代码更易读、易于维护。
我们可以遵循驼峰命名法,即将变量名的首字母小写,后续每个单词的首字母大写。
对于类名和接口名,可以使用首字母大写的驼峰命名法。
此外,还应该避免使用过于简单或者过于复杂的命名,以免造成歧义或者增加阅读难度。
2. 使用注释在代码中使用注释可以提高代码的可读性。
我们可以使用单行注释(//)或者多行注释(/*...*/)来解释代码的用途和实现细节。
注释应该清晰、简明地描述代码的功能,并且避免重复或者无用的注释。
此外,注释也可以用于临时关闭一部分代码,以便于调试或者测试。
3. 使用断言断言是一种快速检查程序中的错误的方法。
通过在代码中插入断言语句,我们可以在运行时验证一些假设条件是否满足。
在开发过程中,我们可以使用断言来确保代码的正确性,同时也可以帮助我们快速定位和修复错误。
4. 使用日志在开发过程中,使用日志可以帮助我们记录代码的执行过程和运行状态。
通过使用合适的日志级别和消息内容,我们可以更好地监控和调试代码。
在Java中,常用的日志框架包括log4j和slf4j等,它们提供了丰富的日志功能和配置选项。
5. 使用异常处理在编写代码时,我们应该考虑到可能出现的异常情况,并进行相应的处理。
合理地使用try-catch语句,可以让我们的代码更加健壮和可靠。
同时,我们也可以自定义异常类来更好地描述和处理特定的异常情况。
6. 使用泛型泛型是Java中一种强大的类型安全机制,它可以让我们在编译时检查代码的类型一致性。
通过使用泛型,我们可以在编写通用代码时避免类型转换和类型检查的繁琐工作。
Java HTMLParser使用详解
声明:本人来自转载/HTMLParser具有小巧,快速的优点,缺点是相关文档比较少(英文的也少),很多功能需要自己摸索。
对于初学者还是要费一些功夫的,而一旦上手以后,会发现HTMLParser 的结构设计很巧妙,非常实用,基本你的各种需求都可以满足。
这里我根据自己这几个月来的经验,写了一点入门的东西,希望能对新学习HTMLParser 的朋友们有所帮助。
(不过当年高考本人语文只比及格高一分,所以文法方面的问题还希望大家多多担待)HTMLParser的核心模块是org.htmlparser.Parser类,这个类实际完成了对于HTML页面的分析工作。
这个类有下面几个构造函数:public Parser ();public Parser (Lexer lexer, ParserFeedback fb);public Parser (URLConnection connection, ParserFeedback fb) throws ParserException; public Parser (String resource, ParserFeedback feedback) throws ParserException; public Parser (String resource) throws ParserException;public Parser (Lexer lexer);public Parser (URLConnection connection) throws ParserException;和一个静态类public static Parser createParser (String html, String charset);对于大多数使用者来说,使用最多的是通过一个URLConnection或者一个保存有网页内容的字符串来初始化Parser,或者使用静态函数来生成一个Parser对象。
java实现html静态文件对比,包含样式
java实现html静态文件对比,包含样式(实用版)目录1.Java 实现 HTML 静态文件对比的背景和意义2.Java 实现 HTML 静态文件对比的基本原理3.Java 实现 HTML 静态文件对比的具体方法4.Java 实现 HTML 静态文件对比的优点和局限性5.总结和展望正文一、Java 实现 HTML 静态文件对比的背景和意义在 Web 开发中,HTML 静态文件对比是一项重要的任务。
它可以帮助我们比较两个 HTML 文件之间的差异,从而方便我们更好地进行代码管理和维护。
Java 作为一种广泛应用的编程语言,可以实现 HTML 静态文件的对比功能。
这对于我们的 Web 开发工作具有重要的实际意义。
二、Java 实现 HTML 静态文件对比的基本原理Java 实现 HTML 静态文件对比的基本原理是,通过读取两个 HTML 文件的内容,然后将它们进行比较,找出它们之间的差异。
为了实现这一功能,我们可以使用 Java 的文件读取和字符串比较功能。
三、Java 实现 HTML 静态文件对比的具体方法具体来说,我们可以按照以下步骤来实现 Java 的 HTML 静态文件对比功能:1.使用 Java 的 FileReader 类读取两个 HTML 文件的内容。
2.将读取到的文件内容进行编码,然后使用 Java 的 StringBuilder 类将它们转换为字符串。
3.使用 Java 的 String 类中的 compareTo 方法或者使用正则表达式等技术,对两个字符串进行比较,找出它们之间的差异。
4.将找出的差异以某种格式(例如,使用 HTML 标签或者其他标记)显示给用户。
四、Java 实现 HTML 静态文件对比的优点和局限性Java 实现 HTML 静态文件对比的优点是,Java 语言具有跨平台性,可以在多种操作系统上运行,因此,它实现的 HTML 静态文件对比功能具有较好的通用性。
java htmlunit 用法
一、什么是htmlunitHtmlUnit是一种用Java语言编写的开源框架,主要用于模拟浏览器行为。
它可以用于测试web应用程序、与web页面进行交互,并且可以解析和操作HTML页面。
二、为什么选择htmlunit1. 良好的兼容性:HtmlUnit支持HTML5、JavaScript、CSS3等最新的Web标准,可以准确地模拟各种浏览器。
2. 强大的功能:HtmlUnit可以模拟用户在浏览器中的操作,如点击信息、填写表单、提交数据等,实现自动化测试和爬虫等功能。
3.易于使用:HtmlUnit提供了丰富的API,使用简单,可以直接在Java代码中操作HTML页面。
三、htmlunit的基本用法1. 引入htmlunit库:在Java项目中,需要将htmlunit相关的jar包引入项目中。
2. 创建WebClient对象:WebClient是HtmlUnit的核心类,用于模拟浏览器行为。
可以通过创建WebClient对象来模拟浏览器的打开、浏览、关闭等操作。
3. 获取HtmlPage对象:通过WebClient对象,可以获取到HtmlPage对象,即表示浏览器当前所处的页面。
可以通过HtmlPage对象来进行页面操作。
4. 模拟浏览器操作:可以通过HtmlPage对象来模拟用户在浏览器中的操作,如点击信息、填写表单、提交数据等。
5. 获取页面内容:可以通过HtmlPage对象来获取页面的HTML内容、信息、表单等信息,从而实现对页面的解析和操作。
四、htmlunit的高级用法1. 处理JavaScript:HtmlUnit可以模拟浏览器中的JavaScript执行,支持对JavaScript进行解析和执行。
2. 处理Ajax请求:HtmlUnit可以模拟浏览器中的Ajax请求和异步加载,实现对动态页面的操作和解析。
3. 处理Cookie:HtmlUnit可以模拟浏览器中的Cookie信息,实现对用户登入状态的模拟和管理。
JAVA基础开发培训
Servlet JSP java实用类 javabean 静态文档如HTML、图片等 客户端类(如Applet) 描述Web应用的信息(web.xml)
LOGO
1.3.Servlet容器的概念
Servlet容器为Java Web应用提供运行时环境,它 负责管理Servlet和JSP的生命周期,以及管理它们 的共享数据。 Servlet 容 器 也 称 为 Java Web 应 用 容 器 , 或 者 Servlet/JSP容器。后文均采用Servlet容器的提法。 目前最流行的Servlet容器软件包括:
LOGO
1.1计算机网络协议
物理层:以太网 · 调制解调器 · 电力线通信(PLC) · SONET/SDH · G.709 · 光导纤维 · 同轴电缆 · 双绞线等 数据链路层:Wi-Fi(IEEE 802.11) · WiMAX(IEEE 802.16) · ARP · RARP ·ATM · DTM · 令牌环 · 以太网 ·FDDI · 帧 中继 · GPRS · EVDO ·HSPA · HDLC · PPP · L2TP ·PPTP · ISDN·STP 等 网络层协议:IP (IPv4 · IPv6) · ICMP· ICMPv6·IGMP ·ISIS · IPsec 等 传输层协议:TCP · UDP · TLS · DCCP · SCTP · RSVP · OSPF 等 应用层协议:DHCP · DNS · FTP · Gopher · HTTP· IMAP4 · IRC · NNTP · XMPP ·POP3 · SIP · SMTP ·SNMP · SSH ·TELNET · RPC · RTCP · RTP ·RTSP· SDP · SOAP · GTP · STUN · NTP· SSDP · BGP · RIP 等
JAVA:借用OpenOffice将上传的Word文档转换成Html格式
本文由我司收集整编,推荐下载,如有疑问,请与我司联系JAVA:借用OpenOffice 将上传的Word 文档转换成Html 格式2013/09/24 0 为什么会想起来将上传的word 文档转换成html 式呢?设想,如果一个系统需要发布在页面的文章都是来自word 文档,一般会执行下面的流程:使用word 打开文档,Ctrl A,进入发布文章页面,Ctrl V。
看起来也不麻烦,但是,如果文档中包含大量图片呢?尴尬的事是图片都需要重新上传吧?如果可以将已经编写好的word 文档上传到服务器就可以在相应页面进行展示,将会是一件非常惬意的事情,最起码信息发布人员会很开心。
程序员可能就不会这么想了,囧。
将Word 转Html 的原理是这样的:1、客户上传Word 文档到服务器2、服务器调用OpenOffice 程序打开上传的Word 文档3、OpenOffice 将Word 文档另存为Html 式4、Over至此可见,这要求服务器端安装OpenOffice 软件,其实也可以是MS Office,不过OpenOffice 的优势是跨平台,你懂的。
恩,说明一下,本文的测试基于MS Win7 Ultimate X64 系统。
下面就是规规矩矩的实现。
1、下载OpenOffice,download.openoffice/index.htmlSo easy...2、下载Jodconverter artofsolving/opensource/jodconverter 这是一个开启OpenOffice进行式转化的第三方jar 包。
3、泡杯热茶,等待下载。
4、安装OpenOffice,安装结束后,调用cmd,启动OpenOffice 的一项服务:C:\Program Files (x86)\OpenOffice 3\program soffice -headless -accept=socket,port=8100;urp;5、打开eclipse6、喝杯热茶,等待eclipse 打开。
Java开发常用包和学习平台
Java开发常用包和学习平台1.Unicode国际化:icu4j2.扩展了Java标准集合框架,高性能的库:fastutil3.高性能网络应用框架:Netty4.SpringBoot+Docker集成测试:Testcontainers5.HTTP 请求模拟测试框架:WireMock6.excel操作:poi-ooxml7.Java神器动态生成类:byte buddy8.断言神器:AssertJ9.java加密扩展:bcprov10.数据压缩组件:Zstd11.XSLT转换器:Xalan12.路由引擎构建器:Camel13.数据库重构工具:LiquiBase14.XML-Java绑定工具:xmlbeans15.高性能的,NOSQL图形数据库:neo4j16.svg格式图片转换:batik17.selenium驱动firefox:selenium-firefox18.介于ORM和JDBC的中间层:JOOQ19.科学计算类库:commons-math320.IP组播通讯工具集:jgroups21.Java使用PDFBox操作PDF文件:pdfbox22.调用WIN32平台功能:jna-platform23.java命令行编译器:ECJ24.搜索应用API服务:Apache Solr25.XML文档解析:xercesImpl26.Google开源的快速压缩解压库:Snappy27.Apache ThinkerPop框架下的图遍历语言:Gremlin28.Server端的响应式编程:projectreactor29.序列化工具:protobuf30.html页面分析工具:htmlunit31.Redis高级客户端:Lettuce32.创建胖客户端Web应用程序的Java框架:Vaadin Web33.工具检查java代码风格:Checkstyle34.将html转为pdf页面:openhtmltopdf35.针对Java的mocking框架:mockito36.RESTFUL请求服务JAVA框架:jersey37.Java与XML转换技术:jaxb38.java字节码操纵框架:ASM39.Java模板引擎:Handlebars40.缓存框架:Apache Geode41.基于JAVA1.8的高性能缓存库:Caffeine42.Java对象到xml的相互转换:castor43.绘制几何图形:esri geometry44.发送邮件:javax.mail45.Java 日期时间处理库:Joda-Time46.rest接口测试:rest-assured47.Java字节码编辑类库:Javassist48.HTTP 协议的客户端编程工具包:httpclient49.增强Java集合框架:commons-collections50.java调用C++外部函数:jnr-ffi51.轻量级IoC容器: Guice52.Java应用程序发送电子邮件:jakarta mail53.lz4压缩工具类:lz4-java54.Java对象和XML相互转换的工具:xstream55.WebSocket/Comet 框架:Atmosphere56.一款开源的数据库版本管理工具:Flyway57.监控指标的度量类库: Micrometer58.增强的ng包:commons-lang59.Java常用工具包: Jodd60.支持SVG的图形库:xmlgraphics61.java的图像io处理:jai-imageio62.XML处理器:woodstox63.解析css工具:ph-css64.批处理框架:spring batch65.Java数据库连接池:proxool66.XML操作库:dom4j67.IP地址库:ip2region68.Java转Objective-C工具: J2ObjC69.轻量级IO框架:okio70.轻量级熔断框架:Resilience4j71.RESTful 的 HTTP 网络请求框架的封装:retrofit72.OpenDocument文件转换器:jodconverter73.访问Google API组合的服务器端应用程序:google-oauth-client74.Zookeeper客户端:Curator75.实现文件上传下载:commons-fileUpload76.Java对象XML之间来回转换:spring-oxm77.纯Java实现的zlib压缩和解压缩包:jzlib78.SpringBoot使用MockMvc进行Controller的测试:spring-mock-mvc79.将xml解析成实体类对象:jackson-dataformat-xml80.一个书写匹配器对象时允许直接定义匹配规则的框架:hamcrest81.Java命令行解析器: JOpt Simple82.Java代码运行洞察库: Metrics83.随机生成Pojo对象,填充字段UnitTest利器:random-beans84.Java代码检查工具:Checker Framework85.OS指标及繁忙的进程:VJTop86.集成Epoll,异步、事件驱动的网络库:netty87.高效的支持HTTP2/SPDY的HTTP客户端:Okhttp388.Java的HTTP协议库:Apache HttpComponents89.用于spring boot的分布式系统的延迟和容错库:Hystrix90.加密、编码、md5:Apache commons-codec91.超快速超轻量级并行化的Java类路径扫描程序:classgraph92.全文搜索应用服务器:Solr93.XML操作类库:Woodstox94.http的mime请求类型库:httpmime95.轻量数据库连接池组件:HikariCP96.带有OpenID连接扩展的OAuth2.0 SDK开发包:oauth2-oidc-sdk97.面向连接的、消息驱动的协议:RSocket98.java,js,json,html,css,xml转义库:unbescape99.Java EE的校验检查库:jakarta.validation100.jwt库(使用高版本,低版本有漏洞):nimbus-jose-jwt101.JSONObject、JSONString、Beans之间的转换,JSON处理类库:json-smart102.更加高效易用的IO库:Okio103.apache的IO工具类包:commons-io104.apache的通用的日志库:commons-logging105.Full stack framework类似webform的服务器端编程模型的UI框架:vaadin flow106.基于规则的路由以及媒介引擎:Apache Camel107.pkcs7包,加密解密,签名验签:bcpkix108.无损压缩算法:lz4-java109.facebook使用的快速数据压缩算法:zstd110.Google开源的压缩/解压缩库:snappy-java111.spring集成的json web token库:jjwt112.开源私有云PaaS平台:Cloud Foundry113.SSH2的一个纯Java实现:jsch114.google用Java实现的BitMap算法:JavaEWAH115.生成和解析YAML的工具:snakeyaml116.protobuf协议工具:protobuf-java-util117.java8的日期时间解析扩展包:threetenbp118.google的http客户端:google-http-client119.一个高性能、开源和通用的 RPC 框架:grpc120.Java加密扩展和Java安全套接字扩展:conscrypt121.统计收集和分布式追踪框架:OpenCensus122.JSON查询分析:JMESPath123.Java 8 的对象函数式扩展:vavr124.服务网格(微服务间网络调用、限流、熔断和监控)解决方案:consul125.apache的操作配置文件的工具包:commons-configuration126.时间日期工具包:joda-time127.Xpath语法操纵符合Java类命名规范的JavaBeans的工具:commons-jxpath128.开源语法分析器:antlr129.配置管理API、微服务配置组件变色龙:Archaius130.JSR311 规范标准的 REST Web Service:jsr311-apiflix的服务发现框架:eureka132.快速开源且符合StAX规范的XML操作库:woodstox133.基于事件的xml解析框架:xmlpull134.一个非常快的XML解析器:xpp3135.一个针对分布式系统的延迟和容错库:hystrix136.图表工具:d3js137.apache的通用集合类:commons-collections138.微服务网关:zuul139.优雅地调用HTTP API,服务消费端的调用框架:feign140.开源的分布式实时数据追踪:Zipkin141.Java安全框架,执行身份验证、授权、密码和会话管理:Apache Shiro142.大数据流通讯的开发包,解决发送大文件时内存溢出问题:rmiio143.有数据库功能的内存数据网格:Apache Geode144.开源JMX管理框架,支持JSR3 (JMX) 和JSR160 :mx4j145.Spring表达式语言:spring-expression146.解决Session共享:spring session147.不需要 Mapping实体映射绑定,把sql直接映射成RESTful风格的json api的工具:Dataway148.开发GraphQL API,支持Postgres,MySQL的库:GraphQLize149.facebook分布式的sql查询引擎for大数据,可对250PB以上的数据进行快速地交互式分析: facebook presto150.轻量级的故障处理Java库: failsafe151.cglib代理实现AOP的一种方式(和他对应的是java动态代理): cglib-nodep152.数据验证框架: Apache BVal153.空间数据操作的核心算法,空间分析工具包: jts-core154.一个更好用的JWT库,简单易用,API非常易于理解: nimbus-jose-jwt155.一个jwt,加密库:jose4j156.前后端分离时,后端没有假数据的情况下,生成假数据测试:easymock157.阿里最快的JOSN解析库(可能有漏洞):Fastjson158.Google的Java和 JSON映射库:Gson159.辅助工具类,比如字符串,数值,反射,序列化:Apache Commons Lang3160.java互调用的脚本语法:BeanShell161.实现对SVG的操作库:Batik Svggen162.对于Java友好的开源微服务管理平台:Fabric8163.规则引擎:drools164.雪花算法:LShift Diffa Snowflake165.分布式雪花算法:RelOps Snowflake166.DNS的一个Java实现:DNSJava167.解析css库:PH CSS168.访问各种不同的文件系统提供了单一的应用程序编程接口:Apache Commons VFS169.加密解密工具类:JBCrypt170.正则表达式库: Jakarta ORO171.从正则表达式生成字符串: Generex172.分布式系统跟踪库:OpenTracing API173.微服务链路跟踪:Zipkin174.Spring异常重试框架: Spring Retry175.PDF文档处理:Apache PDFBox176.生成PDF或rtf的文档,将XML、Html文件转化为PDF文件: iText177.Java 权限引擎,通过JWT控制:Pac4j178.一个开源的函数式库:Javaslang179.实现编译原理、词法解析、语法解析:ANTLR180.语法生成器、词法生成器,构建编译系统:JavaCC181.一个混合的Java/Scala库,提供了基于解析表达文法(PEGs)的轻量级、易用、功能强大的任意输入文本解析:Parboiled182.事件驱动的并发通信:Akka Remote183.微服务框架:Finagle184.一个开源的异步HTTP/2 RPC/REST客户端/服务器库,构建在Java 8、Netty、Thrift和gRPC之上:Armeria185.提供了一种使用流处理文件IO和TCP连接的方法:Akka Stream186.实时流计算:Structured Streaming187.Twitter的高性能RPC框架:Finagle188.文件上传组件:Apache Commons FileUpload189.一种基于java的Web应用程序框架,采用了组件的概念:Tapestry190.处理字符串的算法库,计算文本相似度算法:Apache Commons Text191.java源码解析:JavaParser192.实现对象池化库:Apache Commons Pool193.少锁定Java对象池:Furious Objectpool194.一个Java安全框架:PicketBox195.java调用opengl数学库:JOML196.Java的处理地理数据的API:JTS Topology Suite197.数学工具库:Apache Commons Math198.纯JAVA语言软件实现三维图形图表组件:Matplot3D-for-Java199.一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容:JSoup200.一个Java语言的HTML扫描器和标签补全器(tag balancer),使得程序能解析HTML文档并用标准的XML接口来访问其中的信息:Neko HTML201.Java开发符合SAX的HTML解析器:TagSoup202.提供了一个HTML的语法检查器,将html转为严格化的xhtml:JTidy203.HTML解析器库,分析和处理HTML,包括一些通用的服务器端标签,同时也可以重新生成无法识别的或无效的HTML。
Java常用命令汇总
Java常⽤命令汇总这篇⽂章就主要向⼤家展⽰了Java编程中常⽤的命令,下⾯看下具体内容。
1、javac将⽂件编译成.class⽂件⽤法: javac <options> <source files>其中, 可能的选项包括:-g ⽣成所有调试信息-g:none 不⽣成任何调试信息-g:{lines,vars,source} 只⽣成某些调试信息-nowarn 不⽣成任何警告-verbose 输出有关编译器正在执⾏的操作的消息-deprecation 输出使⽤已过时的 API 的源位置-classpath <路径> 指定查找⽤户类⽂件和注释处理程序的位置-cp <路径> 指定查找⽤户类⽂件和注释处理程序的位置-sourcepath <路径> 指定查找输⼊源⽂件的位置-bootclasspath <路径> 覆盖引导类⽂件的位置-extdirs <⽬录> 覆盖所安装扩展的位置-endorseddirs <⽬录> 覆盖签名的标准路径的位置-proc:{none,only} 控制是否执⾏注释处理和/或编译。
-processor <class1>[,<class2>,<class3>...] 要运⾏的注释处理程序的名称; 绕过默认的搜索进程-processorpath <路径> 指定查找注释处理程序的位置-d <⽬录> 指定放置⽣成的类⽂件的位置-s <⽬录> 指定放置⽣成的源⽂件的位置-implicit:{none,class} 指定是否为隐式引⽤⽂件⽣成类⽂件-encoding <编码> 指定源⽂件使⽤的字符编码-source <发⾏版> 提供与指定发⾏版的源兼容性-target <发⾏版> ⽣成特定 VM 版本的类⽂件-version 版本信息-help 输出标准选项的提要-A关键字[=值] 传递给注释处理程序的选项-X 输出⾮标准选项的提要-J<标记> 直接将 <标记> 传递给运⾏时系统-Werror 出现警告时终⽌编译@<⽂件名> 从⽂件读取选项和⽂件名2、java执⾏ .class⽂件,若类中没有main函数,则不能执⾏。
Java将Word转为HTML的方法
Java将Word转为HTML的⽅法本⽂介绍如何在JAVA程序中将Word⽂档通过Document.saveToFile()⽅法转换为HTML⽂档。
编辑代码前,参考如下环境配置,导⼊jar包。
【程序环境】1. IntelliJ IDEA 2018( jdk 1.8.0)2. 测试⽂档:Word 2013(.docx)3. Jar包:Free Spire.Doc for Java 3.9.0导⼊jar的两种⽅法:⽅法1:下载jar包到本地,解压,将本地lib⽂件夹下的Spire.Doc.jar导⼊Java程序,步骤如下:导⼊结果:⽅法2:maven程序中需要配置pom.xml⽂件,指定maven仓库路径和spire.doc.free的依赖,配置内容如下:<repositories><repository><id>com.e-iceblue</id><url>/repository/maven-public/</url></repository></repositories><dependencies><dependency><groupId>e-iceblue</groupId><artifactId>spire.doc.free</artifactId><version>3.9.0</version></dependency></dependencies>【Java】import com.spire.doc.*;public class WordtoHtml {public static void main(String[] args) {Document doc = new Document();doc.loadFromFile("test.docx");doc.saveToFile("wordtohtml.html",FileFormat.Html);doc.dispose();}}转换效果Word测试⽂档:转换后的HTML⽂件:注:代码中的⽂件路径为IDEA程序项⽬⽂件夹路径,如 F:\IDEAProject\Conversion_Doc\test.docx ,⽂件路径可以另⾏⾃定义为其他路径。
Java实现从Html文本中提取纯文本的方法
Java实现从Html⽂本中提取纯⽂本的⽅法1、应⽤场景:从⼀份html⽂件中或从String(是html内容)中提取纯⽂本,去掉⽹页标签;2、代码⼀:replaceAll搞定//从html中提取纯⽂本public static String StripHT(String strHtml) {String txtcontent = strHtml.replaceAll("</?[^>]+>", ""); //剔出<html>的标签txtcontent = txtcontent.replaceAll("<a>\\s*|\t|\r|\n</a>", "");//去除字符串中的空格,回车,换⾏符,制表符return txtcontent;}3、代码⼆:正则表达式搞定//从html中提取纯⽂本public static String Html2Text(String inputString) {String htmlStr = inputString; // 含html标签的字符串String textStr = "";java.util.regex.Pattern p_script;java.util.regex.Matcher m_script;java.util.regex.Pattern p_style;java.util.regex.Matcher m_style;java.util.regex.Pattern p_html;java.util.regex.Matcher m_html;try {String regEx_script = "<[\\s]*?script[^>]*?>[\\s\\S]*?<[\\s]*?\\/[\\s]*?script[\\s]*?>"; // 定义script的正则表达式{或<script[^>]*?>[\\s\\S]*?<\\/script> String regEx_style = "<[\\s]*?style[^>]*?>[\\s\\S]*?<[\\s]*?\\/[\\s]*?style[\\s]*?>"; // 定义style的正则表达式{或<style[^>]*?>[\\s\\S]*?<\\/style>String regEx_html = "<[^>]+>"; // 定义HTML标签的正则表达式p_script = pile(regEx_script, Pattern.CASE_INSENSITIVE);m_script = p_script.matcher(htmlStr);htmlStr = m_script.replaceAll(""); // 过滤script标签p_style = pile(regEx_style, Pattern.CASE_INSENSITIVE);m_style = p_style.matcher(htmlStr);htmlStr = m_style.replaceAll(""); // 过滤style标签p_html = pile(regEx_html, Pattern.CASE_INSENSITIVE);m_html = p_html.matcher(htmlStr);htmlStr = m_html.replaceAll(""); // 过滤html标签textStr = htmlStr;} catch (Exception e) {System.err.println("Html2Text: " + e.getMessage()); }//剔除空格⾏textStr=textStr.replaceAll("[ ]+", " ");textStr=textStr.replaceAll("(?m)^\\s*$(\\n|\\r\\n)", "");return textStr;// 返回⽂本字符串}4、代码三:HTMLEditorKit.ParserCallback搞定,Java⾃带的类package com.util;import java.io.*;import javax.swing.text.html.*;import javax.swing.text.html.parser.*;public class Html2Text extends HTMLEditorKit.ParserCallback {StringBuffer s;public Html2Text() {}public void parse(Reader in) throws IOException {s = new StringBuffer();ParserDelegator delegator = new ParserDelegator();// the third parameter is TRUE to ignore charset directivedelegator.parse(in, this, Boolean.TRUE);}public void handleText(char[] text, int pos) {s.append(text);}public String getText() {return s.toString();}public static void main (String[] args) {try {// the HTML to convert//Reader in=new StringReader("string");FileReader in = new FileReader("java-new.html");Html2Text parser = new Html2Text();parser.parse(in);in.close();System.out.println(parser.getText());}catch (Exception e) {e.printStackTrace();}}}以上这篇Java实现从Html⽂本中提取纯⽂本的⽅法就是⼩编分享给⼤家的全部内容了,希望能给⼤家⼀个参考,也希望⼤家多多⽀持。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
JavaToHtml
为了方便在blog中粘贴源代码,特意找了这方面的工具(本来琢磨自己写,可惜能力有限,再次受打击了~~~)
JavaToHtml开源,Eclipse Plugin
大家都知道读源代码很累,读乱七八糟的源代码那就想吐了,所以格式化源代码还是很有必要的,不信看看下面的例子。
格式化后的漂亮效果:
import java.util.Vector;
public class Stack<T> {
private Vector<T> content;
public Stack() {
content = new Vector<T>();
}
public void push(T t) {
content.add(t);
}
public T peek() {
if (content.size() == 0) {
return null;
}
return content.get(content.size() - 1);
}
public T pop() {
if (content.size() == 0) {
return null;
}
return content.remove(content.size() - 1);
}
public int size() {
return content.size();
}
public String toString() {
return content.toString();
}
}
下面是原版的:
import java.util.Vector;
public class Stack<T> {
private Vector<T> content;
public Stack() {
content = new Vector<T>();
}
public void push(T t) {
content.add(t);
}
public T peek() {
if (content.size() == 0) {
return null;
}
return content.get(content.size() - 1);
}
public T pop() {
if (content.size() == 0) {
return null;
}
return content.remove(content.size() - 1);
}
public int size() {
return content.size();
}
public String toString() {
return content.toString();
}
}
更有甚者:
package com.calculator.base;import java.util.Vector;public class Stack<T>{ private Vector<T>content;public Stack(){content=new Vector<T>();}public void push(T t){content.add(t);}public T peek(){if(content.size()==0){return null;} return content.get(content.size()-1);}public T pop(){if(content.size()==0){
return null;}return content.remove(content.size()-1);}public int size(){return content.size();}public String toString(){return content.toString();}}
是不是觉得想吐呢?哈哈,如果你想要快速掌握Java基础知识,可以进群,【五一四,一六七,六七八】。