Korzystam z backrestu java RESTful na GlassFish. Do tego dołączony jest frontend HTML5/JS, który mogę umieścić w projekcie webapp (a następnie dołączyć backend jako zależność) lub uruchomić na serwerze internetowym IIS w innej lokalizacji. CORS nie stanowi problemu. Cokolwiek rozwiązuje ten następujący problem:ThreadLocal Singleton
Sytuacja:
- Użytkownik1 loguje się i ścieżka bazy danych jest ustawiony na 'db/user1 /'
- user1 wstawia 'wartość 1' do bazy
- kłody użytkownik2 na i ścieżka bazy danych jest ustawiony na „db/użytkownik2 /”
- User1 próbuje usunąć „wartość 1” z bazy
User1 nie byłoby można usunąć wartość 1 z db/user1, ponieważ ścieżka do bazy danych została zmieniona na db/user2 i nie ma wartości 1 w tej bazie danych.
public class DataAccess{
private static DataAccess dataaccess;
private String databasepath;
public static DataAccess getInstance() {
if (dataaccess == null) {
dataaccess = new DataAccess();
}
}
}
Jak mogę zmodyfikować metodę getInstance() tak, że działa jako pojedyncza, ale tylko wewnątrz wątku tego użytkownika? Widziałem coś, co nazywa się wątkowo-lokalny, ale nie do końca to rozumiem, czy to może być rozwiązanie?
Każda pomoc jest z pewnością doceniana.
Zadajesz 9 pytań i akceptujesz 0. Popraw to. – gaborsch
jak mogę zaakceptować odpowiedź? –
Przeczytaj ten rozdział w FAQ, są nawet zrzuty ekranu: http://stackoverflow.com/faq#howtoask – gaborsch