SpringBootを使って、Web上にアップロードされたcsvファイルからデータベース(PostgreSQL)のテーブルにレコードを一括追加したいです。
インターネットで調べて、何とか、以下の様にHTMLと、controller.javaを作成したのですが、SQL文でfileをどう扱えばいいのか分かりません。
何か良い方法はありませんか?
(エラー等はまだ全く考慮していません。正しいファイルがアップされた前提で動くものが出来れば良いです。)
html
1<form method="post" enctype="multipart/form-data" action="/hogehoge"> 2 <input type="file" name="file" id="file" required/> 3 <br> 4 <input type="submit" value="追加"/> 5</form>
controller
1@RequestMapping(value="/hogehoge", method=RequestMethod.POST) 2public ModelAndView Add(@RequestParam("file")MultipartFile file, ModelAndView mv) { 3 mv.setViewName("hogehogehoge"); 4 jdbcTemplate.update("\copy member_table from ? with csv header",file); //←ココのfileをどうすればいい? 5 return mv; 6}
補足(やりたいこと)
Webサイトでcsvファイルをアップロードし、その内容をDBに挿入したい。
例えば、カラムが名前・年齢・性別のテーブルに以下のようなcsvファイルを入れると
csv
1名前,年齢,性別 2山田花子,20,女 3山田太郎,30,男
以下の様にテーブルに挿入したい。
名前 | 年齢 | 性別 |
---|---|---|
… | … | … |
↑(挿入前にあった)名前 | 年齢 | 性別 |
山田花子 | 20 | 女 |
山田太郎 | 30 | 男 |
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。