Spring Boot中会话范围和全局会话范围有什么区别?

时间:2017-05-10 08:17:28

标签: spring-boot scope

我正在开发我的第一个Spring Boot应用程序,我想我忘了在我的项目中添加范围内容。 我的项目中有Spring Web,Spring Security,Spring Data,Thymeleaf。

当用户登录应用程序时,它以其属性启动,但当另一个用户登录时,两个用户都开始查看最后一个用户的属性。

我希望所有用户都拥有自己的属性并且工作得很顺利。

哪种范围适合我的情况?

我是否需要将@Scope注释添加到所有方法中,还是可以在application.properties中基本设置?

非常感谢提前!

编辑:     @RequestMapping(value =" /",method = RequestMethod.GET)     public ModelAndView home(ModelAndView模型){

    String bagliKullaniciAdi=bagliKullaniciAdiniAl();
    initializeFolders(bagliKullaniciAdi);

    KullaniciEntity kullanici = userServ.findByUsername(bagliKullaniciAdi);

    String ad= kullanici.getAd();
    String soyad = kullanici.getSoyad();

    String tamAd=ad+" "+soyad;

    model.setViewName("index");
    model.addObject("isim", tamAd);

    //initialize
    setCtrlKuyruk(true);
    setAjxEvrakTur("");
    setAjxKategori("");
    setAjxBelgeTur("");
    setAjxFirma("");
    setAjxProje("");
    setAjxAciklama("");

    setAraEvrak("");
    setAraKategori("");
    setAraKelime("");
    setAraFirma("");
    setAraAciklama("");


    return model;
}


public String bagliKullaniciAdiniAl(){

    Authentication auth = SecurityContextHolder.getContext().getAuthentication();               
    String username=auth.getName();

    return username;

}


public Boolean initializeFolders(String bagliKullaniciAdi){

    if("user1".equals(bagliKullaniciAdi)){
        setInitKlasor("/user1/");
        setInitYol("\\\\as04\\ARSIV\\user1\\");
        setInitBelgeAdi(null);
        setInitBelgeSayisi(null);
        setInitTxt(null);
        return true;
    }else if("user2".equals(bagliKullaniciAdi)){
        setInitKlasor("/user2/");
        setInitYol("\\\\as04\\ARSIV\\user2\\");
        setInitBelgeAdi(null);
        setInitBelgeSayisi(null);
        setInitTxt(null);
        return true;
    }else if..... many users
    return false;
}

0 个答案:

没有答案