티스토리 뷰


1. 파라미터가 한개일때 

Mapper.java

1
Integer updateEmailAddress(String emailAddress);
cs

Mapper.xml

1
2
3
<update id="updateEmailAddress" parameterType="String" >
     UPDATE tb_admins SET email=#{_parameter}
</update>
cs



2. 파라미터가 한개이상일때

Mapper.java

1
Integer updateEmailAddress(@Param("emailAddress"String emailAddress, @Param("adminId"String adminIdId);
cs


Mapper.xml

1
2
3
<update id="updateEmailAddress" parameterType="String" >
    UPDATE tb_admins SET email=#{emailAddress} WHERE admin_id =#{adminId}
</update>
cs



3. 파라미터 형식

scheduler.java 

1
2
3
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date toDate = new Date();
settingMapper.updateLastEmailDt(sdf.format(toDate));
cs

Mapper.java

1
Integer updateLastEmailDt(@Param("lastEmailDt"String lastEmailDt);
cs

1
Integer updateLastEmailDt(String lastEmailDt);
cs


Mapper.xml

1
2
3
<update id="updateLastEmailDt" parameterType="String" >
          UPDATE tb_admins SET last_email_dt = #{lastEmailDt}
</update>
cs


처음에 이렇게 했는데 postgresql 오류남
column is of type timestamp without time zone but expression is of type character varying
last_email_dt 가 Timestamp로 되어있어서 형변환 해줘야한다고 한다.


1
2
3
<update id="updateLastEmailDt" parameterType="String" >
          UPDATE tb_admins SET last_email_dt = TO_TIMESTAMP(#{lastEmailDt}, 'YYYY-MM-DD HH24:MI:SS')
</update>
cs

1
2
3
<update id="updateLastEmailDt" parameterType="String" >
          UPDATE tb_admins SET last_email_dt = TO_TIMESTAMP(#{_parameter}, 'YYYY-MM-DD HH24:MI:SS')
</update>
cs



댓글