рдПрдХ рд╡реЗрдм рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рддреНрд╡рд░рд┐рдд рд╢реБрд░реБрдЖрдд (рдмреАрдИ - рдЬрд╛рд╡рд╛ рд╕реНрдкреНрд░рд┐рдВрдЧ, рдПрдлрдИ - рд░рд┐рдПрдХреНрдЯ рд░рд┐рдбрдХреНрд╕, рдЗрдВрдЯрд░реИрдХреНрд╢рди - рд░реЗрд╕реНрдЯ, рд╡реЗрдмрд╕реНрдХреЗрдЯ)



рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рддреНрд╡рд░рд┐рдд рд╢реБрд░реБрдЖрдд

рдЧрд┐рдЯ рдореЗрдВ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХ


рдПрдХ рдЖрдзреБрдирд┐рдХ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рджреЛрдиреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдореЗрдВ рдХреМрд╢рд▓ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреЙрд░реНрдкреЛрд░реЗрдЯ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рд╕рдмрд╕реЗ рдЖрдо рд╕рдВрдпреЛрдЬрди рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ рдФрд░ рд░рд┐рдПрдХреНрдЯ рдХреЗ рд▓рд┐рдП рд╕реНрдкреНрд░рд┐рдВрдЧ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЬрд╛рд╡рд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рднреА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдкрд╛рд╕ рдкреВрд░реНрдг рд╕реНрдЯреИрдХ рдХреМрд╢рд▓ (рд╕рд░реНрд╡рд░ рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрдХреНрд╖ рджреЛрдиреЛрдВ рдХрд╛ рдЬреНрдЮрд╛рди) рдирд╣реАрдВ рд╣реИ, рдФрд░ рд╢реБрд░реБрдЖрдд рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП, рдЗрд╕ рддрд░рд╣ рдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛ рдмрд┐рд▓реНрдХреБрд▓ рдЕрд╕рдВрднрд╡ рдХрд╛рд░реНрдп рд╣реИред

рддреЛ, рдпрд╣рд╛рдВ рдПрдХ рддреИрдпрд╛рд░ рд╕рдорд╛рдзрд╛рди рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдЗрд╕ рддрд░рд╣ рдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛, рд╕рд╛рде рд╣реА рдПрдХ рдирдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╕рдордп рд╕рдордп рднреА рдмрдЪрд╛рдПрдЧрд╛ред

рдЖрдЗрдП рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рддрдХрдиреАрдХреЛрдВ рдкрд░ рдХрд░реАрдм рд╕реЗ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВред


рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб:


рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг - рдврд╛рд▓ 4.8.1 (рд╕рд╛рдордиреЗ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЗ рд▓рд┐рдП рд╡реИрдХрд▓реНрдкрд┐рдХ рдЧреНрд░реЗрдб-рдиреЛрдб-рдкреНрд▓рдЧрдЗрди)
рднрд╛рд╖рд╛ - рдЬрд╛рд╡рд╛ 1.8 (рдпрд╛ рдмрд╛рдж рдореЗрдВ)
рдврд╛рдВрдЪрд╛ - рд╡рд╕рдВрдд 5.x
рдбреЗрдЯрд╛рдмреЗрд╕ - рдПрдЪрдПрд╕рдХреНрдпреВрдПрд▓ 2.3.1 (рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрдЧрд╛)

рдЧреНрд░рд╛рд╣рдХ рдкрдХреНрд╖:


рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрд┐рд▓реНрдб - рд╡реЗрдмрдкреИрдХ 4.17.2
рднрд╛рд╖рд╛ - JS6
рдлреНрд░реЗрдорд╡рд░реНрдХ - рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ 16.4.0, redux 3.7.2, рдмреВрдЯрд╕реНрдЯреНрд░реИрдк (6.3.1 рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛)
рдЕрдЧрд░ рд╕рдм рдХреБрдЫ рдЖрдкрдХреЛ рд╕реВрдЯ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЖрдк рдЬрд╛рд░реА рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред

рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд▓реЙрдиреНрдЪ


рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рд╣рдо рд╕рдм рдХреБрдЫ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рддреЛ рдпрд╣ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдордЬреЗрджрд╛рд░ рд╣реЛрдЧрд╛!
рдЖрдк рдпрд╣рд╛рдВ рд╕реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЗрд╕реЗ рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдлреА рд╕рдордп рдФрд░ рдзреИрд░реНрдп рд▓рдЧрддрд╛ рд╣реИред рдореБрдЦреНрдп рдмрд╛рдд рдХреНрд░рдо рдореЗрдВ рд╕рдм рдХреБрдЫ рдХрд░рдирд╛ рд╣реИ:
рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рд╕реНрдерд╛рдкрдирд╛ рдЬрд╛рдирдХрд╛рд░реА (рдкрд╛рдардХреЛрдВ рдХреЗ рдЕрдиреБрд░реЛрдз рдкрд░) рд▓реЗрдЦ рдХреЗ рдиреАрдЪреЗ


  1. рдЬрд╛рд╡рд╛ 1.8 рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ (JAVA_HOME рдкрдВрдЬреАрдХрд░рдг рдХрд░рдирд╛ рди рднреВрд▓реЗрдВ)
  2. рдиреЛрдб рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред js
  3. рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЦреЛрд▓реЗрдВ (рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЖрдк рд╕реНрд╡рдпрдВ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдПрдВрдЧреЗ рдХрд┐ рдЖрдкрдХреЗ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдпрд╣ рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИ)
  4. рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдкрд░ рдЬрд╛рдПрдВ (рдЙрджрд╛ред C C: \ Git \ react-start )
  5. Npm i рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдВ (рдпрд╣ рдХрдорд╛рдВрдб рд╕рд╛рдордиреЗ рдХреЗ рд╕рднреА рдЖрд╢реНрд░рд┐рддреЛрдВ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдЧреА рдФрд░ рдЙрдиреНрд╣реЗрдВ рдиреЛрдб_рдореЙрдбрд▓ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдбрд╛рд▓ рджреЗрдЧреА)
  6. рд░рдирд▓ рдмрд┐рд▓реНрдб рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдБ (рдпрд╣ рдХрдорд╛рдВрдб рдЖрдкрдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдПрдХрддреНрд░рд┐рдд рдХрд░реЗрдЧрд╛ рдФрд░ рдмрд┐рд▓реНрдб рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕рдм рдХреБрдЫ рдбрд╛рд▓ рджреЗрдЧрд╛)
  7. рд░рдирд▓реЗ рдмреВрдЯрд░реБрди рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдБ (рдЖрдкрдХрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЕрдм рдЪрд▓ рд░рд╣рд╛ рд╣реИ)
  8. рдпрд╣ рдХреЗрд╡рд▓ рд▓рд┐рдВрдХ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдФрд░ рдкрд░рд┐рдгрд╛рдо рдХрд╛ рдЖрдирдВрдж рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдмрдиреА рд╣реБрдИ рд╣реИред

рдЖрдкрдХреЛ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕реЗ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдП:



рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐


рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдореЗрд░рд╛ рдореБрдЦреНрдп рдХрд╛рд░реНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЛ рджрд┐рдЦрд╛рдирд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдореИрдВ рдореВрд▓ рд░реВрдк рд╕реЗ рдпрд╣ рдмрддрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рд╕реБрд▓рдн рд╣реЛрдЧрд╛ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдХреМрди рд╕реА рдлрд╝рд╛рдЗрд▓ рдХреБрдЫ рдЧреАрддрд╛рддреНрдордХ рдЦреБрджрд╛рдИ рдХреЗ рд╕рд╛рде рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рдмреИрдХ-рдПрдВрдб рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП, рдЧреНрд░рд╛рд╣рдХ рдкрдХреНрд╖ рдЬреНрдпрд╛рджрд╛рддрд░ рджрд┐рд▓рдЪрд╕реНрдк рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рд╣реЛрдЧрд╛ред

рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рд╕рдВрд░рдЪрдирд╛


рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ рддреЛ, рдореИрдВрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реЗ рд╕рдм рдХреБрдЫ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдлрд┐рд░ рдХреЛрдИ рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕рдордп рдХреЗ рд╕рд╛рде рдЖрдЧреЗ рдмрдврд╝рддреА рд╣реИ, рд▓реЗрдХрд┐рди рд╢реБрд░реБрдЖрддреА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдбрд░рд╛рддрд╛ рд╣реИред

рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рд╣рдорд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдХреМрди рд╕реА рдлрд╛рдЗрд▓реЗрдВ рд╣реИрдВ рдФрд░ рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИред рдЪрд▓реЛ рд╕рд░реНрд╡рд░ рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рдЗрдЪреНрдЫрд┐рдд рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдлрд┐рд░ рд╕реЗ рддреЛрдбрд╝рддреЗ рд╣реИрдВред

рд╕рд░реНрд╡рд░:


build.gradle - рд╣рдорд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рдлрд╛рдЗрд▓ред рдпрд╣ рдЙрди рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ рдЬрд┐рдирдХреА рд╣рдореЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рднрдВрдбрд╛рд░ рдХреЗ рд▓рд┐рдВрдХ рдЬрд╣рд╛рдВ рдЙрдиреНрд╣реЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╣реИред рдФрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рд╣реА рдЧреНрд░реЗрдб-рдиреЛрдб-рдкреНрд▓рдЧ рдЗрди рдкреНрд▓рдЧрдЗрди рднреА рдкрдВрдЬреАрдХреГрдд рд╣реИ, рдЬреЛ рд╕рд░реНрд╡рд░ рдкрд╛рд░реНрдЯ рдХреЛ рдЕрд╕реЗрдВрдмрд▓ рдХрд░рддреЗ рд╕рдордп, рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдлреНрд░рдВрдЯ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдирд┐рд╕реНрд╕рдВрджреЗрд╣ рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред

рдХрд▓реЗрдХреНрдЯрд░ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП gradlew рдФрд░ gradlew.bat рдФрд░ gradle рдлрд╝реЛрд▓реНрдбрд░ рдЖрд╡рд╢реНрдпрдХ рднрд╛рдЧ рд╣реИрдВред рд╡реИрд╕реЗ, рдЕрдЧрд░ рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рдЧреНрд░реЗрдб рдмрд┐рд▓реНрдб рдХрдорд╛рдВрдб рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдЧреНрд░реЗрдбреЗрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рдпрд╣ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

README.md - рднрдВрдбрд╛рд░ рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рдлрд╝рд╛рдЗрд▓ред

Src / main / webapp / WEB-INF / рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рджреЛ jboss-web.xml рдФрд░ web.xml рдлрд╛рдЗрд▓реЗрдВ рд╣реИрдВ рдЬреЛ рд╕реНрдерд╛рдиреАрдп рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдкрдХреЛ рд╡рд╛рдЗрд▓реНрдбрдлрд▓реА рдЬреИрд╕реЗ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдкрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред

application.yml рднреА рдПрдХ рдорд╣рддреНрд╡рд╣реАрди рдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рд╣реИред рдпрд╣ рд╡рд╕рдВрдд рдХреЗ рд╡рд┐рдиреНрдпрд╛рд╕ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдкреЛрд░реНрдЯ рд╣реИ: 8090 - рд╡рд╣ рдкреЛрд░реНрдЯ рдЬрд┐рд╕ рдкрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯрд┐рдВрдЧреНрд╕ред

рдпрджрд┐ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдПрдЪрдПрд╕рдХреНрдпреВрдПрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ - рдпрд╣ рдПрдХ рдЬрд╛рд╡рд╛-рдЖрдзрд╛рд░рд┐рдд рдлрд╝рд╛рдЗрд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рд╣реИред рдЬрдм рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИ, рддреЛ db / рдлрд╝реЛрд▓реНрдбрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдмрдирд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдЬрд┐рд╕рдореЗрдВ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрд╡рдпрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЖрдк рдХрд┐рд╕реА рднреА рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕реЗ рдЖрдк рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдкреЛрд╕реНрдЯрдЧреНрд░реЗрдб, рдЗрд╕ рдкрд░ рдХреЛрдИ рдореМрд▓рд┐рдХ рдкреНрд░рддрд┐рдмрдВрдз рдирд╣реАрдВ рд╣реИрдВред

рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдХреЛрдб рд╕реНрд╡рдпрдВ src / main / java рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИ ред

рдЧреНрд░рд╛рд╣рдХ:


.babelrc - рдмреЗрдмрд▓ рдХреЗ рд▓рд┐рдП рд╕рднреА рд╡рд┐рдиреНрдпрд╛рд╕ рдпрд╣рд╛рдБ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реИрдВред рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ рдмрд╛рдмреЗрд▓ рдХреЛ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ, рдпрд╣ рдПрдХ рдРрд╕реА рдЪреАрдЬ рд╣реИ рдЬреЛ рдлреНрд░рдВрдЯ-рдПрдВрдб рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рдореЗрдВ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреА рдирдИ рдкреНрд░рдХрд╛рд░ рдХреА рдЪреАрдЬреЛрдВ рдХреЛ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддреА рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ JS6, JS7, JSX, рд╕рд╛рдзрд╛рд░рдг js рдореЗрдВред рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореЗрд░реЗ рдкрд╛рд╕ рдкреНрд▓рдЧрдЗрди "рдкреНрд▓рдЧрдЗрдиреНрд╕" рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ: ["рдЯреНрд░рд╛рдВрд╕рдлреЙрд░реНрдорд░-рдбреЗрдХреЛрд░реЗрдЯрд░реНрд╕-рд▓реАрдЧреЗрд╕реА"] рдЬреЛ рдЖрдкрдХреЛ рдбреЗрдХреЛрд░реЗрдЯрд░реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ - рдпрд╣ рдЬрд╛рд╡рд╛ рдореЗрдВ @ рдПрдиреЛрдЯреЗрд╢рди рдХреА рддрд░рд╣ рд╣реИред рдореИрдВрдиреЗ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рд▓рд┐рдП, рд╕рдм рдХреБрдЫ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдореИрдВрдиреЗ рдЬрд╛рдВрдЪ рдХреАред

.npmrc - js рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд▓рд┐рдП рднрдВрдбрд╛рд░ рдХрд╛ рд▓рд┐рдВрдХред

package.json - рдпрд╣рд╛рдБ рдПрдХ рдмрд╣реБрдд рд╣реА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдлрд╝рд╛рдЗрд▓ рд╣рдорд╛рд░реЗ рд╕рдВрдкреВрд░реНрдг рдЕрдиреБрдкреНрд░рдпреЛрдЧ, js рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд▓рд┐рдВрдХ рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рднрд╛рдЧ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдФрд░ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рджреЛ рднрд╛рдЧреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ: рдирд┐рд░реНрднрд░рддрд╛рдПрдВ - рдирд┐рд░реНрднрд░рддрд╛рдПрдВ рдЬреЛ рдХрд┐ рдЖрд╡реЗрджрди рдХреЗ рд▓рд┐рдП рд╕реНрд╡рдпрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИрдВ рдФрд░ рдирд┐рд░реНрднрд░рддрд╛рдПрдВ - рдХреЗрд╡рд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрднрд░рддрд╛рдПрдВ рдЖрд╡рд╢реНрдпрдХ рд╣реИрдВред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЕрдиреБрднрд╛рдЧ рдмрд┐рд▓реНрдб рдФрд░ рд╕реНрдЯрд╛рд░реНрдЯ рдХрдорд╛рдВрдбреНрд╕ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдХреЗрд╡рд▓ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рдордиреЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдлреНрд░рдВрдЯ рдХреЛ npm рд░рди рд╕реНрдЯрд╛рд░реНрдЯ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдпрд╣ рдкреЛрд░реНрдЯ 9090 рдкрд░ рд╢реБрд░реВ рд╣реЛрдЧрд╛)ред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдлрд╝рд╛рдЗрд▓ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрдХреНрд╖ рдХреЗ рд▓рд┐рдП build.gradle рдХрд╛ рдПрдХ рдПрдирд╛рд▓реЙрдЧ рд╣реИред

webpack.config.babel.js - рд╕рдВрдкреВрд░реНрдг рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдлрд╝рд╛рдЗрд▓ рд╡реЗрдмрдкреИрдХ рд╕рдВрдЧреНрд░рд╛рд╣рдХ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╣реИред рдЗрд╕ рдЕрд╡рд╕рд░ рдкрд░, рдЖрдк рдПрдХ рдЕрд▓рдЧ рд▓реЗрдЦ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЕрднреА рднреА рдЗрд╕ рдлрд╛рдЗрд▓ рдХреЗ рдореБрдЦреНрдп рднрд╛рдЧреЛрдВ рд╕реЗ рдЧреБрдЬрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рддрд╛рдХрд┐ рдЖрдк рдЗрд╕рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рдЪрд╛рд░ рдмрдирд╛ рд╕рдХреЗрдВред

devServer
devServer: { contentBase: `/${publicPath}/`, historyApiFallback: { rewrites: [{from: /./, to: `/index.html`}] }, open: true, port: 9090, publicPath: `/`, proxy: [{ context: ['/api', '/endpoint'], target: { host: "localhost", protocol: 'http:', port: 8090 } }] }, 


DevServer рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрдХреНрд╖ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд╣рдо рдПрдХ рдЕрд▓рдЧ рдкреЛрд░реНрдЯ рдПрдирдкреАрдПрдо рд░рди рд╕реНрдЯрд╛рд░реНрдЯ рдкрд░ рдЕрдкрдирд╛ рдлреНрд░рдВрдЯ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдпрд╣ рдкреЛрд░реНрдЯ 9090 рдкрд░ рд╢реБрд░реВ рд╣реЛрдЧрд╛)ред Js рдХреЛрдб рдореЗрдВ рд╕рднреА рдкрд░рд┐рд╡рд░реНрддрди рддреБрд░рдВрдд рдЗрд╕ рд╕рд░реНрд╡рд░ рдкрд░ рдкреНрд░рднрд╛рд╡реА рд╣реЛрдВрдЧреЗред ContentBase рд╣рдорд╛рд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рд░реВрдЯ рдкрде рд╣реИред рдпрджрд┐ рд╕рд░реНрд╡рд░ рдкрд░ рдХрдИ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЪрд▓ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдЦреБрд▓рд╛: рд╕рдЪ - рдЬрдм рд╕рд░реНрд╡рд░ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдЦреБрд▓ рдЬрд╛рдПрдЧрд╛ред рдкреНрд░реЙрдХреНрд╕реА - рд╡рд╣ рдЕрдиреБрднрд╛рдЧ рдЬреЛ рд╕рд░реНрд╡рд░ рднрд╛рдЧ рдореЗрдВ рдХреЙрд▓ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИ, рдЬрд┐рд╕реЗ рд╣рдо рдкреЛрд░реНрдЯ 8090 рдкрд░ рдЪрд▓рд╛рдПрдВрдЧреЗред

рдЙрддреНрдкрд╛рджрди
 output: { filename: 'assets/javascripts/[hash].js', path: path.join(__dirname, 'src/main/resources/static'), publicPath: `/` }, 


рдЖрдЙрдЯрдкреБрдЯ - рдпрд╣ рдЦрдВрдб рд╣рдорд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рд╕реНрдерд╛рди рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк npm рд░рди рдмрд┐рд▓реНрдб рдХрдорд╛рдВрдб рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рд╣рдорд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдХреНрд▓рд╛рдЗрдВрдЯ рд╣рд┐рд╕реНрд╕рд╛ src / main / resource рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ред

рдореЙрдбреНрдпреВрд▓
 module: { rules: [ { exclude: /node_modules/, include: path.join(__dirname, 'src/main/js/'), test: /\.jsx?$/, use: 'babel-loader' }, { test: /\.css$/, use: [MiniCssExtractPlugin.loader, 'css-loader'] }, { test: /\.less$/, use: [MiniCssExtractPlugin.loader, 'css-loader', 'less-loader'] }, { test: /\.(ico|png|gif|jpe?g)$/, use: { loader: 'file-loader', options: {name: 'assets/images/[name]/[hash].[ext]'} } }, { test: /\.(svg|woff|woff2|eot|ttf)$/, use: { loader: 'file-loader', options: {name: 'assets/fonts/[name]/[hash].[ext]'} } }, {test: /\.html$/, use: 'html-loader'}, ] }, 


рдореЙрдбреНрдпреВрд▓ рдЕрдиреБрднрд╛рдЧ рд╡реЗрдмрдкреИрдХ рдХреЛ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдХреНрдпрд╛ рджреЗрдЦрдирд╛ рд╣реИ редjx, рд╢реИрд▓рд┐рдпреЛрдВ рдХреА рдлрд╛рдЗрд▓реЗрдВ, рдЪрд┐рддреНрд░ рдФрд░ рдлреЛрдВрдЯ рдФрд░ рдЙрдиреНрд╣реЗрдВ рднреА рд╣рдорд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВред

рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рд╣рдорд╛рд░реЗ js рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рдореБрдЦреНрдп рдлрд╝рд╛рдЗрд▓ рдХрд╛ рд▓рд┐рдВрдХ рд╣реИред

рдЦреИрд░, рдирд┐рд╖реНрдХрд░реНрд╖ рдореЗрдВ, HtmlWebpackPlugin рдПрдХ index.html рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдЧрд╛ рдЬрд┐рд╕рдореЗрдВ рд╕рднреА рдирд┐рд░реНрдорд┐рдд рдирд┐рд░реНрднрд░рддрд╛рдПрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрдВрдЧреАред

рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд╛рд░реНрдЯ рдХреЛрдб src / main / js рдлреЛрд▓реНрдбрд░ рдореЗрдВ рд╣реИред

рдХреЛрдб рд╕рдВрд░рдЪрдирд╛


рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рд░реЗрд╕реНрдЯ рдФрд░ рд╡реЗрдмрд╕реНрдХреЗрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рд╕рд░реНрд╡рд░ рднрд╛рдЧреЛрдВ рдХреЗ рдмреАрдЪ рдПрдХ рд╕рдВрдмрдВрдз рдмрдирд╛рдпрд╛ред рдХреМрди рдЬреНрдпрд╛рджрд╛ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реИ рдЦреБрдж рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рд╕реНрдкреНрд░рд┐рдВрдЧ рдлреНрд░реЗрдорд╡рд░реНрдХ рдФрд░ рд░реЗрдХреНрдЯ рдЯреЗрдХреНрдиреЙрд▓реЙрдЬреА рдХрд╛ рд╡рд┐рд╡рд░рдг рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд▓рдЧрд╛ред рдпрд╣ рд▓реЗрдЦ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИ рдЬреЛ рд╕рдлрд▓ рдирд╣реАрдВ рд╣реЛрддреЗ, рдпрд╛ рдХреБрдЫ рдЖрд▓рд╕реНрдпред рдпрд╣ рдПрдХ рдХрд╕реНрдЯрдорд╛рдЗрдЬреНрдб рд░реЗрдбреА-рдореЗрдб рд╡рд░реНрдХрд┐рдВрдЧ рд╕реЙрд▓реНрдпреВрд╢рди рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╡рд╣ рд╕рдм рдХреБрдЫ рд╢рд╛рдорд┐рд▓ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдПрдХ рдмрдбрд╝реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪрд╛рд╣рд┐рдПред

рдЖрдк рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдЬрд╛рд╡рд╛ рдИрдИ рдпрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рд╕реАрдЦрдиреЗ рдореЗрдВ рдПрдХ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдмрд┐рдВрджреБ рдХреЗ рд░реВрдк рдореЗрдВ рднреА рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВред рдирд┐рдпрдВрддреНрд░рдХ / RestController.java

рд╕рд░реНрд╡рд░:


рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд╛рд░реНрдЯ рдХреЛрдб src / main / java рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реИ ред

рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рд╕рдм рдХреБрдЫ рд╡рд╣рд╛рдВ рд╕реНрдерд┐рдд рд╣реИ рд╡рд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реНрдкреНрд░рд┐рдВрдЧ рдлреНрд░реЗрдорд╡рд░реНрдХ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдЕрдзреАрдирд╕реНрде рд╣реИред рдЬреЛ рд▓реЛрдЧ рдЙрд╕рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рд╡рд╣рд╛рдВ рдХреБрдЫ рднреА рджрд┐рд▓рдЪрд╕реНрдк рдирд╣реАрдВ рдорд┐рд▓реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдЬреЛ рд▓реЛрдЧ рдЕрднреА рд╢реБрд░реВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЙрдирдХреЗ рд▓рд┐рдП рдлрд┐рд░ рд╕реЗ, рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдЪрд▓рдирд╛ред

Main.java рдореБрдЦреНрдп рдлрд╛рдЗрд▓ рд╣реИред рдЗрд╕рдореЗрдВ рдореБрдЦреНрдп рд╡рд┐рдзрд┐ рд╢рд╛рдорд┐рд▓ рд╣реИ, рдЬреЛ рдкреВрд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд▓реЙрдиреНрдЪ рдХрд░рддреА рд╣реИред

рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди / WebSocketConfig.java - рдкреНрд░рд╡реЗрд╢ рдмрд┐рдВрджреБрдУрдВ рдХреЗ рд▓рд┐рдП рдЬрдм WebSocket рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реЛ

рдирд┐рдпрдВрддреНрд░рдХ - рд╕рд░реНрд╡рд░ рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рднрд╛рдЧреЛрдВ рдХреА рдмрд╛рддрдЪреАрдд рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рдХрдХреНрд╖рд╛рдПрдВред

рдирд┐рдпрдВрддреНрд░рдХ / IndexController.java - рд╣рдорд╛рд░реЗ рдЧреНрд░рд╛рд╣рдХ рднрд╛рдЧ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рдирд┐рдпрдВрддреНрд░рдХред рд╣рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ url рдПрдкреНрд▓рд┐рдХреЗрд╢рди / ** рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ (рдпрд╣ рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдХрд╛ рд╕рдВрджрд░реНрдн рдкрде рд╣реИ)

рдирд┐рдпрдВрддреНрд░рдХ / RestController.java - рдЬреИрд╕рд╛ рдХрд┐ рдирд╛рдо рдХрд╛ рддрд╛рддреНрдкрд░реНрдп рд╣реИ, рдпрд╣ рдирд┐рдпрдВрддреНрд░рдХ рд░реЗрд╕реНрдЯ рдХреЗ рд▓рд┐рдП рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рд╕рд░реНрд╡рд░ рднрд╛рдЧреЛрдВ рдХреЗ рдмреАрдЪ рдбреЗрдЯрд╛ рдХреЗ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рдПрдиреЛрдЯреЗрд╢рди @RequestMapping (рдорд╛рди = "/ рдПрдкреАрдЖрдИ / рдмрд╛рдХреА", рд╡рд┐рдзрд┐ = RequestMethod.GET) рдХрд╣рддрд╛ рд╣реИ рдХрд┐ / рдПрдкреАрдЖрдИ / рдмрд╛рдХреА рдкрд░ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдкрд░ рд╕рд░реНрд╡рд░ рд╣рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рджреЗрдЧрд╛ред

рдореИрдВрдиреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ ID рд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреНрд░рдорд╢рдГ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдФрд░ DELETE рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП PUT рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред

рдирд┐рдпрдВрддреНрд░рдХ / WebSocketController.java - WebSocket рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбреЗрдЯрд╛ рд╡рд┐рдирд┐рдордп рдХреЗ рд▓рд┐рдП рдкрде рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред GetAndSendMessage рд╡рд┐рдзрд┐ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЗ рдПрдХ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рд╡рд╛рдкрд╕ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред

рд╕реЗрд╡рд╛рдПрдВ - рдЖрдорддреМрд░ рдкрд░ рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдХреЗ рддрд░реНрдХ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИрдВред

рд╕реЗрд╡рд╛ / ORMUserService.java - рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рд╕реВрдЪреА рдмрдирд╛рдиреЗ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдбреЗрдЯрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдХреНрд▓рд╛рдЗрдВрдЯ рднрд╛рдЧ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдорд╛рдкрджрдВрдбреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдФрд░ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рдХрд┐рд╕реА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЖрдИрдбреА рд╣реИ, рдФрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛ рдирд╛рдо, рднреВрдорд┐рдХрд╛ рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рд╣реИред

рдбреЛрдореЗрди рдХрдХреНрд╖рд╛рдПрдВ рд╡реЗ рдХрдХреНрд╖рд╛рдПрдВ рд╣реЛрддреА рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рдХреЗрд╡рд▓ рдбреЗрдЯрд╛ рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рдбреЗрдЯрд╛ рдмреЗрд╕ рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдкрд░ рдЕрдиреБрдорд╛рдирд┐рдд рд╣реЛрддрд╛ рд╣реИред рдЗрди рд╡рд░реНрдЧреЛрдВ рдореЗрдВ рдирд┐рд╣рд┐рдд рддрд░реНрдХ рд╕реЗ, рдпрд╣ рдбреЗрдЯрд╛ рдХреА рд╢реБрджреНрдзрддрд╛ рдпрд╛ рдХреБрдЫ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдбреЗрдЯрд╛ рд▓рд┐рдЦрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдпрд╛ рдЙрд╕рд╕реЗ рдкрдврд╝рдиреЗ рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдХрд┐рд▓реЛрдЧреНрд░рд╛рдо рд╕реЗ рдЧреНрд░рд╛рдо рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдбреЛрдореЗрди / User.java - рдПрдХ рд╡рд░реНрдЧ рдЬреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛ рддрд╛рд▓рд┐рдХрд╛ (рдирд╛рдо = "USER") рдХреЗ рдЕрдиреБрд░реВрдк рд╣реЛрдЧрд╛ред

@ рдХреЙрд▓рдо рдХреЙрд▓рдо (рдирд╛рдо = "рдЖрдИрдбреА") рдХрд╛ рдбреЗрдЯрд╛ рдЕрдкрдиреЗ рдЖрдк рдЬреЗрдирд░реЗрдЯ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред

рдбреЛрдореЗрди / Message.java - рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдбреЗрдЯрд╛рдмреЗрд╕ рдореИрдкрд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рдЬрдмрдХрд┐ рдЗрд╕рдореЗрдВ рдбреЗрдЯрд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдореБрдЭреЗ WebSocket рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рднреЗрдЬреЗ рдЧрдП рд╕рдВрджреЗрд╢ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИред
рдпрд╣ рд╕рдм рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдХреЗ рд╕рд╛рде рд╣реИред

рдЧреНрд░рд╛рд╣рдХ:


рдореИрдВ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреА рддрд░рдл рдзреНрдпрд╛рди рдирд╣реАрдВ рджреВрдВрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рд░рд┐рдПрдХреНрдЯ рдЕрднреА рднреА рдПрдХ рдХрд╛рдлреА рдпреБрд╡рд╛ рддрдХрдиреАрдХ рд╣реИред рдФрд░ рдпрд╣ рдЕрднреА рднреА рд╕рдмрд╕реЗ рдЕрдЪреНрдЫреА рдкреНрд░рдерд╛рдУрдВ рдХрд╛ рдЧрдарди рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВ рдХреЗрд╡рд▓ рдзреНрдпрд╛рди рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдореИрдВрдиреЗ рд╕рдмрд╕реЗ рдХреНрд▓рд╛рд╕рд┐рдХ рд╕рдВрд░рдЪрдирд╛ рдмрдирд╛рдИ рдЬреЛ рдЕрдзреНрдпрдпрди рдХреЗ рд▓рд┐рдП рдореЗрд░реА рд░рд╛рдп рдореЗрдВ рд╕рдмрд╕реЗ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред

рд╕рд╛рдордиреЗ рдХреНрдпрд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

  • рдЖрд╡реЗрджрди рдФрд░ рдХрдИ рдЯреИрдм рдХреЗ рдореБрдЦреНрдп рд▓реЗрдЖрдЙрдЯ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ред
  • рдкреВрд░реЗ рдЖрд╡реЗрджрди рдХреЗ рд▓рд┐рдП рдЕрдиреБрд╡рд╛рдж рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ред
  • Redux рдкрд░ рд▓рд╛рдЧреВ рд░рд╛рдЬреНрдп рдЖрд╡реЗрджрдиред
  • рд░реЗрд╕реНрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рд░реНрд╡рд░ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХреА
  • рдЖрдИрдбреА рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╡рд┐рд▓реЛрдкрди рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛
  • рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдкрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛
  • WebSocket рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рдФрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд┐рдпрд╛

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╕реЗ рдЕрдзрд┐рдХ рд╣реИред

рдирд┐рд╖реНрдХрд░реНрд╖


рдЕрдкрдиреЗ рд╕рднреА рдкреНрд░рд╢реНрдиреЛрдВ рдФрд░ рд╕реБрдЭрд╛рд╡реЛрдВ рдХреЛ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдЫреЛрдбрд╝ рджреЗрдВ рдпрд╛ рдореБрдЭреЗ рдореЗрд▓ рдореЗрдВ рд▓рд┐рдЦреЗрдВред рдореБрдЭреЗ рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред

рд╡рд┐рд╕реНрддреГрдд рд╕реНрдерд╛рдкрдирд╛ рдФрд░ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдЬрд╛рдирдХрд╛рд░реА


рдУрдПрд╕ "рд╡рдВрдбреЛрд╡реНрд╕ 10"

рдЬрд╛рд╡рд╛ 1.8 рд╡рд┐рд╕реНрддреГрдд рдирд┐рд░реНрджреЗрд╢ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ



рд╕реНрдерд╛рдкрдирд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдХреБрдВрдЬреА рд╕рдВрдпреЛрдЬрди Win + R рджрдмрд╛рдПрдВ рдФрд░ cmd рджрд░реНрдЬ рдХрд░реЗрдВ
рд╣рдо рдЬрд╛рд╡рд╛ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ



рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЗрд╕ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдЬрд╛рд╡рд╛ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реИред

рдпрджрд┐ рдХрдВрдкреНрдпреВрдЯрд░ рдЬрд╛рд╡рд╛ рдХрд╛ рдПрдХ рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рд╕рдВрд╕реНрдХрд░рдг 1.8 рд╕реЗ рдХрдо рдирд╣реАрдВ рд╣реИ, рддреЛ рд╕реНрдерд╛рдкрдирд╛ рдмрд┐рдВрджреБ рдЧреНрд░реЗрдб рдкрд░ рдЬрд╛рдПрдВред

рд▓рд┐рдВрдХ рд╕реЗ рдЬрд╛рд╡рд╛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ

рдЖрдкрдХреЛ рд▓рд╛рдЗрд╕реЗрдВрд╕ рдЕрдиреБрдмрдВрдз рд╕рдордЭреМрддреЗ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рд╣рдореЗрдВ рд╡рд┐рдВрдбреЛрдЬ x64 рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ

рдЬрд╛рд╡рд╛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ



рд╣рдо рд▓реЙрдиреНрдЪ рдХрд░рддреЗ рд╣реИрдВ

рдЬрд╛рд╡рд╛ рд▓реЙрдиреНрдЪ



рдХреНрд▓реЛрдЬ рдХреЗ рдЕрдВрдд рдореЗрдВ рд╣рд░ рд╕рдордп рдиреЗрдХреНрд╕реНрдЯ рдФрд░ рдУрдХреЗ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред

рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рдмрд╛рдж, рд╣рдо рд╡рд┐рди + рдЖрд░ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдХреЛ рдлрд┐рд░ рд╕реЗ рдХреЙрд▓ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ cmd рджрд░реНрдЬ рдХрд░рддреЗ рд╣реИрдВ , рдЬрд╛рд╡рд╛ -version рджрд░реНрдЬ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЬрд╛рд╡рд╛ рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг рджреЗрдЦрддреЗ рд╣реИрдВ рдЬрд┐рд╕реЗ рд╣рдо рдкрд╣рд▓реЗ рд╣реА рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░ рдЪреБрдХреЗ рд╣реИрдВ



рдЕрдкрдиреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдХреЗ рдЧреБрдгреЛрдВ рдХреЛ рдЦреЛрд▓реЗрдВ

рдХрдВрдкреНрдпреВрдЯрд░ рдХреЗ рдЧреБрдг



рдЕрддрд┐рд░рд┐рдХреНрдд рдкреИрд░рд╛рдореАрдЯрд░ - рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░

рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░



рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рд╕рд┐рд╕реНрдЯрдо рдЪрд░ рдХрд╛ JAVA_HOME рдорд╛рди C: \ Program Files \ Java \ jdk1.8.0_181 \ рдХреЗ рд╕рд╛рде рд╣реИ

JAVA_HOME



рдФрд░ рдкрде рдЪрд░ рдореЗрдВ рдПрдХ рдкрдВрдХреНрддрд┐ C: \ Program Files \ Java \ jdk1.8.0_181 \ bin рд╣реИ

рдкрде



рдЕрдЧрд▓реЗ рдЖрдЗрдЯрдо рдкрд░ рдЬрд╛рдПрдВ

рдЧреНрд░реИрдб рд╕реНрдерд╛рдкрдирд╛ рд╡рд┐рд╕реНрддреГрдд рдирд┐рд░реНрджреЗрд╢


рдХрдВрд╕реЛрд▓ рдХреЛ рдкреБрди: рдЦреЛрд▓реЗрдВ рдФрд░ рдЧреНрд░реЗрдб -рдкреНрд░рдХрд╛рд░ рдХреЛ рдмрджрд▓реЗрдВ
рдЪреВрдБрдХрд┐ рд╣рдордиреЗ рдЕрднреА рддрдХ рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рд╣рдо рдЗрд╕ рд╕реЗ рджреЗрдЦреЗрдВрдЧреЗ:



рд▓рд┐рдВрдХ рд╕реЗ рд╕рдВрдЧреНрд░рд╣ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ

рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ C: \ gradle-4.10.1 рдореЗрдВ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЕрдирдкреИрдХ рдХрд░реЗрдВ

рдЕрдЧрд▓рд╛, рдЬрд╛рд╡рд╛ рдХреЗ рд╕рд╛рде рд╕рд╛рджреГрд╢реНрдп рджреНрд╡рд╛рд░рд╛, рд╕рд┐рд╕реНрдЯрдо рдЪрд░ рдХреЗ рд╕рд╛рде рдЕрдиреБрднрд╛рдЧ рдЦреЛрд▓реЗрдВ рдФрд░ рдЗрд╕рдореЗрдВ рдорд╛рди рдХреЗ рд╕рд╛рде GRADLE_HOME рдЪрд░ рдЬреЛрдбрд╝реЗрдВ : \ gradle-4.10.1 \ bin

GRADLE_HOME



рдФрд░ рд╣рдо C: \ Programle-4.10.1 \ bin рдХреЛ рд▓рд╛рдЗрди C рдХреЗ рдкрд╛рд╕ рдкрде рдЪрд░ рдореЗрдВ рднреА рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ: \ Program Files \ Java \ jdk1.8.0_181 \ bin, рд▓реЗрдХрд┐рди рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИред

рд░рд╛рд╣ рдХрд╛ рд░рд╛рд╕реНрддрд╛



Win + R cmd рдХрдВрд╕реЛрд▓ рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░рдирд╛ рдФрд░ рд╢реНрд░реЗрдгреАрдмрджреНрдз -рдкреНрд░рдХрд╛рд░ рдмрджрд▓рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ



рд╕рдм рдХреБрдЫ рдЕрдм рд╣реИ рдФрд░ рдЧреНрд░реЗрдбреЗрд▓ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ!

рдиреЛрдб рдЬреЗрдПрд╕ рд╡рд┐рд╕реНрддреГрдд рдирд┐рд░реНрджреЗрд╢



рд▓рд┐рдВрдХ рд╕реЗ рдиреЛрдб рдЬреЗрдПрд╕ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ

рдФрд░ рд╕реЗрдЯ рдХрд░ рджрд┐рдпрд╛
рдиреЛрдб js рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ



рд╣рдо рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░рддреЗ рд╣реИрдВ рдФрд░ npm -version рджрд░реНрдЬ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╣рдо рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд┐рдП рдЧрдП рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рджреЗрдЦреЗрдВрдЧреЗ



рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд▓реЙрдиреНрдЪ


рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛, рдкреВрд░реА рддреИрдпрд╛рд░реА рдХреА рдЬрд╛рддреА рд╣реИред

рд╕рдВрдЧреНрд░рд╣ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ

рдЗрд╕рдХрд╛ рд╡рдЬрди рдХреЗрд╡рд▓ 135 Kb рд╣реИ

Git



рдФрд░ C: \ reaction-start-master \ рдореЗрдВ рдЕрдирдкреИрдХ рдХрд░реЗрдВ

рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝реЛрд▓реНрдбрд░



рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЪрд▓рд╛рдПрдВ рдФрд░ C: \ react-start-master \ рдкрд░ рдЬрд╛рдПрдВ
рдЬреЛ рд▓реЛрдЧ рдпрд╛рдж рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдЙрдирдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдкрд░ рдлрд╝реЛрд▓реНрдбрд░ рдЯреНрд░реА рдкрд░ рдЪрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕реАрдбреА рджрд░реНрдЬ рдХрд░реЗрдВ ред

рддреЛ рд╣рдо рдбреНрд░рд╛рдЗрд╡ C: \> рдХреЗ рд░реВрдЯ рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВ
рдЕрдЧрд▓рд╛, cd рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдкреНрд░рд╛рд░рдВрдн-рдорд╛рд╕реНрдЯрд░ рджрд░реНрдЬ рдХрд░реЗрдВ рдФрд░ рдкрде рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ C: \ reaction-start-master>


npm i рджрд░реНрдЬ рдХрд░реЗрдВ


рдЕрдм рд╣рдо рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП JS рдирд┐рд░реНрднрд░рддрд╛рдПрдБ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд░рд╣реЗ рд╣реИрдВ



рдЪреЗрддрд╛рд╡рдиреА (WARN - рдЪреЗрддрд╛рд╡рдиреА)
рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ, рдлрд╝реЛрд▓реНрдбрд░ C: \ reaction-start-master \ node_modules рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИ, рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдПрдБ рдЗрд╕рдореЗрдВ рд╣реЛрдВрдЧреАред

рдЙрд╕рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж, рдХрдВрд╕реЛрд▓ рдореЗрдВ рдЧреНрд░реЗрдбреЗрд▓ рдмрд┐рд▓реНрдб рджрд░реНрдЬ рдХрд░реЗрдВ



рд╡рд╕рдВрдд рд╕рд╣рд┐рдд рдЬрд╛рд╡рд╛ рдХреЗ рд▓рд┐рдП рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдПрдВ рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЬрд╛рдПрдВрдЧреАред
рдлрд╝реЛрд▓реНрдбрд░ C: \ reaction-start-master \ build рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛



рд╕рдм рдХреБрдЫ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рд╕рд╛рде рдЖрдПрдЧрд╛ рдФрд░ рд╣рдо рдПрдХ рд╕рдлрд▓ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╕рдВрджреЗрд╢ рджреЗрдЦреЗрдВрдЧреЗ
рдирд┐рд░реНрдорд╛рдг рд╕рдлрд▓рддрд╛ рд╣реИ

рдФрд░ рдЙрд╕рдХреЗ рдареАрдХ рдмрд╛рдж рдЖрдк gradle bootRun рдХрдорд╛рдВрдб рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ



рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЪрд▓рдиреЗ рд▓рдЧреЗрдЧрд╛



рд▓реЙрдиреНрдЪ рдХреЗ рдЕрдВрдд рдореЗрдВ, рдХрдВрд╕реЛрд▓ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛



рдкреВрд░рд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЪрд▓ рд░рд╣рд╛ рд╣реИ!



рдХрдВрд╕реЛрд▓ рдХреЛ рдмрдВрдж рди рдХрд░реЗрдВ; рдмрд╕ рдЫреЛрдЯрд╛ рдХрд░реЗрдВред

рдПрдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЦреЛрд▓реЗрдВ рдФрд░ рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ рджрд░реНрдЬ рдХрд░реЗрдВ: 8090 / рдПрдкреНрд▓рд┐рдХреЗрд╢рди / рдпрд╛ рдЗрд╕ рд▓рд┐рдВрдХ рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВ

рдЖрдкрдХреЛ рдПрдХ рд░рдирд┐рдВрдЧ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ред



рдХреЗрд╡рд▓ рдЬреЗрдПрд╕ рдЪрд▓ рд░рд╣рд╛ рд╣реИ



рдПрдХ рдФрд░ рдХрдВрд╕реЛрд▓ рдЦреЛрд▓реЗрдВред

рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝реЛрд▓реНрдбрд░ C: \ reaction-start-master> рдкрд░ рдЬрд╛рдПрдВ

рдПрдирдкреАрдПрдо рд░рди рд╕реНрдЯрд╛рд░реНрдЯ рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдВ

рдпрджрд┐ рдЬреЗрдПрд╕ рдХреЗ рд▓рд┐рдП рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдПрдВ рдкрд╣рд▓реЗ рд╣реА рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЬрд╛ рдЪреБрдХреА рд╣реИрдВ рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ ( npm i рдХрдорд╛рдВрдб)

рд╡рд╣ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕реНрд╡рдпрдВ рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ рдкрд░ рд╢реБрд░реВ рд╣реЛрдЧрд╛: 9090 /
рдФрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдЬреЗрдПрд╕ рдХреЛрдб рдореЗрдВ рд╕рднреА рдкрд░рд┐рд╡рд░реНрддрди рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╡рд╣рд╛рдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрдВрдЧреЗ!

рдпрд╣ рд╕рдм, рдЖрдкрдХреЗ рдзреНрдпрд╛рди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

Source: https://habr.com/ru/post/hi422985/


All Articles