Mybatis插入Oracle数据库日期型数据过程解析
前端页面type类型是:datetime-local,因为如果是date类型,只显示年月日,不显示时间,这个可以显示时间

但插入时会以:2020-02-0202T10:10 这个格式出现,所以下面代码,将这个格式转换为:2020-02-02 10:10 ,通过修改传来的user,然后通过set方法修改。
/** * 新增用户 * * @param user * @return */ @Override public boolean insertUser(User user) throws ParseException { //将日期格式化 try { SimpleDateFormat formatter = new SimpleDateFormat('yyyy-MM-dd’T’HH:mm'); Date date = formatter.parse(user.getBirth().trim() + ':.803+08:00'); SimpleDateFormat sdf = new SimpleDateFormat('yyyy-MM-dd HH:mm'); String sDate = sdf.format(date); user.setBirth(sDate); System.out.println(sDate); } catch (Exception e) { } return iRegisterMapper.insertUser(user) > 0; }
修改完毕后调用mapper文件的插入方法
<insert parameterType='User'> insert into tb_user(id,uname,pwd,sex,birth,nickname,email,regtime) values(Sequence_User_Id.NEXTVAL,#{uname},#{pwd},#{sex},to_date(’${birth}’,’yyyy-mm-dd hh:mi:ss’),#{nickname},#{email},to_date(’${birth}’,’yyyy-mm-dd hh:mi:ss’)) </insert>
这样就可以插入正确的格式了

备注:
修改的方法:
<!--修改--> <update parameterType='Map'> update tb_user <trim prefix='set' suffixOverrides=','> <if test='uname!=null'>uname=#{uname},</if> <if test='pwd!=null'>pwd=#{pwd},</if> <if test='name!=null'>name=#{name},</if> <if test='sex!=null'>sex=#{sex},</if> <if test='birth!=null'>birth=to_date(’${birth}’,’yyyy-mm-dd hh:mi:ss’),</if> <if test='addr!=null'>addr=#{addr},</if> <if test='nickname!=null'>nickname=#{nickname},</if> <if test='introduce!=null'>introduce=#{introduce},</if> <if test='tel!=null'>tel=#{tel},</if> <if test='email!=null'>email=#{email},</if> </trim> where uname = #{oldUname} </update>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持好吧啦网。
相关文章:
1. SQLServer创建索引的5种方法小结2. centos 7安装mysql5.5和安装 mariadb使用的命令3. Window7安装MariaDB数据库及系统初始化操作分析4. DB2新手使用的一些小笔记:新建实例、数据库路径不存在、客户端连接 .5. Sql Server Management Studio连接Mysql的实现步骤6. MariaDB10.5.6的安装与使用详解7. MariaDB表表达式之公用表表达式(CTE)8. debian10 mariadb安装过程详解9. ACCESS的参数化查询,附VBSCRIPT(ASP)和C#(ASP.NET)函数第1/2页10. 在SQL Server中使用 Try Catch 处理异常的示例详解

网公网安备