java想要生成 字符串,如何在Java中“优雅地”生成String?

博客探讨了如何更优雅地构建SQL命令字符串,对比了使用StringBuilder和预处理语句的方式。作者指出,虽然预处理语句在某些场景下不可用,但它提供了更好的安全性。文章中提出了使用Java的Regex或JavaCC生成String的建议,但强调最终仍需StringBuilder来构造JavaString。读者将了解到如何在性能和代码整洁性之间做出权衡。
摘要由CSDN通过智能技术生成

我想生成一个字符串,如sql命令:

"INSERT INTO xxx VALUES(XXX, XXX, XXX)"

目前我使用StringBuilder和一些String常量,如“INSERT INTO”来连接表名和插入值的输入String参数.

但是,除了性能问题之外,这种简单的连接看起来并不优雅.

有没有其他方法这样做?

在我看来,JDBC的预处理语句是这种“命令模板”的一个很好的例子:

PreparedStatement pstmt=connection.createPreparedStatement("INSERT INTO ? VALUES(?,?,?)");

然后你可以设置表名和插入值.

pstmt.setString(1,"tableA");

pstmt.setInt(2, 100);

...

但是,我不能使用预备语句,因为我想要的只是String …

有人给我一些提示,使用java.util.Regex或JavaCC来生成String.

但据我所知,无论选择什么代码优势问题,Java String必须由StringBuilder生成,对吧?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值