StringBuilder拼接html非常简便的方法

Java字符串拼接三剑客:String、StringBuffer与StringBuilder原理与选型指南 字符串拼接是Java开发中最基础也最易被低估的性能关键点。其本质涉及不可变对象设计、堆内存分配、GC压力及线程安全模型等核心机制。String因不可变性保障线程安全与常量池优化,但循环拼接会引发高频对象创建与GC风暴;StringBuffer通过synchronized提供方法级线程安全,却带来显著锁开销;StringBuilder以无锁可变字符序列实现单线程极致性能。在日志组装、JSON构建、SQL生成等高频动态拼接场景中,三者选型直接决定系统吞吐与稳定性。本文结合JVM底层(char[]扩容策略、Str 阅读详情

虽然没啥使用价值,但是对于刚学习的萌新来说,还是有点用处的,毕竟都是这么一步步过来的!

灵感来源

有时候,我们会将html代码转换成java中的字符串,但是,工具只会帮我们用String拼接的方法来进行操作,由于String是不可变长的字符串。这样一旦html代码比较多的话,效率会非常非常低,所以我想到用StringBuilder进行拼接,但是,这又出现了一个难点,这么多+号,要是一个一个手动更改的话,那估计得累死。然后想到了那个ctrl+f的一键替换的功能,但是,该怎么替换呢?请看下面的步骤。

操作步骤

1.html代码示例

<!DOCTYPE html>
<html>

	<head>
		<meta charset="utf-8" />
		<title>展示联系人页面</title>
		<style type="text/css">
			img {
				width: 30px;
				height: 30px;
			}
			
			#title {
				text-align: center;
				/*控制div的字体大小*/
				font-size: 30px;
				/*控制文本和边框之间的距离*/
				padding: 15px;
			}
			/*使光标放在超连接上变红*/
			
			a:hover {
				color: red;
			}
			
			a {
				color: blue;
			}
			
			form {
				text-align: center;
				font-family: 微软雅黑;
				font-size: 18px;
			}
			
			thead {
				color: white;
			}
		</style>
	</head>

	<body>
		<div id="title">展示所有联系人</div>
		<hr />
		<form action="" method="post">
			<div style=" text-align: center;">
				<div style="width: 48%;margin: auto;position:relative">
					<tr>
						<td>
							<a href="addPerson.html" style="position: relative;top: 0px;right: 170px;">
								<img src="img/add.png" />
							</a>
						</td>
						<td>
							<input type="search" style="position: relative;top: -5px;right: -166px;" />
						</td>
						<td>
							<input type="button" value="搜索" style="position: relative;top: -5px;right: -170px;" />
						</td>
					</tr>
				</div>
				<table border="1" cellspacing="1" cellpadding="3" style="margin: auto; width: 35%;">
					<thead bgcolor="aquamarine">
						<tr>
							<th>
								<input type="button" value="删除选中" />
							</th>
							<th>&emsp;</th>
							<th>ID</th>
							<th>USERNAME</th>
							<th>AGE</th>
							<th>PHONE</th>
							<th>ADDRESS</th>
							<th>删除</th>
							<th>修改</th>
						</tr>
					</thead>
					<tbody>
						这里面循环
					</tbody>
				</table>
			</div>
		</form>
	</body>

</html>

2.java代码示例

//第一步,当然是创建一个StringBuilder对象
StringBuilder sb = new StringBuilder("<!DOCTYPE html>\r\n");
/*
 * 第二步,定义一个String html = "";然后将html直接复制在""双引号中,mye会自动转换成字符串拼接形式
 * 如果不行的话,可以在将代码复制在oracle数据库中,选中右键,选择复制的格式为java,然后就行了,这里不多说
 * 第三步,ctrl+f,将+号全部替换成 ).append( 这样就可以了。然后稍微去头加尾就行了,效果如下:
 */
		String html = sb.append( 
				"<html>\r\n" ).append( 
				"\r\n" ).append( 
				"	<head>\r\n" ).append( 
				"		<meta charset=\"utf-8\" />\r\n" ).append( 
				"		<title>展示联系人页面</title>\r\n" ).append( 
				"		<style type=\"text/css\">\r\n" ).append( 
				"			img {\r\n" ).append( 
				"				width: 30px;\r\n" ).append( 
				"				height: 30px;\r\n" ).append( 
				"			}\r\n" ).append( 
				"			\r\n" ).append( 
				"			#title {\r\n" ).append( 
				"				text-align: center;\r\n" ).append( 
				"				/*控制div的字体大小*/\r\n" ).append( 
				"				font-size: 30px;\r\n" ).append( 
				"				/*控制文本和边框之间的距离*/\r\n" ).append( 
				"				padding: 15px;\r\n" ).append( 
				"			}\r\n" ).append( 
				"			/*使光标放在超连接上变红*/\r\n" ).append( 
				"			\r\n" ).append( 
				"			a:hover {\r\n" ).append( 
				"				color: red;\r\n" ).append( 
				"			}\r\n" ).append( 
				"			\r\n" ).append( 
				"			a {\r\n" ).append( 
				"				color: blue;\r\n" ).append( 
				"			}\r\n" ).append( 
				"			\r\n" ).append( 
				"			form {\r\n" ).append( 
				"				text-align: center;\r\n" ).append( 
				"				font-family: 微软雅黑;\r\n" ).append( 
				"				font-size: 18px;\r\n" ).append( 
				"			}\r\n" ).append( 
				"			\r\n" ).append( 
				"			thead {\r\n" ).append( 
				"				color: white;\r\n" ).append( 
				"			}\r\n" ).append( 
				"		</style>\r\n" ).append( 
				"	</head>\r\n" ).append( 
				"\r\n" ).append( 
				"	<body>\r\n" ).append( 
				"		<div id=\"title\">展示所有联系人</div>\r\n" ).append( 
				"		<hr />\r\n" ).append( 
				"		<form action=\"\" method=\"post\">\r\n" ).append( 
				"			<div style=\" text-align: center;\">\r\n" ).append( 
				"				<div style=\"width: 48%;margin: auto;position:relative\">\r\n" ).append( 
				"					<tr>\r\n" ).append( 
				"						<td>\r\n" ).append( 
				"							<a href=\"addPerson.html\" style=\"position: relative;top: 0px;right: 170px;\">\r\n" ).append( 
				"								<img src=\"img/add.png\" />\r\n" ).append( 
				"							</a>\r\n" ).append( 
				"						</td>\r\n" ).append( 
				"						<td>\r\n" ).append( 
				"							<input type=\"search\" style=\"position: relative;top: -5px;right: -166px;\" />\r\n" ).append( 
				"						</td>\r\n" ).append( 
				"						<td>\r\n" ).append( 
				"							<input type=\"button\" value=\"搜索\" style=\"position: relative;top: -5px;right: -170px;\" />\r\n" ).append( 
				"						</td>\r\n" ).append( 
				"					</tr>\r\n" ).append( 
				"				</div>\r\n" ).append( 
				"				<table border=\"1\" cellspacing=\"1\" cellpadding=\"3\" style=\"margin: auto; width: 35%;\">\r\n" ).append( 
				"					<thead bgcolor=\"aquamarine\">\r\n" ).append( 
				"						<tr>\r\n" ).append( 
				"							<th>\r\n" ).append( 
				"								<input type=\"button\" value=\"删除选中\" />\r\n" ).append( 
				"							</th>\r\n" ).append( 
				"							<th>&emsp;</th>\r\n" ).append( 
				"							<th>ID</th>\r\n" ).append( 
				"							<th>USERNAME</th>\r\n" ).append( 
				"							<th>AGE</th>\r\n" ).append( 
				"							<th>PHONE</th>\r\n" ).append( 
				"							<th>ADDRESS</th>\r\n" ).append( 
				"							<th>删除</th>\r\n" ).append( 
				"							<th>修改</th>\r\n" ).append( 
				"						</tr>\r\n" ).append( 
				"					</thead>\r\n" ).append( 
				"					<tbody>\r\n" ).append( 
				"						这里面循环\r\n" ).append( 
				"					</tbody>\r\n" ).append( 
				"				</table>\r\n" ).append( 
				"			</div>\r\n" ).append( 
				"		</form>\r\n" ).append( 
				"	</body>\r\n" ).append( 
				"\r\n" ).append( 
				"</html>").toString();

这样就操作完了,是不是很方便呢 ~~

C#中在窗体应用中使用StringBuilder拼接显示网页 场景 CS中使用StringBuilder拼接html显示网页。 效果 实现 新建窗体应用 拖拽控件WebBrower用来显示网页。 拖拽之后,默认是停靠父容器,点击右上角,取消停靠父容器。 取消之后 然后再拖拽一个Button控件,双击进入Button控件的点击事件的编写中。 private void button1_Click(obj... 阅读详情

相关推荐

html转换成stringbuilder 输出程序

将html代码贴进去之后,可转换成stingbuilder输出的格式,免去了手动写转义符的麻烦. 代码就几行,而且不再本机,所以就没有打包,想要的话可以自己反编译或者去我的blog www.cnblogs.com/wingurumqi

Java阶段二Day01

今天是学习Java阶段二的第一天,在给阶段一做了个收尾后,开始简单介绍了关于前端HTML的一些知识,然后了解了如何创建SpringBoot项目,并开始制作一个关于用户注册的案例演示,以项目驱动学习

今天你学Java了吗 493

C#源代码-使用StringBuilder来拼接HTML中的Table表格.zip

C#源代码-

java 实现html页面内容

最近刚好有类似的需求,在这里记录一下(主要针对简单的文件邮件),我用的是。后续持续更新 2022.09.28。5.写入超链接 & 指定色号。4.加粗 & 指定色号。来实现的文本的拼接。

黄黄黄黄黄的博客 811

抖音自定义卡片链接(图文链接)

抖音自定义可以自定义标题,打开链接,和展示图片 效果 主要代码 public void sendMessage(String conversationId, Object aBaseContent) throws Exception { // C233282u5.LIZIZ.LIZ().LIZIZ(LIZ).LIZ(obtain).LIZ(hLn).LIZ((AbstractC59811HHc) new H9Q()); Object HOa = ReflectionUtil

傅恒的博客 4140

RTL优化与PPA分析:数字电路设计的关键技术

在数字集成电路设计中,RTL(寄存器传输级)优化是提升芯片性能、降低功耗和减小面积的核心技术。通过PPA(Power-Performance-Area)指标的平衡,工程师可以在不同时序约束下实现设计的最优化。本文基于Synopsys Design Compiler和开源工具Yosys的实验数据,展示了RTL优化在算术单元和控制逻辑中的显著效果,特别是在乘法器和除法器等复杂运算模块中。文章还探讨了AI辅助工具在RTL优化中的应用潜力,为数字电路设计提供了实用的技术参考和工程实践建议。

weixin_42186387的博客 619

Java中的HTML生成

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

weixin_46372265的博客 2140

拆解特斯拉Optimus的关节技术:谐波减速器在仿人机器人中的5个精妙设计

本文深度解析特斯拉Optimus仿人机器人关节中的谐波减速器技术,揭示其五大工程突破:微型化材料革命、两万分之一圈精度实现、碳纤维柔轮轻量化、智能运维系统及国产替代方案。重点探讨谐波减速器如何通过创新设计和先进材料实现精准传动,为仿人机器人提供高效可靠的关节动力解决方案。

omega的博客 1075

String/StringBuffer/Stringbuilder字符串拼接使用

认识String、StringBuffer和StringBuilder String:是常亮,其本身不可变,若拼接的话,每次都是新创建对象,消耗很大; StringBuffer和StringBuilder 是可变的,都适合用与字符串拼接但StringBuilder比StringBuffer速度快很多,而且StringBuilder是单线程,不是线程安全的,一般使用StringBuilder; 测试...

weixin_43199278的博客 1415

别再死记硬背参数了!用ADS手把手教你仿真一个4GHz镜像抑制混频器(附完整工程文件)

本文详细解析了4GHz镜像抑制混频器的ADS仿真全流程,从理论到实践,涵盖混频器设计基础、ADS工程搭建、二极管选型、非线性仿真及性能优化。通过实战案例,帮助工程师掌握关键参数平衡与调试技巧,提升射频电路设计效率。

weixin_42552716的博客 338

PCL 计算点云包围球【2025最新版】

包围球通常用于简单排斥,因为与球体相交的方程很简单,同样重要的是,旋转一个球体并不会改变其范围。因此,当包围球用于简单排斥时,如果球体中心是对象的原点,则可以忽略对象的方向。

点云侠的博客 2068

Java字符串拼接与StringBuilder性能优化指南

字符串处理是编程中的基础操作,Java中的String对象因其不可变(immutable)特性,在频繁修改时会产生性能问题。StringBuilder作为可变字符序列,通过预分配内存和动态扩容机制显著提升了字符串拼接效率。其核心原理是维护可扩展的字符数组,避免频繁对象创建。在循环拼接、动态构建SQL等高频操作场景中,合理使用StringBuilder能降低90%以上的性能开销。本文通过实例对比了+操作符与StringBuilder的差异,并详解了初始容量设置、链式调用等工程实践技巧。

weixin_34122604的博客 391

华为OD面试手撕真题目录

2026最新华为OD面试手撕真题 , 提供Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解.

qq_45776114的博客 1万+

service 层 拼接的html 代码如何直接返回_字符串拼接,会走StringBuilder 吗?

前言最近在突然想到了String字符串拼接问题,于是做了一个demo测试了一下,到底String类型的字符串在拼接的时候,哪种情况下会走会走StringBulider进行字符串拼接,而哪种情况编译器会对代码进行优化?话不多说,先看demo一.问题案例1可以发现,str == str2的结果为false,那么我们在看看下一个例子。案例2这时候,两个字符串对比的结果为true。二.探究问题这...

weixin_39526415的博客 113

dolphinscheduler集群服务一键安装启动实现流程剖析

通过以上分析我们基本梳理清楚了整个dolphinscheduler项目的一键安装启动逻辑, 我们现在在通过一张图正好理一下整个实现流程。关于一键停止集群服务及一件查询集群各个角色服务实例运行状态的实现也都在stop-all.sh/status-all.sh及dolphinscheduler-daemon.sh这三个脚本中, 有兴趣自行研究。写这篇文章的核心目的不仅在于给大家分享如何优秀的开源项目的一键安装部署的实现过程。

最爱嫣夜来 1207

笔试题-2023-思特威-数字电路设计(CIS)【纯净题目版】

10 笔试题-2023-思特威-数字电路设计(CIS)【纯净题目版】

w0shishabi的博客 1471

html 的拼合页面,后台拼接HTML显示到前台

引言:很多时候我们需要动态生成页面,除了绑定数据之外,有时候页面也是不同的,这时候就需要在后台把页面拼接好,然后在前台显示需要的页面形式,现总结代码如下,以备后需。方法:1.下面两种方法都可以使用,总体都是使用stringbuilder来进行拼接,然后返回给前台。(代码如下)2.第一种是绑定方法,然后返回HTML字符串。3.第二种是定位到前台页面的id,在其后面添加HTML字符串。代码(C#版):...

weixin_29775951的博客 1041

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

C#之五 StringBuilder 的使用

StringBuilder 是拼接字符串的一个工具,注意拼成完成后,还是需要将它转回字符串。string str=" ";//定义一个str但不为它分配空间,如果后面要使用str必须得先为它赋值str="某某某",既初始化strstring str=string.Empty;//定义并且分配了空间具体使用时,如果你确定在使用前会给str赋值就用string str=null,否则用string s...

qiu_1231的博客 2407

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

使用Java的StringBuilder实现带单引号的字符串拼接

在Java编程中,字符串操作是非常常见的任务。特别是在构建SQL语句或处理文本数据时,往往需要将多个字符串拼接在一起,并在特定情况下为每个字符串添加单引号。本文将介绍如何使用Java的StringBuilder类来高效地实现带单引号的字符串拼接,并提供详细的代码示例。引言Java中的String类虽然提供了丰富的字符串操作...

weixin_35747627的博客 310

后台拼接HTML显示到前台

很多时候我们需要动态生成页面,除了绑定数据之外,有时候页面也是不同的,这时候就需要在后台把页面拼接好,然后在前台显示需要的页面形式,现总结代码如下,以备后需。

学习 - 总结 - 分享 - Francis 1万+

java 拼接 html_Java web用JSP打印九九乘法表的两种方法,用StringBuilder拼接或代码混合【诗书画唱】...

下面是用JSP打印九九乘法表的两种方法:String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";//用StringBuilder拼接的方法:StringBuilder...

weixin_34150870的博客 209

利用stringBuilder操作html文件

数据文件 大菜单1:小菜单1,小菜单,小菜单,小菜单大菜单1:小菜单1,小菜单,小菜单大菜单1:小菜单1大菜单1:小菜单1,小菜单,小菜单,小菜单大菜单1:小菜单1,小菜单,小菜单大菜单1:小菜单1,小菜单 html文件 <html><head><title>测试stringbuilder链接html</title></head&g...

weixin_30835649的博客 239

java StringBuilder对比String的优点和15个经典案例

类在各种不同场景下的应用优势。总之,在涉及频繁修改、拼接字符串的操作中,选择。的reverse()方法可以高效地实现字符串反转。方法可以高效地在原字符串基础上进行替换操作。可以在指定位置插入字符串,无需创建新对象。在构造复杂的JSON或XML文本时,利用。根据条件动态构造SQL查询语句时,使用。逐个添加属性和值,避免频繁创建新对象。当需要收集用户输入的大量文本时,使用。逐个添加各个部分,然后一次性打印。在循环中多次拼接字符串时,使用。以上这些例子进一步展示了。​最后我们放松一下眼睛。构建日志消息时,通过。

qqrrjj2011的博客 1949

总结之html字符串生成html页面

通过StringBuilder来生HTML页面 private static void autoToHTML(String destDir, String destFileName, String templateString) { //用于存储html字符串 StringBuilder stringHtml = new StringBuilder(); try { //打开文件 PrintStream printStr

IManiy的博客 1377
上一篇: javacode基本概念语法--学习笔记
下一篇: 《第一个web项目优化版》实现注册登录增删改查自动跳转强制登录
zxwwantlearnjava
博客等级 码龄7年 16粉丝 51原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值