JSP+JavaBean+Servlet+Oracle新增功能中对Date类型的字段的处理
Oracle库中userinfo表borth字段是Date类型,age年纪字段是int类型。age字段要根据borth来自动计算
先说一下我遇到的问题:
insert into的时候遇到日期转换类型错误
先看一下我的新增用户的实现类:
public boolean addUser(UserInfo user) {
boolean flag=false;
int userno=this.getMaxUserNo();
//System.out.println(userno);
String sql="insert into userinfo(userno,username,name,password,telphone,sex,borth,role," +
"createdate,createby,age,useraddress)values(?,?,?,?,?," +
"?,to_date(?,'yyyy-mm-dd hh24:mi:ss'),?,to_date(?,'yyyy-mm-dd hh24:mi:ss'),?,?,?)";
SimpleDateFormat sdf =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date =new Date();
String createdate = sdf.format(date);
String borth=sdf.format(user.getBorth());
Object[] params={userno+1,user.getUserName(),user.getName(),user.getPassword(),user.getTelphone(),user.getSex(),borth,
user.getRole(),createdate,user.getCreateBy(),user.getAge(),user.getUseraddress()};
for (Object object : params) {
System.out.println(object.toString());
}
System.out.println("addsql=================>"+sql);
if(this.getConnection()){
int update = this.executeUpdate(sql, params);
System.out.println("addsql2222222222=================>"+sql);
if(update>0){
System.out.println("新增成功!");
flag=true;
}
}
this.closeConnection();
return flag;
}
注意红色部分:
这是因为我的实体类userinfo.java中定义的数据库这个borth变量是Date类型的
我把user取到的borth的值转换为字符串,因为sql执行的时候to_date里的占位符?要是字符串,所以我上面直接用
sdf.format(user.getBorth());转了。 2、有一个age字段是要自动通过borth和当前年份进行运算得到年龄大小,我写了一个工具类,到时候servlet直接调用即可
工具类:
package pb.market.com.cn.util; import java.text.SimpleDateFormat;
import java.util.Date; public class GetAge {
public int getage(String borth){ SimpleDateFormat sdf =new SimpleDateFormat("yyyy");
//获取当前年
String date =sdf.format(new Date());
int day=Integer.parseInt(date);
//获取出生日期的年份
int bor = Integer.parseInt(borth.substring(0,4));
int age=day-bor;
return age; }
}
servlet调用
总结:中间遇到不少问题,得细心!
JSP+JavaBean+Servlet+Oracle新增功能中对Date类型的字段的处理的更多相关文章
- Struts与jsp+javabean+servlet区别
采用Struts框架技术和直接使用jsp+javabean技术开发各有什么优势?各自的缺点又是什么? 在Javaweb开发领域存在2种开发模式, 模式一,jsp+javabean 模式二,jsp+ja ...
- JSP+JavaBean+Servlet技术(MVC模型)
一,Servlet开发用户在浏览器中输入一个网址并回车,浏览器会向服务器发送一个HTTP请求.服务器端程序接受这个请求,并对请求进行处理,然后发送一个回应.浏览器收到回应,再把回应的内容显示出来.这种 ...
- JSP+JavaBean+Servlet工作原理实例…
JSP+JavaBean+Servlet工作原理实例讲解 首先,JavaBean和Servlet虽都是Java程序,但是是完全不同的两个概念.引用mz3226960提出的MVC的概念,即M-model ...
- 在oracle中存入date类型数据遇到的问题及其解决方法(利用java.sql.date和Timestamp)
转自:https://blog.csdn.net/ShadowerWArden/article/details/80652377 1. 使用JDBC操作Oracle数据库时,使用java.sql.Da ...
- java web中日期Date类型在页面中格式化显示的三种方式
一般我们经常需要在将服务器端的Date类型,传到页面进行显示,这就涉及到一个如何格式化显示Date类型的问题,一般我们有三种方式进行: 1)在服务端使用SimpleDateFormat等类格式化成字符 ...
- 向mysql中插入Date类型的数据
先看数据库表的定义 date字段为sql.date类型.我要向其中插入指定的日期和当前日期. 一.插入当前日期 思路:先获取当前系统,在将当前系统时间转换成sql类型的时间,然后插入数据库.代码如下 ...
- 【java】jackson 中JsonFormat date类型字段的使用
为了便于date类型字段的序列化和反序列化,需要在数据结构的date类型的字段上用JsonFormat注解进行注解具体格式如下 @JsonFormat(pattern = "yyyy-MM- ...
- SQL查询数据库中所有指定类型的字段名称和所在的表名
--查询数据库中所有指定类型的字段名称和所在的表名 --eg: 下面查的是当前数据库中 所有字段类型为 nvarchar(max) 的字段名和表名 SELECT cols.object_id , co ...
- 向数据库中插入一个DateTime类型的数据到一个Date类型的字段中,需要转换类型。TO_DATE('{0}','YYYY-MM-DD'))
需要指出的是,C#中有datetime类型,但是这个类型是包括小时,分钟,秒的.这个格式与数据库中的Date类型不符,如果将now设为datetime类型插入数据会失败. 需要通过TO_DATE('字 ...
随机推荐
- 《DOM启蒙》 随笔
使用 Javascript 字符串创建并向 DOM 中添加元素与文本节点 innerHTML.outerHTML.textContent 及 insertAdjacentHTML() 属性和方法提供了 ...
- HBase初探
string hbaseCluster = "https://charju.azurehdinsight.net"; string hadoopUsername = "账 ...
- STM32 C语言,端口映射
static XX 有记忆的定义 typedef XX 可以多次定义一个 #ifedf XXX XXX(程序段1) #else XXX(程序段2)
- FileShare枚举的使用(文件读写锁)
开发过程中,我们往往需要大量与文件交互,但往往会出现很多令人措手不及的意外,所以对普通的C#文件操作做了一次总结,问题大部分如下: 1:写入一些内容到某个文件中,在另一个进程/线程/后续操作中要读取文 ...
- Js中Prototype、__proto__、Constructor、Object、Function关系介绍
一. Prototype.__proto__与Object.Function关系介绍 Function.Object:都是Js自带的函数对象.prototype,每一个函数对象都有一个显式的proto ...
- vijos P1009清帝之惑之康熙
</pre>背景康熙是中国历史乃至世界历史中最伟大的帝王之一,清除螯拜,撤除三藩,统一台湾,平定准葛尔叛乱:与此同时,出众的他也被世界各国遣清使臣所折服.康熙是历史上少有的全人,不仅文武兼 ...
- javascript获得客户端IP的又一方法
<script language="JavaScript">VIH_BackColor = "palegreen";VIH_ForeColor = ...
- SPI协议及工作原理分析
说明.文章摘自:SPI协议及其工作原理分析 http://blog.csdn.net/skyflying2012/article/details/11710801 一.概述. SPI, Serial ...
- 如何录制手机屏幕并转成gif
因为上一篇博客需要展示一些软件操作过程,如果直接截图的话一来可能需要多张图,二来表达也不方便,所以特意去查了下如何录制手机屏幕操作,然后转成gif,嵌入进博客中,这样表达起来就方便多了.话不多说,总结 ...
- mysql数据库行级锁的使用(二)
项目上的另外一个需求是: 在做统计的时候需要将当前表锁定不能更新当前表记录 直接上代码 package com.robert.RedisTest; import java.sql.Connection ...