рдЗрд╕рд▓рд┐рдП,
рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдХреА рдирд┐рд░рдВрддрд░рддрд╛ рдореЗрдВ
, рдореИрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЬреАрд╡рди рдХреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдБрдЧрд╛ рдЬреЛ рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЬреАрд╡рди рдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рдорд┐рд▓реА рдереАрдВред
рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ
рд╢рд╛рдпрдж рдореЗрд░реЗ рдЖрд╡реЗрджрди рдореЗрдВ рдХреИрд╢ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рд╕рдмрд╕реЗ рдЖрдо рд╕рдорд╕реНрдпрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдПрдХ рдЪрд▓ рд░рд╣реЗ рд╕рд░реНрд╡рд░ рдкрд░ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд░реЛрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрджрд┐ рдпреЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд┐рд╕реА рдХрд╛рд░реНрдпрд╢реАрд▓ рд╕рд░реНрд╡рд░ рдХреЗ рдлрд╝реИрдХреНрдЯрд░реА рд╕рддреНрд░реЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд╣реАрдВ рдЪрд▓рд╛рдИ рдЬрд╛рддреА рд╣реИрдВ, рддреЛ рдЗрд╕ рдлрд╝реИрдХреНрдЯрд░реА рдХреЗ рдХреИрд╢ рдХреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдХрд┐рдП рдЧрдП рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рдкрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рдореЗрдВ рдбреЗрдЯрд╛ рдЕрд╕рдВрдЧрддрд┐ рдХреА рд╕рдорд╕реНрдпрд╛ рдорд┐рд▓рддреА рд╣реИред рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рдХрдИ рддрд░реАрдХреЗ рд╣реИрдВ:
- рд╕рд░реНрд╡рд░ рд░реАрд╕реНрдЯрд╛рд░реНрдЯ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рдФрд░ рдЖрдорддреМрд░ рдкрд░ рдЕрд╕реНрд╡реАрдХрд╛рд░реНрдп рддрд░реАрдХрд╛ рд╣реИ;
- рдХреБрдЫ рддрдВрддреНрд░реЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреИрд╢ рдХреЛ рд╕рд╛рдлрд╝ рдХрд░рдирд╛ рд╢рд╛рдпрдж рд╕рд╛рджрдЧреА рдФрд░ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЗрд╖реНрдЯрддрдо рддрд░реАрдХрд╛ рд╣реИред рдЗрд╕ рд╡рд┐рдзрд┐ рдХреЛ рдЬреЗрдПрдордПрдХреНрд╕ рдореЗрдВ рдПрдХ рд╡реЗрдм рдкреЗрдЬ рдпрд╛ рдЕрдиреНрдп рдЗрдВрдЯрд░рдлреЗрд╕ рдореЗрдВ рд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╡рд┐рдзрд┐ рдХрд╛ рд▓рдЪреАрд▓рд╛рдкрди рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдмрд╛рд░ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХрднреА рднреА, рдХрд╣реАрдВ рднреА рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдкрдХрд╛ рдХреИрд╢ рдкреНрд░рджрд╛рддрд╛ EHCache рд╣реИ рдФрд░ рдкреНрд░рджрд╛рддрд╛ рд╡рд░реНрдЧ SingletonEhCacheProvider рд╣реИ, рддреЛ рдЖрдкрдХрд╛ рдХреЛрдб рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд╕рдХрддрд╛ рд╣реИ:
public String dumpKeys() { String regions[] = CacheManager.getInstance().getCacheNames(); StringBuilder allkeys = new StringBuilder(); String newLine = System.getProperty("line.separator"); for (String region : regions) { Ehcache cache = CacheManager.getInstance().getEhcache(region); allkeys.append(toSomeReadableString(cache.getKeys())); allkeys.append(newLine); } return allkeys.toString(); }
рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ, рдЗрд╕ рдХреЛрдб рдХреЛ рд╣рд╛рдЗрдмрд░рдиреЗрдЯ рдХреЗ рд╕рдорд╛рди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрд┐рдирдХреЗ рдЖрдВрдХрдбрд╝реЗ рдЖрдк рдЯреНрд░реИрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг рдпрд╣рд╛рдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред рд╕рддреНрд░ рдХрд╛рд░рдЦрд╛рдиреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
- рд╕рддреНрд░ рд╕рд░реНрд╡рд░ рдлрд╝реИрдХреНрдЯрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдирд╛ред рдпрд╣ рджреВрд╕рд░реА рд╡рд┐рдзрд┐ рдХреЗ рд╕рдорд╛рди рд╣реИ, рдПрдХрдорд╛рддреНрд░ рдЕрдВрддрд░ рдпрд╣ рд╣реИ рдХрд┐ рд╣рдо рдХреИрд╢ рдХреЛ рд╕рд╛рдл рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореМрдЬреВрджрд╛ рдХрд╛рд░рдЦрд╛рдиреЗ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рднреА рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рдХреИрд╢ рд╕реНрд╡рдпрдВ рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдЗрд╕ рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рддрд░реНрдХрд╕рдВрдЧрдд рд╣реИ рдпрджрд┐ рдХреИрд╢ рдмрдбрд╝рд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдирдпрд╛ рдмрдирд╛рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╕реНрддрд╛ рд╣реИ;
рдХреНрд╡реЗрд░реА рдХреИрд╢
рдХреНрд╡реЗрд░реА рдХреИрд╢ рд╕рдВрднрд╡рддрдГ рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рдЙрди рд╕рднреА рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдХреНрд╖рдо рд╣реИред рдЗрд╕рдХреЗ рдХрдИ рдХрд╛рд░рдг рд╣реИрдВ:
- рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ (рдЬреЛ рдореИрдВ рдкрд╣рд▓реЗ рд▓реЗрдЦ рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдирд╛ рднреВрд▓ рдЧрдпрд╛ рдерд╛), рдЗрд╕ рдХреИрд╢ рдореЗрдВ рдбреЗрдЯрд╛ рдХреА рдХреБрдВрдЬреА рдХреЗрд╡рд▓ рдЕрдиреБрд░реЛрдз рдкреИрд░рд╛рдореАрдЯрд░ рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рд╕реНрд╡рдпрдВ рдЕрдиреБрд░реЛрдз рд╣реИред рдпрд╣ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдЬрдм рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЕрдиреБрд░реЛрдз рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рд╡реЗ рдмрдбрд╝реЗ рд╣реЛрддреЗ рд╣реИрдВред
- рдХреНрд╡реЗрд░реА рдХреИрд╢ рдЕрдХреНрд╕рд░ рдлрд╝реНрд▓рд╢ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣реА рд╣реИ, рдЕрдЧрд░ рдХреНрд╡реЗрд░реА рдореЗрдВ рднрд╛рдЧ рд▓реЗрдиреЗ рд╡рд╛рд▓реЗ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдЯреЗрдмрд▓ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдХреИрд╢ рд░реАрд╕реЗрдЯ рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рдХреНрд╡реЗрд░реА рдХреЛ рдлрд┐рд░ рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдЗрд╕рд▓рд┐рдП, рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдмрд╣реБрдд рд╕рд╛рд╡рдзрд╛рдиреА рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдФрд░ рдпрд╛рдж рд░рдЦреЗрдВ - рдпрд╣ рд╕рдм рдХреБрдЫ рдПрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдХреИрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред рдХреЗрд╡рд▓ рдЙрди рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдХреИрд╢ рдХрд░реЗрдВ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрдкрдХреЗ рдЖрд╡реЗрджрди рдФрд░ рдЙрди рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдЧрддрд┐ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдирдХреЗ рд▓рд┐рдП рдХреИрд╢ рд╢рд╛рдпрдж рд╣реА рдХрднреА рд░реАрд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдХреНрд╡реЗрд░реА рдХреИрд╢ рдХреЗ рд▓рд┐рдП рдПрдХ рдмреБрд░реА рдЬрдЧрд╣ рдХрд╛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрджрд╛рд╣рд░рдг рд╕рдВрд╕реНрдерд╛рдУрдВ рдкрд░ рдЕрджреНрдпрддрди рдХрд░рдиреЗ / рдЬреЛрдбрд╝рдиреЗ рдХреА рдЙрдЪреНрдЪ рджрд░ рдХреЗ рд╕рд╛рде рд╕рдВрд╕рд╛рдзрди рдкрд░ рдХреБрдЫ рдХреА рд░рд╛рд╢рд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╣реИред рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдЖрдкрдХреЛ рдЖрд╡реЗрджрди рдореЗрдВ рдмрдирд╛рдИ рдЧрдИ рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреЗ рдЖрдВрдХрдбрд╝реЛрдВ рдХреЛ рдЙрдирдХреА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдФрд░ рдХреБрдЫ рдЕрдиреНрдп рдорд╛рдкрджрдВрдбреЛрдВ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
Criteria criteria = getSession().createCriteria(Plan.class); criteria.setProjection(Projections.projectionList() .add(Projections.groupProperty("status")) .add(Projections.rowCount()) ); criteria.setCacheable(true);
рд╣рд░ рдмрд╛рд░ рдЬрдм рдЖрдк рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдПрдХ рдирдИ рдпреЛрдЬрдирд╛ рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ рдореМрдЬреВрджрд╛ рдПрдХ рдХреЛ рдмрджрд▓рддреЗ рд╣реИрдВ, рддреЛ рдХреИрд╢ рд░реАрд╕реЗрдЯ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдЗрддрдирд╛ рд╣реА рдирд╣реАрдВ, рдХреИрд╢ рдХреЛ рд▓рдЧрд╛рддрд╛рд░ рдлреНрд▓рд╢ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рдиреЗ рдФрд░ рдХреИрд╢ рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЧрд╛рддрд╛рд░ рд▓рд╛рдЧрддреЗрдВ рднреА рд╣реИрдВред рдпрд╣ рдирд╛рдЯрдХреАрдп рд░реВрдк рд╕реЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рджрд░рдЕрд╕рд▓, рдпрд╣ рдПрдХ рдмрд╛рд░ рдореЗрд░реЗ рдЖрд╡реЗрджрди рдХреЗ рд╕рд╛рде рд╣реБрдЖ рдерд╛ред
рдХреИрд╢реНрдб рдЖрдЗрдЯрдо рд╣рдЯрд╛рдПрдВ
рдореИрдВ рдЕрдм рдЙрди рд╕рднреА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЛ рдпрд╛рдж рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдЬреЛ рдХреИрд╢ рдореЗрдВ рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рд╣реБрдИрдВред рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдпрд╛рдж рд╣реИ - рдЙрди рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд╣рдЯрд╛рдирд╛ рдЬреЛ рдПрдХ рдХреИрд╢реНрдб рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рд╣реИрдВред рдпрд╣ рдЬреНрдЮрд╛рдд рд╣реИ рдХрд┐ рд╡рд╕реНрддреБрдУрдВ рдФрд░ рдЙрдирдХреА рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХреИрд╢ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдирд┐рдореНрди рд╡рд░реНрдЧ рд╣реИ:
@Entity @Table(name = "shared_doc") @Cache(usage = CacheConcurrencyStrategy.READ_WRITE) public class SharedDoc{ @Cache(usage = CacheConcurrencyStrategy.READ_WRITE) private Set<User> users; }
рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдлрд┐рд░ рд╣рдо рдЙрд╕рдХрд╛ рдирд┐рд╖реНрдХрд╛рд╕рди рдХрд░рддреЗ рд╣реИрдВ:
getSession().delete(user)
рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рд╣рдЯрд╛рдП рдЧрдП рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдВрдЧреНрд░рд╣ рдХреЗ рдХреИрд╢ рдореЗрдВ рд░рд╣рддрд╛ рд╣реИред рд╣рдореЗрдВ рдЧреИрд░-рд╕реБрд╕рдВрдЧрдд рдбреЗрдЯрд╛ рдорд┐рд▓рддрд╛ рд╣реИред рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдХреИрд╕реНрдХреЗрдбрд┐рдВрдЧ рд╡рд┐рд▓реЛрдкрди рдХреЗ рд▓рд┐рдП рднреА рдпрд╣реА рд╕рддреНрдп рд╣реИред рдЬрдм рдХреИрд╕реНрдХреЗрдб рдореЗрдВ рд╣рдЯрд╛рдП рдЧрдП рдСрдмреНрдЬреЗрдХреНрдЯ рдХреИрд╢ рдореЗрдВ рдмрдиреЗ рд░рд╣реЗред рдПрдХ рд╕реНрдкрд╖реНрдЯ рд╕рдорд╛рдзрд╛рди рд╕рдВрдЧреНрд░рд╣ рдХреИрд╢ рд╕реЗ рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд╣рдЯрд╛рдирд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдпрд╣ рднреА рд╕реНрдерд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЕрд░реНрдерд╛рддреН, рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рд╡рд┐рд▓реЛрдкрди рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП:
SharedDoc doc = (SharedDoc) session.load(SharedDoc.class, 1L); doc.getUsers().remove(user); session.delete(user);
рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗрд╡рд▓ рдПрдХ рд╕рдВрдЧреНрд░рд╣ рдХреИрд╢ рдореЗрдВ рд╣реЛрддрд╛ рд╣реИ - рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ред рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рд░реНрдп рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рд╣реИ рдЬрдм рдЗрд╕ рддрд░рд╣ рдХреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╕рдВрдЧреНрд░рд╣ рд╣реИрдВ рдФрд░ рд╡реЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд╕реНрдерд╛рдУрдВ рдкрд░ рдмрд┐рдЦрд░реЗ рд╣реБрдП рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдХреИрд╢ рдореЗрдВ рдЫреЛрдбрд╝реА рдЧрдИ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╕рд╛рде рдХрд┐рд╕реА рднреА рдХреНрд░рд┐рдпрд╛ рдХреЛ рдЖрдЬрдорд╛рддреЗ рд╕рдордп рдЗрд╕реА рддрд░рд╣ рдХреА рд╕рдорд╕реНрдпрд╛ ObjectNotFoundException рдХреЛ рдЬрдиреНрдо рджреЗ рд╕рдХрддреА рд╣реИред
рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзреА рд▓реЗрдирджреЗрди
рдХрднреА-рдХрднреА рдХреИрд╢ рдЖрдкрдХреЛ рд╡реНрдпрд╡рд╣рд╛рд░ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзреА рд▓реЗрдирджреЗрди рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЙрдореНрдореАрдж рдХрд░рддреЗ рд╣реИрдВред рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдорд╛рдорд▓реЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:
Session session1 = getSession(); Session session2 = getSession()); Transaction t = session1.beginTransaction(); Plan plan = (Plan) session1.load(Plan.class, 1L); System.out.println (plan.getName()); plan.setName(newName); t.commit(); t = session2.beginTransaction(); plan = (Plan) session2.load(Plan.class, 1L); System.out.println (plan.getName()); tx2.commit(); session1.close(); session2.close();
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпреЛрдЬрдирд╛ рдХреЗ рджреВрд╕рд░реЗ рдХреЙрд▓ рдХреЗ рд╕рд╛рде, рдЗрд╕реЗ рджреВрд╕рд░реЗ рд╕реНрддрд░ рдХреЗ рдХреИрд╢ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП - рд▓реЗрдХрд┐рди рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред рдЪреВрдВрдХрд┐ рд╕рддреНрд░ 2 рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдмрджрд▓рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдФрд░ рджреВрд╕рд░реЗ рд╕реНрддрд░ рдХреЗ рдХреИрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рд╣рд╛рдЗрдмрд░рдиреЗрдЯ рд╕рддреНрд░ рдирд┐рд░реНрдорд╛рдг рд╕рдордп рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЙрд╕ рд╕рдордп рдЬрдм рд╡рд╕реНрддреБ рдХреЛ рдЕрдВрддрд┐рдо рд░реВрдк рд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдЖрдкрдХреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдорд╛рдирд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЙрди рдЬрдЧрд╣реЛрдВ рдкрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рднрд╛рд░ рдкреИрджрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рдЖрдк рдЙрд╕ рдкрд░ рднрд░реЛрд╕рд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред
рдпрд╣рд╛рдБ, рд╢рд╛рдпрдж, рд╣рд╛рдЗрдмрд░рдиреЗрдЯ рдХреИрд╢ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рдореИрдВ рдЙрди рд╕рднреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдпрд╛рдж рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛ рд╣реВрдБред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдореИрдВрдиреЗ рд╡рд┐рддрд░рд┐рдд рдХреИрд╢ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ рдФрд░ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдореБрдЭреЗ рдХреБрдЫ рдирд╣реАрдВ рдХрд╣рдирд╛ рд╣реИред рдпрджрд┐ рдЖрдк рд▓реЗрдЦ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдЕрдиреНрдп рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВ, рдореИрдВ рдЬреЛрдбрд╝реВрдВрдЧрд╛ред