2 cai772088996 cai772088996 于 2016.05.01 22:56 提问

hibernate中有两句sql语句,用到了=:这个奇怪符号,不解其意

图片说明

问题一:如上图

问题二:如果不像上图这样写,就写平时常见的sql,要表达出同样的意思该怎么写这两句?第一个是通过用户名username获取用户信息,第二个是通过注册框内输入的username和password来获取用户信息

我现在在做struts2和hibernate集成做个注册登陆功能,登陆功能已完成,但是数据库里光出现id,不出现我注册的用户信息,控制台打印出的sql都显示为null:

User [id=0, username=null, password=null]

Hibernate: insert into t_user (username, password) values (?, ?)

我不知道是哪里有问题,怀疑是第二句sql的问题?

3个回答

captainzgm
captainzgm   2016.05.02 02:05
已采纳

hql中跟在“:”后面的那个字符串是需要程序set字段名字进去的。

caozhy
caozhy   Ds   Rxr 2016.05.01 23:37

不这样写,那么需要拼接hql字符串,比如
string hql = "from t_user where username='" + username + "'";

baidu_23086307
baidu_23086307   2016.05.01 23:38

就是等于这个字段的意思

Csdn user default icon
上传中...
上传图片
插入图片