java中如何打印变量返回值类型
user表中cp_id(int)关联company表id(int),拿到的却是company_name,publicUsergetUserCpId(intid){Sess...
user表中cp_id(int)关联company表id(int),拿到的却是company_name,
public User getUserCpId(int id) {
Session session = getSessionFactory().openSession();
Query query = session.createQuery("from User u where u.id = :id");
query.setParameter("id", id);
User user = (User) query.uniqueResult();
session.close();
System.out.println(user.getCp_id()+"====userDao.getUserId");//user.getCp_id拿到的是company_name
return user;
} 展开
public User getUserCpId(int id) {
Session session = getSessionFactory().openSession();
Query query = session.createQuery("from User u where u.id = :id");
query.setParameter("id", id);
User user = (User) query.uniqueResult();
session.close();
System.out.println(user.getCp_id()+"====userDao.getUserId");//user.getCp_id拿到的是company_name
return user;
} 展开
4个回答
展开全部
如果是对象,那么可以使用getClass().getName()方法获得该对象的类名,
然,还有就是利用反射机制获取原数据类型的,这个时候如果需要确定类型,
同样的,反射机制返回值是对象,比如对于类属性的返回,是Field对象,可以
通过里面的getType().getName()获得该属性的类型名称,下面一个例子:
Type = new Test().getClass().getDeclaredField("testClass").getType().getName(); //得到某个类下属性字段的类型
"w".getClass().getName(); //得到变量类型
new Test().getClass().getName()//得到对象类名
然,还有就是利用反射机制获取原数据类型的,这个时候如果需要确定类型,
同样的,反射机制返回值是对象,比如对于类属性的返回,是Field对象,可以
通过里面的getType().getName()获得该属性的类型名称,下面一个例子:
Type = new Test().getClass().getDeclaredField("testClass").getType().getName(); //得到某个类下属性字段的类型
"w".getClass().getName(); //得到变量类型
new Test().getClass().getName()//得到对象类名
展开全部
一般实例类属性最好用对象类型而不是具体的实例类型。如:
private Integer id好过使用private int id
如果ID不存在则会返回null,而使用int还要初始化。对象类型可以使用str.getClass().getName()就能返回对象的类型java.lang.String。
Integer myi=new Integer(1);
System.out.println(myi.getClass().getName());
打印出来是java.lang.Integer
而如果使用int作为映射将会报错
int myi=1;
System.out.println(myi.getClass().getName());//这样是错误的。
所以在实例化是最好使用对象类型,而不要使用具体的实例类型。
private Integer id好过使用private int id
如果ID不存在则会返回null,而使用int还要初始化。对象类型可以使用str.getClass().getName()就能返回对象的类型java.lang.String。
Integer myi=new Integer(1);
System.out.println(myi.getClass().getName());
打印出来是java.lang.Integer
而如果使用int作为映射将会报错
int myi=1;
System.out.println(myi.getClass().getName());//这样是错误的。
所以在实例化是最好使用对象类型,而不要使用具体的实例类型。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-09-03
展开全部
举个例子
char a='你'
int b=10;
double c=20.0;
float a=3.34f;
不是很明白你想问什么
要想看变量是什么类型直接看前面声明它的关键字就行了嘛
就像char a='你'中的a就是一个字符型数据了
object instanceof Object,但不能像javascript中一样用于判断原始数据类型,instanceif只用于判断该对象是否为某类的对象。
char a='你'
int b=10;
double c=20.0;
float a=3.34f;
不是很明白你想问什么
要想看变量是什么类型直接看前面声明它的关键字就行了嘛
就像char a='你'中的a就是一个字符型数据了
object instanceof Object,但不能像javascript中一样用于判断原始数据类型,instanceif只用于判断该对象是否为某类的对象。
追问
依然很感谢,我初学者比较菜, 问题木有解决。。可否请教?903934400
追答
请教不敢当,我知道的话会告诉你的!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1 利用java reflect 反射机制
getType().getName();
2 利用instanceof
追问
Thank U!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询