首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Java参数引用传递引发的惨案(又一次Java的String的“非对象”特性的踩坑经历)

前几天帮别人写一个SDK的Demo代码,遇到个问题。里面有一个接口,参数为String,要引用传递。然后发现代码执行结束以后,这个String对象的值并没修改。 查了好久才发现又进了一个之前踩过的坑。果然基础知识要定期巩固,就专门对Java的参数传递和String简单汇总整理下。先在上面说了结论,然后再在后面举证。 总结: 传值传递: 参数传入方法时,无论该参数在方法内怎样被改变,外部的变量原型总是不变,叫做“值传递”。即方法操作的是参数变量(也就是原型变量的一个值的拷贝)改变的也只是原型变量的一个拷贝而已

07

sql2java:WhereHelper基于Beanshell(bsh)动态生成SQL语句

BeanShell是一个小型嵌入式Java源代码解释器,具有对象脚本语言特性,能够动态地执行标准JAVA语法,并利用在JavaScript和Perl中常见的的松散类型、命令、闭包等通用脚本来对其进行拓展。BeanShell不仅仅可以通过运行其内部的脚本来处理Java应用程序,还可以在运行过程中动态执行你java应用程序执行java代码。因为BeanShell是用java写的,运行在同一个虚拟机的应用程序,因此可以自由地引用对象脚本并返回结果。 基于Beanshell可以实现很多有意思的功能,比如最近的工作中为了给前端提供灵活的数据库条件查询,我利用Beanshell的能力,可以实现了WhereHelper用于根据前端提供的参数,动态生成SELECT查询语句,大大简化了代码复杂度。 本文介绍WhereHelper的使用

03
领券