Форум программистов, компьютерный форум, киберфорум
Java: Spring, Spring Boot
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
1 / 1 / 2
Регистрация: 18.05.2011
Сообщений: 68

Каркас для Spring web mvc приложения

18.12.2017, 20:38. Показов 1678. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Используемые технологии:
  • Hibernate (DAO - слой)
  • Vaadin (View - слой)
  • MySQL
  • Spring MVC
IDE - Idea(+tomcat+maven)

Суть приложения - тренировочная программка, где в качестве модели будет единственный клас - Person(id,name). Для работы с БД - Hibernate+MySQL. Слой для работы с БД усложнять не хочу, и весь функционал(для работы с БД) хотелось бы вместить в ДАО слое(насколько мне известно правильнее будет использовать еще и service-слой, но чем он отличается от слоя ДАО, по крайней мере в маленьких проектах я не понял).

Вместе эти технологии под одной эгидой я никогда ранее не собирал, поэтому и обратился к вам за помощью.
Было бы идеально, если кто-нибудь сделает скрин пустого проекта с каркасом(каталоги и файлы конфигурации + pom) + краткое описание что куда мне нужно дописать(например в какие-нибудь настройки).

По отдельности доводилось немного ковыряться со всеми вышеописанными технологиями, но только по отдельности. Все вместе собрать своим умом я увы не могу, да и туториалов как их собрать вместе нет, а прибавить к этому отсутсвие опыта + то что технологи эти для меня практически в новинку, я постоянно путаюсь и застреваю. Поэтому надеюсь на вашу помощь!

P.s. Может быть сий каркас пригодится еще кому-нибудь.
P.s.2. Мой текущий каркас https://github.com/kurnakov92/SimpleWebApp/ создавал через архетип Vaadin, и после нескольких попыток приблудить к проекту остальные технологии, понял что заварю кашусутру, котороую расхлебать не смогу и немного приуныл.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.12.2017, 20:38
Ответы с готовыми решениями:

Spring-mvc и правильная разработка web-приложения в целом
Добрый день уважаемые форумчане. Создаю простую web игрушку виселица используя spring-mvc. Всё в целях самообразования. Вообщем вопрос...

Каркас Spring boot или mvc + security + работа с бд
Нужно web приложение с авторизацией(пытался прикрутить spring security), в которой пользователи создают тикеты(вопросы), а эксперты на них...

Работа с web.xml (Spring MVC + MySQL)
Можете проверить правильно ли я написал код в web.xml. Хочу вывести ошибку 404 страница не найдена. WEB XML <?xml...

12
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
18.12.2017, 21:13
Открываешь бутовый инитлзр, тыкаешь галочки... PROFIT!
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
19.12.2017, 08:35
Frizka, https://www.cyberforum.ru/java... 31084.html
вот пример такого проекта. Спринг ваадин и БД
0
1 / 1 / 2
Регистрация: 18.05.2011
Сообщений: 68
20.12.2017, 17:51  [ТС]
Решил начать с БД, написал дао слой, работающий с JdbcTemplate. Spring конфигурировал на Java(без XML), когда допилил минимальный функционал, решил проверить работу написанного. Выскакивает NPE. Как я понял - дело в том что бин не инжектится куда надо.
В лог выводится:
Java
1
2
3
4
5
6
Exception in thread "main" java.lang.NullPointerException
UserDaoImpl.addUser jdbcTemplate: null
    at ru.kurnakov.simplewebapp.dao.UserDaoImpl.addUser(UserDaoImpl.java:27)
    at ru.kurnakov.simplewebapp.SimplewebappApplication.main(SimplewebappApplication.java:26)
 
Process finished with exit code 1
Ссылка на проект https://github.com/kurnakov92/SimpleWebApp
P.s. В спринге чукча не программист, нужна ваша помощь.

Добавлено через 11 минут
Кое-что нарыл, почему - то класс спринг-конфигурации не отрабатывает, => не создается бин...

Добавлено через 11 минут
теперь конгфига отрабатывает, но НПЕ остался

Проблема как я думаю в этом месте или поблизости (класс UserDaoImpl):
Java
1
2
3
4
5
 
@Autowired
    public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
        this.jdbcTemplate = jdbcTemplate;
    }
не инжектится сюда бин никак
0
1 / 1 / 2
Регистрация: 18.05.2011
Сообщений: 68
22.12.2017, 19:50  [ТС]
Такое дело:

Ошибка:
Кликните здесь для просмотра всего текста

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
INFO: Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@4ccabbaa: startup date [Fri Dec 22 23:41:09 KRAT 2017]; root of context hierarchy
дек 22, 2017 11:41:09 PM org.springframework.beans.factory.support.DefaultListableBeanFactory registerBeanDefinition
INFO: Overriding bean definition for bean 'userServiceImpl' with a different definition: replacing [Generic bean: class [myproject.service.UserServiceImpl]; scope=singleton; abstract=false; lazyInit=false; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in file [C:\Users\Oleg\Desktop\JUST DO UT MTFCKER\EXAMPLES\mavenspringdemo\target\classes\myproject\service\UserServiceImpl.class]] with [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=appConfig; factoryMethodName=userServiceImpl; initMethodName=null; destroyMethodName=(inferred); defined in myproject.configuration.AppConfig]
Exception in thread "main" org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is java.sql.SQLNonTransientConnectionException: Cannot load connection class because of underlying exception: com.mysql.cj.core.exceptions.WrongArgumentException: Malformed database URL, failed to parse the main URL sections.
    at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:81)
    at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:600)
    at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:850)
    at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:905)
    at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:915)
    at myproject.dao.UserDaoImpl.addUser(UserDaoImpl.java:25)
    at myproject.service.UserServiceImpl.addUser(UserServiceImpl.java:22)
    at myproject.Runner.main(Runner.java:22)
Caused by: java.sql.SQLNonTransientConnectionException: Cannot load connection class because of underlying exception: com.mysql.cj.core.exceptions.WrongArgumentException: Malformed database URL, failed to parse the main URL sections.
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:102)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:89)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:81)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:55)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:65)
    at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:73)
    at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:125)
    at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:226)
    at org.springframework.jdbc.datasource.SimpleDriverDataSource.getConnectionFromDriver(SimpleDriverDataSource.java:143)
    at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnectionFromDriver(AbstractDriverBasedDataSource.java:205)
    at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnection(AbstractDriverBasedDataSource.java:169)
    at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:151)
    at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:115)
    at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:78)
    ... 7 more
Caused by: com.mysql.cj.core.exceptions.UnableToConnectException: Cannot load connection class because of underlying exception: com.mysql.cj.core.exceptions.WrongArgumentException: Malformed database URL, failed to parse the main URL sections.
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    at com.mysql.cj.core.exceptions.ExceptionFactory.createException(ExceptionFactory.java:54)
    at com.mysql.cj.core.exceptions.ExceptionFactory.createException(ExceptionFactory.java:93)
    ... 14 more
Caused by: com.mysql.cj.core.exceptions.WrongArgumentException: Malformed database URL, failed to parse the main URL sections.
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    at com.mysql.cj.core.exceptions.ExceptionFactory.createException(ExceptionFactory.java:54)
    at com.mysql.cj.core.conf.url.ConnectionUrlParser.parseConnectionString(ConnectionUrlParser.java:134)
    at com.mysql.cj.core.conf.url.ConnectionUrlParser.<init>(ConnectionUrlParser.java:124)
    at com.mysql.cj.core.conf.url.ConnectionUrlParser.parseConnectionString(ConnectionUrlParser.java:113)
    at com.mysql.cj.core.conf.url.ConnectionUrl.getConnectionUrlInstance(ConnectionUrl.java:191)
    at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:196)
    ... 13 more


Конфиг-класс:
Кликните здесь для просмотра всего текста

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
@Configuration
@ComponentScan("myproject")
public class AppConfig {
 
    @Bean
    public SimpleDriverDataSource simpleDriverDataSource(){
        SimpleDriverDataSource dataSource = new SimpleDriverDataSource();
        dataSource.setDriverClass(com.mysql.cj.jdbc.Driver.class);
        dataSource.setUrl("ds.url");
        dataSource.setUsername("ds.username");
        dataSource.setPassword("ds.password");
        return dataSource;
    }
 
    @Bean
    public JdbcTemplate jdbcTemplate(SimpleDriverDataSource dataSource){
        return new JdbcTemplate(dataSource);
    }
 
    @Bean
    public UserDaoImpl userDaoImpl(){
        UserDaoImpl userDao = new UserDaoImpl();
        userDao.setJdbcTemplate(jdbcTemplate(simpleDriverDataSource()));
        return userDao;
    }
 
    @Bean
    public UserServiceImpl userServiceImpl(){
        UserServiceImpl userService = new UserServiceImpl(userDaoImpl());
        return userService;
    }
 
 
}


проперти файл:
Кликните здесь для просмотра всего текста

ds.url=jdbc:mysql://localhost:3306/userdb
ds.username=root
ds.password=root


Почему вылетает ошибка? База есть, имя ей "userdb", логин пароль верны, что спрингу не нравится? па ма ги тя
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
22.12.2017, 19:59
Цитата Сообщение от Frizka Посмотреть сообщение
dataSource.setUrl("ds.url");
это что?
0
1 / 1 / 2
Регистрация: 18.05.2011
Сообщений: 68
22.12.2017, 20:01  [ТС]
Цитата Сообщение от KEKCoGEN Посмотреть сообщение
это что?
это параметр из файла application.properties со значением = jdbc:mysql://localhost:3306/userdb

П.с. сам проект целиком: https://github.com/kurnakov92?tab=repositories
Решил написанное в топике разделить на мелкие части, прежде чем смешить их в одном проекте
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
22.12.2017, 20:02
Frizka, как по-вашему спринг должен понять что это параметр а не просто строка?
0
1 / 1 / 2
Регистрация: 18.05.2011
Сообщений: 68
22.12.2017, 20:16  [ТС]
Цитата Сообщение от KEKCoGEN Посмотреть сообщение
Frizka, как по-вашему спринг должен понять что это параметр а не просто строка?
скрин во вложке, на всякий случай ввел параметры не через проперти класс а:
Кликните здесь для просмотра всего текста

Java
1
2
3
4
5
6
7
8
9
    @Bean
    public SimpleDriverDataSource simpleDriverDataSource(){
        SimpleDriverDataSource dataSource = new SimpleDriverDataSource();
        dataSource.setDriverClass(com.mysql.cj.jdbc.Driver.class);
        dataSource.setUrl("jdbc:mysql://localhost:3306/userdb");
        dataSource.setUsername("root");
        dataSource.setPassword("root");
        return dataSource;
    }


На выходе имеем то же самое:
Кликните здесь для просмотра всего текста

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
    INFO: Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@4ccabbaa: startup date [Sat Dec 23 00:14:17 KRAT 2017]; root of context hierarchy
дек 23, 2017 12:14:18 AM org.springframework.beans.factory.support.DefaultListableBeanFactory registerBeanDefinition
INFO: Overriding bean definition for bean 'userServiceImpl' with a different definition: replacing [Generic bean: class [myproject.service.UserServiceImpl]; scope=singleton; abstract=false; lazyInit=false; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in file [C:\Users\Oleg\Desktop\JUST DO UT MTFCKER\EXAMPLES\mavenspringdemo\target\classes\myproject\service\UserServiceImpl.class]] with [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=appConfig; factoryMethodName=userServiceImpl; initMethodName=null; destroyMethodName=(inferred); defined in myproject.configuration.AppConfig]
Sat Dec 23 00:14:18 KRAT 2017 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
Exception in thread "main" org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is java.sql.SQLException: The server time zone value 'RTZ 6 (çèìà)' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
    at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:81)
    at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:600)
    at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:850)
    at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:905)
    at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:915)
    at myproject.dao.UserDaoImpl.addUser(UserDaoImpl.java:25)
    at myproject.service.UserServiceImpl.addUser(UserServiceImpl.java:22)
    at myproject.Runner.main(Runner.java:22)
Caused by: java.sql.SQLException: The server time zone value 'RTZ 6 (çèìà)' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:121)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:89)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:81)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:55)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:65)
    at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:70)
    at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:853)
    at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:440)
    at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:241)
    at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:221)
    at org.springframework.jdbc.datasource.SimpleDriverDataSource.getConnectionFromDriver(SimpleDriverDataSource.java:143)
    at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnectionFromDriver(AbstractDriverBasedDataSource.java:205)
    at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnection(AbstractDriverBasedDataSource.java:169)
    at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:151)
    at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:115)
    at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:78)
    ... 7 more
Caused by: com.mysql.cj.core.exceptions.InvalidConnectionAttributeException: The server time zone value 'RTZ 6 (çèìà)' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    at com.mysql.cj.core.exceptions.ExceptionFactory.createException(ExceptionFactory.java:54)
    at com.mysql.cj.core.exceptions.ExceptionFactory.createException(ExceptionFactory.java:73)
    at com.mysql.cj.core.util.TimeUtil.getCanonicalTimezone(TimeUtil.java:118)
    at com.mysql.cj.mysqla.MysqlaSession.configureTimezone(MysqlaSession.java:360)
    at com.mysql.cj.jdbc.ConnectionImpl.initializePropsFromServer(ConnectionImpl.java:1434)
    at com.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:986)
    at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:843)
    ... 16 more
Миниатюры
Каркас для Spring web mvc приложения  
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
22.12.2017, 20:33
Цитата Сообщение от Frizka Посмотреть сообщение
На выходе имеем то же самое
точно тоже самое? Читать ошибки не пробовали?
0
1 / 1 / 2
Регистрация: 18.05.2011
Сообщений: 68
22.12.2017, 21:14  [ТС]
Цитата Сообщение от KEKCoGEN Посмотреть сообщение
точно тоже самое? Читать ошибки не пробовали?
да, ошибка и правда другая, но тем не менее:
Exception in thread "main" org.springframework.jdbc.CannotGetJdbcCo nnectionException: Failed to obtain JDBC Connection;
получить коннект не удается

Добавлено через 22 минуты
Java
1
2
3
//Без этой доп настройки конекта к БД нет, скорее всего дело в коннекторе
        String fix = "?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC";
        dataSource.setUrl("jdbc:mysql://localhost:3306/userdb" + fix);
Живется все веселее и веселее
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
22.12.2017, 21:17
Frizka, полный лог ошибки покажите
0
1 / 1 / 2
Регистрация: 18.05.2011
Сообщений: 68
22.12.2017, 21:26  [ТС]
Цитата Сообщение от KEKCoGEN Посмотреть сообщение
Frizka, полный лог ошибки покажите
проблема решена вышеприведенным фиксом, а полный лог (до фикса ) был:
Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
INFO: Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@4ccabbaa: startup date [Sat Dec 23 01:24:18 KRAT 2017]; root of context hierarchy
дек 23, 2017 1:24:19 AM org.springframework.beans.factory.support.DefaultListableBeanFactory registerBeanDefinition
INFO: Overriding bean definition for bean 'userServiceImpl' with a different definition: replacing [Generic bean: class [myproject.service.UserServiceImpl]; scope=singleton; abstract=false; lazyInit=false; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in file [C:\Users\Oleg\Desktop\JUST DO UT MTFCKER\EXAMPLES\mavenspringdemo\target\classes\myproject\service\UserServiceImpl.class]] with [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=appConfig; factoryMethodName=userServiceImpl; initMethodName=null; destroyMethodName=(inferred); defined in myproject.configuration.AppConfig]
Sat Dec 23 01:24:20 KRAT 2017 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
Exception in thread "main" org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is java.sql.SQLException: The server time zone value 'RTZ 6 (çèìà)' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
    at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:81)
    at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:600)
    at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:850)
    at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:905)
    at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:915)
    at myproject.dao.UserDaoImpl.addUser(UserDaoImpl.java:25)
    at myproject.service.UserServiceImpl.addUser(UserServiceImpl.java:22)
    at myproject.Runner.main(Runner.java:22)
Caused by: java.sql.SQLException: The server time zone value 'RTZ 6 (çèìà)' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:121)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:89)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:81)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:55)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:65)
    at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:70)
    at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:853)
    at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:440)
    at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:241)
    at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:221)
    at org.springframework.jdbc.datasource.SimpleDriverDataSource.getConnectionFromDriver(SimpleDriverDataSource.java:143)
    at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnectionFromDriver(AbstractDriverBasedDataSource.java:205)
    at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnection(AbstractDriverBasedDataSource.java:169)
    at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:151)
    at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:115)
    at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:78)
    ... 7 more
Caused by: com.mysql.cj.core.exceptions.InvalidConnectionAttributeException: The server time zone value 'RTZ 6 (çèìà)' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    at com.mysql.cj.core.exceptions.ExceptionFactory.createException(ExceptionFactory.java:54)
    at com.mysql.cj.core.exceptions.ExceptionFactory.createException(ExceptionFactory.java:73)
    at com.mysql.cj.core.util.TimeUtil.getCanonicalTimezone(TimeUtil.java:118)
    at com.mysql.cj.mysqla.MysqlaSession.configureTimezone(MysqlaSession.java:360)
    at com.mysql.cj.jdbc.ConnectionImpl.initializePropsFromServer(ConnectionImpl.java:1434)
    at com.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:986)
    at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:843)
    ... 16 more
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.12.2017, 21:26
Помогаю со студенческими работами здесь

задания по spring core и spring mvc для новичков
Какие задания можно предложить новичкам для выполнения после знакомства их с spring core и mvc ?

Spring MVC проектирование приложения
Хочу сделать небольшой сайт на Spring MVC + Hibernate + JSP , столкнулся с такой проблемой , вот допустим у меня есть 2 jsp страницы ,...

Пример Restful web-приложения Spring
Посоветуйте хороший пример/урок Restful web-приложения с подробными описаниями всех магических штук - подключением к БД(mySql например),...

Mvc web приложения на nodejs. Хорошо/плохо/необходимо/ненужно?
Здравствуйте, я порядка 3-х лет разрабатывал на C#/ASP.NET структура mvc была всегда, сейчас перехожу на nodejs и сталкиваюсь с делимой что...

Spring MVC. 404 ошибка при включении Spring Data JPA в проект
Добрый день. Есть простой шаблонный проект с использованием Spring MVC и Maven. С зависимостями Spring MVC проект собирается нормально и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru