クラスがあります:一般に、クラス内からセッションオブジェクトを取得する方法は?
@Configuration
@ComponentScan("com.ambre.pta")
@EnableTransactionManagement
@PropertySources({
@PropertySource("classpath:fr/global.properties"),
@PropertySource("classpath:fr/main.properties"),
@PropertySource("classpath:fr/admin.properties"),
@PropertySource("classpath:fr/referentiel.properties"),
@PropertySource("classpath:fr/departement.properties"),
@PropertySource("classpath:fr/exercice.properties"),
@PropertySource("classpath:fr/defi.properties")
})
public class ApplicationContextConfig {
@Bean
public static PropertySourcesPlaceholderConfigurer properties() {
return new PropertySourcesPlaceholderConfigurer();
}
@Bean(name = "viewResolver")
public InternalResourceViewResolver getViewResolver() {
InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
viewResolver.setPrefix("/WEB-INF/views/");
viewResolver.setSuffix(".jsp");
return viewResolver;
}
@Bean(name = "dataSource")
public DataSource getDataSource() {
BasicDataSource bds = new BasicDataSource();
bds.setDriverClassName("oracle.jdbc.driver.OracleDriver");
bds.setUrl("jdbc:oracle:thin:@localhost:1521:xe");
bds.setUsername("pta");
bds.setPassword("pta");
return bds;
}
@Autowired
@Bean(name = "sessionFactory")
public SessionFactory getSessionFactory(DataSource dataSource) {
LocalSessionFactoryBuilder sessionBuilder = new LocalSessionFactoryBuilder(dataSource);
sessionBuilder.scanPackages("com.ambre.pta.model");
return sessionBuilder.buildSessionFactory();
}
@Autowired
@Bean(name = "transactionManager")
public HibernateTransactionManager getTransactionManager(SessionFactory sessionFactory) {
HibernateTransactionManager transactionManager = new HibernateTransactionManager(sessionFactory);
return transactionManager;
}
@Autowired
@Bean(name = "utilisateurDao")
public UtilisateurDAO getUtilisateurDao(SessionFactory sessionFactory) {
return new UtilisateurDAOImpl(sessionFactory);
}
}
我々はこのようで、このクラス内request
オブジェクトを取得することができます
HttpServletRequest request = ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();
のでsession
(HttpSessionの)オブジェクトを取得する方法はありますか?
_ _ドン」:しかし、物事をより簡単に、私はあなたがセッションを抽出することができ、そこからのHttpServletRequestオブジェクトを扱うことにしますそれをしないでください。しかし、あなたが主張するなら: 'request.getSession()' ... – zeroflagL
request.getSession()。setAttribute私はいくつかの属性を設定します。次のURLでsession.getAttributeがnullになります。任意のアイデア – Deepak