μ΄μ jdbcTemplate λ₯Ό μ€λͺ νλ©΄μ simpleJdbcInsert μ λν μΉμ°¬(?)μ νμλ€.
|
|
μ΄λ κ² μμ±νλ μ½λλ₯Ό
|
|
μ΄λ°μμΌλ‘ κ°νΈνκ² λ§λ€μ΄ 쀫μμΌλ λ§μ΄λ€.
ν μ€νΈ μ½λμμλ λ¬Έμ μκ³ , λ‘컬μμλ μ λμνκΈΈλ κ°λ° μλ²μ μ¬λ Έλλ…
μ€λ ν λ°© λ¨Ήμλ€…
Caused by: java.sql.SQLException: Out of range value for column 'reg_ip' at row 1
Query is: INSERT INTO login_ui (ui_name, img_path, use_yn, reg_id, reg_dt, reg_ip, upd_id, upd_dt, upd_ip) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?), parameters ['test','img_path','N',1522
909,'2019-12-09 15:40:04.143',-1218290558,<null>,<null>,<null>]
at org.mariadb.jdbc.internal.util.LogQueryTool.exceptionWithQuery(LogQueryTool.java:153)
at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.executeQuery(AbstractQueryProtocol.java:254)
at org.mariadb.jdbc.MariaDbPreparedStatementClient.executeInternal(MariaDbPreparedStatementClient.java:209)
... 85 common frames omitted
?????
reg_ip μ μ -1218290558 λΌλ κ°μ΄…?
Long μΌλ‘ λμ΄κ°λ 건 νμΈνλ€. κ·Έλ°λ° μ - κ°μ΄ λμ€λκ±ΈκΉ?? νλ€κ° long -> μ«μ.. μ΄? μκ°ν΄λ³΄λ overflow
!!
ipλ₯Ό DB μ μ μ₯ν λ, κ·Έλλ‘ μ μ₯νμ§ μκ³ , inetConvert λ₯Ό ν΅ν΄ long κ°μΌλ‘ μ μ₯νλλ°, λ‘컬μμλ ν μ€νΈ ν λ 127.0.0.1 μ int λ‘ λ³κ²½ν΄λ intμ μ΅λ κ° λ²μ μμΈλ°, λ€λ₯Έ μμ΄νΌμ κ²½μ° int μ μ΅λ κ°μ λμ΄κ°κΈ°μ overflow κ° λ°μνμ¬ - κ°μ΄ λλ κ²μ΄μλ€.
κ·Έλ λ€λ©΄ μ long λ‘ μ€μ ν κ°μ΄ int λ‘ κ°μ νλ³νμ΄ λμ΄ μ μ₯μ΄ λμλ κ±ΈκΉ?
κ·Έλμ λμ»΄νμΌμ ν΅ν΄ μ°Ύμλ΄€λ€.
SimpleJdbcInsert μ executeAndReturnKey λ₯Ό 보면
- μ»΄νμΌμ ν΅ν΄ DB 컬λΌμ λ°μ΄ν° νμ μ μμλ
- νλΌλ―Έν° κ°κ³Ό insert ν μ»¬λΌ κ°μ 맀μΉ
- insert μ€ν
μ΄λ° μμΌλ‘ μ§νλλ κ² κ°λ€. (μμΈνλ λͺ¨λ₯΄κ² μ§λ§, νμΈν λ°λ‘λ)
λ¬Έμ λ μ»΄νμΌ νλ μμ μ DB μ»¬λΌ κ°μ λ°μ΄ν° νμ μ κ°μ Έμμ java.sql.Types μ κ°μ λ§μΆλλ°, Maria DB νμ μλ int λ μμ§λ§, long μ μλ€.
κ·Έλ λ€λ³΄λ DB 컬λΌμλ int λ‘ λμ΄ μκΈ°μ, μ»΄νμΌ ν λ reg_ip κ° int value κ° λλ κ²μ΄κ³ .. μ΅λ κ°μ μ§λκ°λ²λ¦° long value λ overflow κ° λμ κ·Έλλ‘ - κ°…
μ΄ μμ μμ λ΄κ° μ·¨ν μ μλ μ νμ§λ DB μ»¬λΌ κ°μ λ°κΎΈκ±°λ, μ΄μ jdbcTemplate μ μ¬μ©νλ κ²μΈλ° DB λ₯Ό ν¨λΆλ‘ λ°κΏ μ μκ³ , μμ€λ₯Ό λ°κΎΈλ κ² λ¦¬μμ€ μ μΌλ‘ μ’λ€κ³ νλ¨νμ¬ μμ€λ₯Ό λ³κ²½νμ¬μ μΌλ¨λ½ λμλ€.
μμ μ μκ³ μ¨μΌ νλ€.. γ γ