java代码嵌入html代码是什么_用java给html文件添加必要的控制html代码片

本文介绍了一种在CMS系统中通过Jsoup插件动态添加和更新页面内容的方法。作者提供了两种实现方式,分别是通过右键菜单和添加按钮区域。示例代码演示了如何将业务相关的HTML代码插入到页面的特定区域,并最终保存到新的HTML文件中。
摘要由CSDN通过智能技术生成

这个需求,我估计很多时候都不会用到,但是,我们目前在做一个CMS的系统,在创建页面的时候,需要控制页面各个板块显示的内容来源,这个不是关键,关键是页面内容配置完毕后,如何提交内容,也就是说如何和后台系统通信。这个时候,有两种做法,一种是在页面的控制区域内添加右键菜单,实现这个功能。另外一个做法,就是在页面中添加按钮区域来实现。

但是不管那种做法,控制区域的html页面上的逻辑代码片,都不可能在模板里面添加,这是不友好的,客户也是不会考虑这个的,再说了,他也没有办法考虑。所以,需要CMS系统自动最近这个控制区域的html代码片。于是,java操作html的插件就诞生了!有不少类似的插件,这里我选择比较简单的jsoup插件。下面的简单实验,用到的版本是1.9.2,就一个jar包,不需要额外的资源了。

我这里上代码,分别说明右键实现,以及直接追加button的方式实现。

先说右键实现方案,这里,右键菜单是用bootstrap-contextmenu.js插件实现的,是基于bootstrap风格的。

1 /**

2 *@author"shihuc"3 * @date 2016年5月21日4 */

5 packageopc;6

7 importjava.io.File;8 importjava.io.FileOutputStream;9 importjava.io.IOException;10 importjava.io.OutputStreamWriter;11

12 importorg.jsoup.Jsoup;13 importorg.jsoup.nodes.Document;14 importorg.jsoup.nodes.Element;15 importorg.jsoup.select.Elements;16

17 /**

18 *@author"shihuc"19 *20 */

21 public classDemo {22

23 /**

24 *@paramargs25 *@throwsIOException26 */

27 public static void main(String[] args) throwsIOException {28 File input = new File("./example.html");29 Document doc = Jsoup.parse(input, "UTF-8");30 System.out.println(doc.html());31 Elements content = doc.getElementsByTag("body");32 //找到body的内容

33 String body = content.get(0).html();34 System.out.println(body);35

36 //读取控制页面右键的代码片段

37 File pice = new File("./pice.html");38 Document pdoc = Jsoup.parse(pice, "UTF-8");39 Element control_area = pdoc.getElementById("tk-cms-page-context-menu-control-area");40

41 //将业务相关的html代码片添加到右键菜单控制区域中

42 control_area.append(body);43

44 //将带有业务相关代码的html内容填写到原来的example.html文件的body区域

45 content.get(0).html(pdoc.html());46

47 FileOutputStream fos = new FileOutputStream("./output.html", false);48 OutputStreamWriter osw = new OutputStreamWriter(fos, "UTF-8");49 osw.write(doc.html());50 osw.close();51 }52

53 }

这里的example.html文件的内容如下:

1

2

3

4

5

6

7

This is a test page

8

9

10

11

12

13

14

那个pice.html的内容如下:

1

2 .vCenter3 {

4 vertical-align:middle;

5 margin:0 auto;

6 }

7

8

9

10

11

Cancel

12

Action

13

14

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值