用SqlServer配置搭建SSH查询问题

细露仔 2016-05-26 01:12:34
	
public User findUserByNameAndPass(String username,String password)
{
List ul=getHibernateTemplate().find("select au from com.bean.User au where au.username='"+username+"' and au.password='"+password+"'");
if(ul.size()==1)
{
return (User)ul.get(0);
}
return null;
}

↑这是我UserDAOImpl类里查询数据库的一个函数。但是其中的ul.size()=0,换句话说就是根据username和password查不到这条记录,但表里确实是有这条记录的。


↑这是我的数据库表


package com.bean;

public class User {
private Integer id;
private String username;
private String password;

public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}

}

↑这是POJO类User,我手动写的,不是用逆向工程生成的


<hibernate-mapping>
<class name="com.bean.User" table="usertable">
<id name="id" type="java.lang.Integer">
<column name="id"/>
<generator class="assigned"/>
</id>
<property name="username" type="java.lang.String">
<column name="username" length="50"/>
</property>
<property name="password" type="java.lang.String">
<column name="password" length="50"/>
</property>
</class>
</hibernate-mapping>

↑这是我表与类的映射文件User.hbm.xml,也是手动写的。


<!-- 配置数据源 -->
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver"></property>
<property name="url"
value="jdbc:sqlserver://localhost:1433;DatebaseName=DB_For_J2EE">
</property>
<property name="username" value="sa"></property>
<property name="password" value="1233365810"></property>
</bean>

<!-- 配置Hibernate -->
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.SQLServerDialect
</prop>
<prop key="hibernate.show_sql">true</prop>
</props>
</property>
<property name="mappingResources">
<list>
<value>com/bean/User.hbm.xml</value>
</list>
</property>
</bean>

↑beans里的配置数据源和mappingResources也没什么问题。

运行的时候,输出的sql语句:
Hibernate: select user0_.id as id0_, user0_.username as username0_, user0_.password as password0_ from usertable user0_ where user0_.username='abc' and user0_.password='123'
这个sql输出应该是对的,既然sql语句是对的,那为什么会查询不到结果呢???
...全文
215 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 2 楼 only_for_xiluzi 的回复:
[quote=引用 1 楼 qnmdcsdn 的回复:] 打断点,,,,
打断点??什么意思?[/quote] 没用过断点调试吗?在查询那里打个断点执行一下看看
细露仔 2016-05-26
  • 打赏
  • 举报
回复
引用 1 楼 qnmdcsdn 的回复:
打断点,,,,
打断点??什么意思?
  • 打赏
  • 举报
回复
打断点,,,,

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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