首页 > 编程语言 >mybatis jdbc java 字段类型转换

mybatis jdbc java 字段类型转换

时间:2023-09-17 10:33:53浏览次数:43  
标签:类型转换 map jdbc get System println mybatis NULL out


在 spring mvc + mybatis + mysql

数据表

CREATE TABLE `test_jdbc_java_type` (
  `id` int(11) NOT NULL,
  `_char` char(50) DEFAULT NULL,
  `_varchar` varchar(200) DEFAULT NULL,
  `_numeric` decimal(10,2) DEFAULT NULL,
  `_decimal` decimal(10,2) DEFAULT NULL,
  `_bit` bit(1) DEFAULT NULL,
  `_tinyint` tinyint(4) DEFAULT NULL,
  `_smallint` smallint(6) DEFAULT NULL,
  `_integer` int(11) DEFAULT NULL,
  `_bigint` bigint(20) DEFAULT NULL,
  `_real` double DEFAULT NULL,
  `_float` float DEFAULT NULL,
  `_double` double DEFAULT NULL,
  `_binary` binary(255) DEFAULT NULL,
  `_varbinary` varbinary(255) DEFAULT NULL,
  `_date` date DEFAULT NULL,
  `_time` time DEFAULT NULL,
  `_timestamp` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
  `_blob` blob,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;



数据

INSERT INTO `test_jdbc_java_type` VALUES (1, 'char类型', 'varchar类型', 11.00, 22.00, '', 1, 1, 1, 1, 1, 1, 1, NULL, NULL, '2017-4-14', '11:17:43', '2017-4-14 11:17:33', NULL);

xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.hqpe.itm.dao.user.UserDao">
	<select id="getData" resultType="Map">
       SELECT (SELECT 1 ) _num ,1 _num2,t.* FROM `test_jdbc_java_type` t
	</select>
</mapper>






java代码

package com.hqpe.itm.controller.account;

import java.math.BigDecimal;
import java.sql.Timestamp;
import java.sql.Time;
import java.util.Date;
import java.util.List;
import java.util.Map;

import javax.annotation.Resource;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

import com.hqpe.itm.dao.user.UserDao;

@Controller
@RequestMapping("/jdbcjava")
public class TestJdbcJavaType 
{
	@Resource
	private UserDao userDao;
    
    @RequestMapping("test")
    public void test(Model model) {
    	
    	List<Map<String,Object>> list = userDao.getData();
    	for(Map<String,Object> map: list){
    		int id = (Integer)map.get("id");
    		long _num = (Long)map.get("_num");
    		long _num2 = (Long)map.get("_num2");
    		String _char= (String)map.get("_char");
    		String _varchar= (String)map.get("_varchar");
    		BigDecimal _numeric= (BigDecimal)map.get("_numeric");
    		BigDecimal _decimal= (BigDecimal)map.get("_decimal");
    		boolean _bit= (Boolean)map.get("_bit");
    		int _tinyint= (Integer)map.get("_tinyint");
    		int _smallint= (Integer)map.get("_smallint");
            int _integer= (Integer)map.get("_integer");
           long _bigint= (Long)map.get("_bigint");
            double _real= (Double)map.get("_real");
            float _float= (Float)map.get("_float");
            double _double= (Double)map.get("_double");
            //Byte[] _binary= (Byte[])map.get("_binary");
            //Byte[] _varbinary= (Byte[])map.get("_varbinary");
            Date _date= (Date)map.get("_date"); 
            Time _time= (Time)map.get("_time");
            Timestamp _timestamp= (Timestamp)map.get("_timestamp");
            //Blob _blob= (Blob)map.get("_blob");
            System.out.println(id);
            System.out.println(_num);
            System.out.println(_num2);
            System.out.println(_char);
            System.out.println(_varchar);
            System.out.println(_numeric);
            System.out.println(_decimal);
            System.out.println(_bit);
            System.out.println(_tinyint);
            System.out.println(_smallint);
            System.out.println(_integer);
            System.out.println(_bigint);
            System.out.println(_real);
            System.out.println(_float);
            System.out.println(_double);
            //System.out.println(_binary);
            //System.out.println(_varbinary);
            System.out.println(_date);
            System.out.println(_time);
            System.out.println(_timestamp);
            //System.out.println(_blob);
            System.out.println();
            System.out.println();
            System.out.println();
            System.out.println();
            System.out.println();
    }
}
}





标签:类型转换,map,jdbc,get,System,println,mybatis,NULL,out
From: https://blog.51cto.com/u_1481758/7499865

相关文章

  • 学习Mybatis-Plus的记录
    目录1.常用注解2.条件查询2.1.各种方式的查询2.2.AllEq用法2.3selectOne方法2.4lambda条件构造器2.5select不查出所有的字段2.6通用Mapper2.7自定义sql3.分页查询4.更新5.AR(ActiveRecord)模式6.主键策略7.Mp的配置1.常用注解@TableName用于在数据库表名和实体对......
  • IDEA使用连接JDBC连接带有phoenix加持的hbase数据库
    1、首先要保证自己的phoenix已经下载,且能够正常运行所谓正常运行,即能够正常地使用增删改查的相关操作,而不产生错误,比如不允许啥啥的情况;2、注意phoenix的命令格式(需要保证表中必须有primarykey)增加/修改(在phoenix里面,这两种情况被合并了,若是primarykey已经存在,那么就是修改......
  • Mybatis的<where>,<if>等标签用法
    上节有介绍Mybaits传入参数不同类型的时候,对应的处理方法,这节要说下处理方法时候还会用到的另外几个标签,比如<where>,<if>等。我们首先说下<if>标签,看名字就知道是用来做判断的,放传入的参数为null或者为空字符串时,我们不希望它3参与筛选,我们可以用<if>标签过滤掉值为null或者是空......
  • mybatis
    mybatis执行流程原理Mybatis底层封装了JDBC,使用了动态代理模式。创建SqlSession,执行Executormybatis 缓存一级缓存(本地缓存)sqlSession级别的缓存,一级缓存一直是开启的,它实质上就是sqlSession级别的一个Map与数据库同一次会话期间查询到的数据会放在本地缓存中,以后如果需......
  • MybatisPlus之prim标签
    MybatisPlus之trim标签<trimprefix=""suffix=""suffixOverrides=""prefixOverrides=""></trim>prefix:在trim标签内sql语句加上前缀。suffix:在trim标签内sql语句加上后缀。prefixOverrides:指定去除多余的前缀内容suffixOverrides:指定去除多余的后缀内容,如:s......
  • Java数据类型转换:强制类型转换+自动类型转换
    数据类型的转换是在所赋值的数值类型和被变量接收的数据类型不一致时发生的,它需要从一种数据类型转换成另一种数据类型。数据类型的转换可以分为隐式转换(自动类型转换)和显式转换(强制类型转换)两种。隐式转换(自动类型转换)如果以下2个条件都满足,那么将一种类型的数据赋给另外一种......
  • java的jdbc插入的时候,遇到null情况报错问题
    分析原因:在执行SQL时MyBatis会自动通过对象中的属性给SQL中参数赋值,它会自动将Java类型转换成数据库的类型。而一旦传入的是null它就无法准确判断这个类型应该是什么,就有可能将类型转换错误,从而报错。解决办法:参数增加jdbcType标识数据类型。(注意:这时候参数{}前统一用#)<inser......
  • 基于springboot与mybatis的健身器材批发管理系统的设计与实现
    研究的背景意义随着互联网技术的发展,各种类型的管理系统深入到人们的工作学习中,不再是最初的资料查询、在线沟通等简单形式的应用。各种统计分析、物联网、人工智能、AI等技术越来越多,特别典型的就是网上商城。电子商城也分为多种类型,包括B2B、B2C、C2C等。还有我们常见的批发商城......
  • mybatisplus代码生成器 死活连接不上
    dburl改一下:jdbc:mysql://124.220.134.111:3306/content?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull&serverTimezone=Asia/Shanghai    &useSSL=false一定要加这个鬼东西沃日......
  • mybatis动态sql
    动态sql ......