select u from Userlist中的u是怎么来的?

vbagcl 2011-06-01 04:56:41
初学java编程,在网上找的例子,源码如下:
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) throws HibernateException {
//获取提交的用户名称和密码
String userName=request.getParameter("userName");
String userPwd=request.getParameter("userPwd");

String mUserPwd=null;
Userlist ul=null;
//创建连接
Session session=HibernateUtil.Session();
//创建事务
Transaction tx=session.beginTransaction();
//创建对话
Query query=session.createQuery("select u from Userlist as u where username='" +
userName + "'");
try{
Iterator it = query.iterate();
ul = (Userlist) it.next();
mUserPwd=ul.getUserpwd();
}catch (Exception e) {
System.out.println(e.getMessage());
}
if(userPwd.equals(mUserPwd))
request.setAttribute("loginOk","Hello " + ul.getUsername());
else
request.setAttribute("loginOk","Login Error!");
//事务提交
tx.commit();
//关闭连接
HibernateUtil.closeSession();
return (new ActionForward("/index.jsp"));
}

}

我相信很多人见过这段代码,Userlist 中有两个三个字段:
CREATE TABLE YKMES.USERLIST
(
ID NUMBER,
USERNAME VARCHAR2(20 BYTE) NOT NULL,
USERPWD VARCHAR2(30 BYTE) NOT NULL
)
而上面代码中为什么写成:
select u from Userlist as u
不这样写,会报错,请高手指点u是从哪里来的,为什么一定要这样写呢。
按照我理解的应该写成
select userPwd from Userlist where username='sonic'。
多谢!
...全文
281 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
chaolei_geng 2011-06-02
  • 打赏
  • 举报
回复
我理解就是一中语法,类似select * from tablename,你可以把u改成任何字符,比如:
select userPwd from Userlist as userPwd where username='sonic'。
或者
select x from Userlist as x where username='sonic'。
而真正读取userPwd是在下面的语句:
mUserPwd=ul.getUserpwd();
chaolei_geng 2011-06-02
  • 打赏
  • 举报
回复
路过,帮顶!
vbagcl 2011-06-01
  • 打赏
  • 举报
回复
多谢各位指点,但是表
CREATE TABLE YKMES.USERLIST
(
ID NUMBER,
USERNAME VARCHAR2(20 BYTE) NOT NULL,
USERPWD VARCHAR2(30 BYTE) NOT NULL
)
并没有u这个列啊,并且我按
select userPwd from Userlist where username='sonic'。
写,报错:
undefined alias: userPwd
望各位指点。
guyinxin 2011-06-01
  • 打赏
  • 举报
回复
u就是列名 可以别名
sql语句没错
#blackheart 2011-06-01
  • 打赏
  • 举报
回复
select u from Userlist as u.给Userlist表起一个别名u
燚焱炎火 2011-06-01
  • 打赏
  • 举报
回复
java与javascript不一样。。。。
楼主,贴错地方啦!!!
phf0313 2011-06-01
  • 打赏
  • 举报
回复
地方错了~~
zell419 2011-06-01
  • 打赏
  • 举报
回复
u 不就是列名么 ?
ps: 这里是javascript版 ~

87,990

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧