mybatis中 和 区别"#"和"$"的区别

UDN-企业互联网技术人气社区
后使用快捷导航没有帐号?
浏览&&:&426
回复&&:&5
回复的帖子
myBatis返回Map取map中的数据时,
直接输出map有值,
{xxx=1200, cjcount=3, tdcjje=12000}
输出map.get(&xxx&)有值。
但是如果我这样写
double i = map.get(&xxx&);
这时,编译器也认为map.get(&xxx&)为double类型。
但是问题来了
double i = map.get(&xxx&);这句报错了
java.lang.ClassCastException: java.math.BigDecimal
为什么编译器提示map.get(&xxx&)为double类型,转换成double类型的时候就报错了呢?
解决不掉啊。
有木有大神帮忙解决一下啊,急死人了,在线等!!!
回复的帖子
Double i = map.get(&xxx&);
回复的帖子
本来就不是Double类型, 编译器提示你是因为你Map指定了Value的泛型类型。 并不代表里面的值是Double类型。
建议你以后出来数据库数值返回到Java时都统一用Number接收,然后再得到你要的类型。
((Number) map.get(&xxx&)).doubleValue(); 这样肯定行。
你的那个出来的实际类型是BigDecimal
回复的帖子
引用 2 楼 whos2002110 的回复:本来就不是Double类型, 编译器提示你是因为你Map指定了Value的泛型类型。 并不代表里面的值是Double类型。
建议你以后出来数据库数值返回到Java时都统一用Number接收,然后再得到你要的类型。
((Number) map.get(&xxx&)).doubleValue(); 这样肯定行。
你的那个出来的实际类型是BigDecimal
我mybatis里面指定的java类型确实NUMERIC,但是我在myBatisConfig.xml里面是让NUMBEC类型的用DOUBLE接收,为什么返回的map会是BigDecimal,BIGDECIMAL类型的我注释掉了,并没有开放出来的啊?很郁闷,搞不明白,求大神指示一下?
回复的帖子
引用 3 楼 if91488 的回复:Quote: 引用 2 楼 whos2002110 的回复:
本来就不是Double类型, 编译器提示你是因为你Map指定了Value的泛型类型。 并不代表里面的值是Double类型。
建议你以后出来数据库数值返回到Java时都统一用Number接收,然后再得到你要的类型。
((Number) map.get(&xxx&)).doubleValue(); 这样肯定行。
你的那个出来的实际类型是BigDecimal
我mybatis里面指定的java类型确实NUMERIC,但是我在myBatisConfig.xml里面是让NUMBEC类型的用DOUBLE接收,为什么返回的map会是BigDecimal,BIGDECIMAL类型的我注释掉了,并没有开放出来的啊?很郁闷,搞不明白,求大神指示一下?
不管数据库类型是numeric还是decimal,jdbc查询以后出来的都是java.math.BigDecimal,这是最原始的,也就我们通过sql查询到java端的原始类型。
我没怎么用过mybatis不清楚配置什么意思, 可能它不像hibernate那样查对象会直接转换类型吧。或者你问问懂mybatis的人
回复的帖子
引用 3 楼 if91488 的回复:Quote: 引用 2 楼 whos2002110 的回复:
本来就不是Double类型, 编译器提示你是因为你Map指定了Value的泛型类型。 并不代表里面的值是Double类型。
建议你以后出来数据库数值返回到Java时都统一用Number接收,然后再得到你要的类型。
((Number) map.get(&xxx&)).doubleValue(); 这样肯定行。
你的那个出来的实际类型是BigDecimal
我mybatis里面指定的java类型确实NUMERIC,但是我在myBatisConfig.xml里面是让NUMBEC类型的用DOUBLE接收,为什么返回的map会是BigDecimal,BIGDECIMAL类型的我注释掉了,并没有开放出来的啊?很郁闷,搞不明白,求大神指示一下?
BigDecimal 和 Double类继承自Number,你把myBatisConfig.xml配置文件贴出来看看,你的问题解决看2楼,就是2楼说的那样
电话:010-
地址:北京市海淀区北清路68号
移动客户端下载
微信公众号:yonyouudn
扫描右侧二维码关注我们
专注企业互联网的技术社区
版权所有:用友网络科技股份有限公司82041
京公网网备安4
Powered by Discuz!Maven Repository: org.mybatis >> mybatis >> 3.2.3 >>
3.2.3Note: There is a new version for this artifactNew Version
The MyBatis SQL mapper framework makes it easier to use a relational database with object-oriented
applications. MyBatis couples objects with stored procedures or SQL statements using a XML descriptor or
annotations. Simplicity is the biggest advantage of the MyBatis data mapper over object relational mapping
LicenseApache 2.0CategoriesHomePageDate(Sep 29, 2013) Files (696 KB) RepositoriesUsed By
&!-- /artifact/org.mybatis/mybatis --&
&dependency&
    &groupId&org.mybatis&/groupId&
    &artifactId&mybatis&/artifactId&
    &version&3.2.3&/version&
&/dependency&
// /artifact/org.mybatis/mybatis
compile group: 'org.mybatis', name: 'mybatis', version: '3.2.3'
// /artifact/org.mybatis/mybatis
libraryDependencies += &org.mybatis& % &mybatis& % &3.2.3&
&!-- /artifact/org.mybatis/mybatis --&
&dependency org=&org.mybatis& name=&mybatis& rev=&3.2.3&/&
// /artifact/org.mybatis/mybatis
    @Grab(group='org.mybatis', module='mybatis', version='3.2.3')
;; /artifact/org.mybatis/mybatis
[org.mybatis/mybatis &3.2.3&]
# /artifact/org.mybatis/mybatis
'org.mybatis:mybatis:jar:3.2.3'
Include comment with link to declaration
Compile Dependencies (7)Category/License
Group / ArtifactVersionUpdatesApache 2.0
(optional) Apache 2.0
(optional) Apache 2.0
(optional) Apache 2.0
(optional) Apache 2.0LGPL 2.1MPL 1.1
(optional) MIT
(optional) MIT
(optional) Provided Dependencies (1)Category/License
Group / ArtifactVersionUpdatesApache 2.0
(optional) Test Dependencies (8)Category/License
Group / ArtifactVersionUpdatesApache 2.0
Apache 2.0
Apache 2.0
BSD 2-clausePOSTGRESQL
LicensesLicenseURLThe Apache Software License, Version 2.0DevelopersNameEmailDev IdRolesOrganizationClinton Begin
clinton.begin&at&cbeginOwner, Founder, CommitterBrandon Goodin
brandon.goodin&at&brandon.goodinCommitterChristian Poitras
christian.poitras&at&ircm.qc.camentat6114CommitterEduardo Macarron
eduardo.macarron&at&emacarronCommitterFrank Martinez
mnesarco&at&mnesarcoCommitterAndrew Gustafson
gus4000&at&agustafsonCommitterHunter Presnall
hpresnall&at&hpresnallCommitterIwao Ave
harawata&at&harawataCommitterJeff Butler
jeffgbutler&at&jeffgbutlerCommitterKai Grabfelder
nospam&at&kaigrabfelder.denospam@kaigrabfelder.deCommitterLarry Meadors
larry.meadors&at&lmeadorsCommitterMarco Speranza
marco.speranza79&at&marcosperanzaCommitterNathan Maves
nathan.maves&at&nmavesCommitterPutthibong Boonbong
putthibongb&at&putthibongbCommitterSimone Tripodi
simone.tripodi&at&simonetripodiCommitterTim Chen
chengt&at&h3adacheCommitterRelated Books (2013)by Srinivas Mudunuri (2013)by K. Siva Prasad Reddy
Web site developed by
Powered by:高校云平台(二十二):多租户方案选型Hibernate、EclipseLink、Mybatis+Mycat_其它数据库-织梦者
当前位置:&>&&>& > 高校云平台(二十二):多租户方案选型Hibernate、EclipseLink、Mybatis+Mycat
高校云平台(二十二):多租户方案选型Hibernate、EclipseLink、Mybatis+Mycat
我们做的高校云平台中需要用多租户这种技术,目录了解到的有三种技术可以实现:符合JPA规范的Hibernate和EclipseLink以及Mybatis+Mycat;我们的上一版本的系统用的是EclipseLink实现的,这版需要重新对比一下,选定一个,于是花了些时间来做了些验证
【三种实现方式】
一、为什么这三种方式做为备选方案?
1、先说说符合JPA规范的HIbernate和EclipseLink;符合JPA规范的有好多种比如OpenJPA等等;查阅一些资料后,发现在各个方面综合对比中Hibernate和EclipseLink是具有很大优势的;
2、其次说说Mybatis+MyCat,遵循JPA的优势在于封装性强,可以灵活的或数据库的类型而无需更改代码,不过劣势在于它的性能上,另外Mybatis上手也比较快,于是乎Mybatis也进入了我们的备选队列;另外对于多租户上的支持来说Hibernate和EclipseLink都支持,而Mybatis本身不支持多租户,不过可以借助于Mycat的分库功能来达到分库的效果。
二、一些验证
1、权衡利弊看得失;
2、我们的项目需要好几个系统一块儿来完成,不同的系统有不同的特点,比如有的联合查询比较多,这时候Mybatis的优势更大等,扬长避短在不同的系统或模块中会采用不同的技术;
3、多对比不同的技术,了解每个技术实现的原理十分有利于我们的成长。
以上就是高校云平台(二十二):多租户方案选型Hibernate、EclipseLink、Mybatis+Mycat的全文介绍,希望对您学习和使用数据库有所帮助.
这些内容可能对你也有帮助
更多可查看其它数据库列表页。
猜您也会喜欢这些文章}

我要回帖

更多关于 mybatis 区别 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信