- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我收到错误。
java.lang.NullPointerException
at org.springframework.orm.hibernate3.support.HibernateDaoSupport.getSession(HibernateDaoSupport.java:143)
at com.walladverts.model.dao.UserDao.findByUsername(UserDao.java:25)
在 findByUsername 中访问 getSession() 时
package com.walladverts.model.dao;
import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.Session;
import org.hibernate.criterion.Restrictions;
import org.springframework.stereotype.Repository;
import com.walladverts.exceptions.DataNotFoundException;
import com.walladverts.model.entities.User;
import com.walladverts.util.CustomHibernateDaoSupport;@
Repository("userDao")
public class UserDao extends CustomHibernateDaoSupport {
public void save(User user) {
getHibernateTemplate().save(user);
}
public void delete(User user) {
getHibernateTemplate().delete(user);
}
public User findByUsername(String username) throws DataNotFoundException {
Session session = getSession();
Criteria crit = session.createCriteria(User.class);
System.out.println(username);
crit.add(Restrictions.eq("username", username));
crit.setMaxResults(1);
List < User > users = crit.list();
System.out.println(users);
if (users.size() < 1) {
throw new DataNotFoundException();
}
return users.get(0);
}
}
父类:
package com.walladverts.util;
import org.hibernate.SessionFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
public abstract class CustomHibernateDaoSupport extends HibernateDaoSupport {@
Autowired
public void init(SessionFactory factory) {
setSessionFactory(factory);
}
}
有人知道为什么会发生这种情况吗?它卡住了我的开发。
编辑:
当 Spring Secure 尝试登录用户时会发生这种情况。当从 Controller 调用此方法时,我的 SessionFactory 工作正常。
最佳答案
public abstract class CustomHibernateDaoSupport extends HibernateDaoSupport {
@Autowired
@Qualifier("sessionFactory")
private SessionFactory sessionFactory;
public Session getSession() {
return sessionFactory.getCurrentSession();
}
}
<小时/>
public User findByUsername(String username) throws DataNotFoundException {
Session session = getSession();
// do sth
}
关于java - Hibernate、Spring、Dao getSession() NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16064707/
有什么区别 request.getSession() 和 getThreadLocalRequest().getSession() 我正在维护的应用程序似乎将第一个用于直接 Servlet,将第二个用
我了解 request.getSession(true) 和 request.getSession(false) 之间的区别。但是 request.getSession() 和 request.get
就 session 而言,这些调用实际上意味着什么? System.out.println("print1: "+request.getSession().getId()); System.out.p
在过滤器中,我使用request.getSession(false)来获取 session ,这没关系。但是当我对其进行单元测试时,request.getSession(false)将返回null o
我们通过实现 Filter 在我们的应用程序中拥有 SecurityFilter 类,我们的 doFilter 方法如下所示。 public void doFilter(ServletRequest
我有一个 servlet LogMeOut.java,我在其中编写以下代码: HttpSession session = request.getSession(false); if (session
非常简单的问题,request.getSession(true) 返回 null,就好像拒绝创建 session 一样。我已经重新启动了我的机器并为 Tomcat 和 IntelliJ 添加了内存。任
我创建了一个登录 servlet: @WebServlet( name = "SignInServlet", description = "check email & pass",
在某些设备上我遇到以下崩溃: //崩溃信息 SIGABRT 00 pc 00041300 /system/lib/libc.so (tgkill+12) [armeabi-v7a::1b3176677
我理解如果我们使用下面的语句 HttpSession session = request.getSession(); 将创建唯一 session ID,创建 Cookie 并将 Cookie 与 se
是否可以找到Android OpenSSLSocketImpl 关闭Socket 的原因? (如何调试 Android 内部库?) 背景:可以找到我尝试创建 SSLContext 的来源 in TLS
本文整理了Java中org.directwebremoting.WebContext.getSession()方法的一些代码示例,展示了WebContext.getSession()的具体用法。这些代
sessionCreated()中的HttpSessionListener方法是否自动与request.getSession()调用同步?特别是,我想知道在sessionCreated()方法中设置
我试图在Grails 2.3.5的TagLib中使用以下代码。 class LoginTagLib { def loginControl = { if(request.getSession(
使用 Spring 的 SessionFactoryUtils for Hibernate,getSession() 和 getNewSession() 之间的实际区别是什么? 我一直在 DAO 方法
由于对 Spring 方法的理解不当,我遇到了一个问题 -> GetHibernateTemplate/GetSession。当我使用 native sql 查询 [getSession().crea
我编写了一个过滤器,它会使当前 session 无效并创建新 session 并将旧 session 的属性复制到新 session 中。这在 tomcat5 和 jdk 1,4 中工作正常但是当我将
我正在测试以下方法: public static String createSn(HttpServletRequest request, String usrnm) { HttpSession
我脑子里有以下代码 jQuery(document).ready(function() { var pic = 0; FB.init({appId: '135570939849404'
我有一个问题。在 glassfish 的 servlet 中,我调用方法 request.getSession(false)。它应该返回 null。但是总是返回一个 session。此外,如果我在调用
我是一名优秀的程序员,十分优秀!