从java代码调用时,在函数/过程中封装select语句是否更好?
我正在编写一个RESTful服务来调用我正在编写的一些PL SQL过程。在少数情况下,所需要的只是从表中检索到的一条信息从java代码调用时,在函数/过程中封装select语句是否更好?,java,plsql,Java,Plsql,我正在编写一个RESTful服务来调用我正在编写的一些PL SQL过程。在少数情况下,所需要的只是从表中检索到的一条信息 SELECT id FROM dual; 我想知道,与从REST服务简单地执行SELECT语句相比,是否最好将其包装在一个过程中,并使用OUT参数返回结果 或者这有什么关系?一个比另一个更安全吗?使用PreparedStatement来执行select语句,如果需要对其进行参数化,则使用位置参数而不是串联字符串,这将解决有关SQL注入的安全问题。如果您想做多件事情,并且希望
SELECT id FROM dual;
我想知道,与从REST服务简单地执行SELECT语句相比,是否最好将其包装在一个过程中,并使用OUT参数返回结果
或者这有什么关系?一个比另一个更安全吗?使用PreparedStatement来执行select语句,如果需要对其进行参数化,则使用位置参数而不是串联字符串,这将解决有关SQL注入的安全问题。如果您想做多件事情,并且希望避免在客户机和数据库之间往返,或者如果您想调用某个特定于Oracle的PLSQL,但无法通过JDBC执行,则可以为使用存储过程提供理由。这些在这里似乎不相关,所以我不想麻烦它。不,它不会使您的数据库访问更安全,只会使它更复杂。在Java代码中使用准备好的语句。