0

このチュートリアルに従って、JDBC を使用して Spring でデータベースに CRUD 操作を実装する方法を研究しています: http://www.tutorialspoint.com/spring/spring_jdbc_example.htm

非常に明確ですが、SQLクエリがどのように指定されているかについては疑問しかありません。

たとえば、私のStudentJDBCTemplate クラスのcreate()メソッドでは、クエリは次のように宣言されています。

String SQL = "insert into Student (name, age) values (?, ?)"; 

これは、classi SQL ステートメントとはかなり異なります。

insert into Student("Andrea", 25);

「?」の使用について読みました。SQLインジェクションを防ぐために使用されるプレースホルダーで、この挿入命令がどのように機能するかを理解しています(非常に直感的です...)

このチュートリアルで使用されている命令が JDBC または Spring 固有の形式であるかどうかだけを知っていますか?

ありがとうございました

アンドレア

4

1 に答える 1

2

? を使用したプリペアド ステートメント パラメーターのプレースホルダーとしては、標準の JDBC 機能です。JDBC チュートリアル(および JDBC javadoc) を読んで、JDBC が提供するものを理解してください。

Spring-JDBC は、プレーン JDBC に JdbcTemplate を追加します。これは、例外の処理、リソースのクローズ、行からのオブジェクトの生成などに役立ちます。プレーン JDBC ではサポートされていない名前付きパラメーターのサポートも追加します。

パッケージ内のクラスは、java.sql標準のjavax.sqlJava クラスです。パッケージ内のクラスorg.springframeworkは Spring 固有のクラスです。

于 2013-03-03T08:45:04.113 に答える