Будьте добры, укажите на ошибки. Использую: gradle, spring, java 9, h2 database. Проблемы: 1. Не вставляются данные в таблицу из data.sql IDE говорит "unable to resolve table" Из-за чего такое может быть ? 2. При прохождение теста ошибка java.lang.NullPointerException из-за ошибки №1 как понимаю Делаю: - прописал зависимости в gradle; - прописал в spring
<jdbc:embedded-database id="dataSource" type="H2">
<jdbc:script location="schema.sql"/>
<jdbc:script location="data.sql"/>
</jdbc:embedded-database>
создал два файла schema.sql
create table if not exists PersonForH2 ( id IDENTITY, first_name varchar(255), last_name varchar(255), age integer );
data.sql
insert into PersonForH2 (first_name, last_name, age) VALUES ('Roma', 'Romarov', '18');
insert into PersonForH2 (first_name, last_name, age) VALUES ('Pavel', 'Pavlov', '19');
insert into PersonForH2 (first_name, last_name, age) VALUES ('Egor', 'Egorov', '20')
Пытаюсь провести тест
class SimplePersonTest {
private EmbeddedDatabase embeddedDatabase;
private JdbcTemplate jdbcTemplate;
private PersonDao personDao;
@BeforeEach
void setUp() {
embeddedDatabase = new EmbeddedDatabaseBuilder()
.addDefaultScripts()
.setType(EmbeddedDatabaseType.H2)
.build();
jdbcTemplate = new JdbcTemplate(embeddedDatabase);
personDao = new SimplePerson(jdbcTemplate);
}
@Test
void getAll() {
Assertions.assertNotNull(personDao.getAll());
Assertions.assertEquals(2,personDao.getAll().size());
}
классы:
public interface PersonDao {
long create(Person person);
default Optional<Person> get(long id) {
return getAll().stream().filter(person -> person.getId() == id).findAny();
}
List<Person> getAll();
Person update(Person person);
PersonDao remove(long id);
default PersonDao remove(Person person) {
return remove(person.getId());
}
}
public interface Person {
String getFirstName();
String getLastName();
int getAge();
Long getId();
String setFirstName();
String setLastName();
String setAge();
Long setId();
}
@AllArgsConstructor(onConstructor = @__(@Autowired))
@Data
@Component("person")
@NoArgsConstructor(force = true)
public class SimplePerson implements Person, PersonDao {
Long id;
String firstName;
String lastName;
int age;
JdbcTemplate jdbcTemplate;
public SimplePerson(JdbcTemplate jdbcTemplate) {
this.jdbcTemplate = jdbcTemplate;
}
//....
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Приложение состоит из нескольких активностейПриложение - это интернет-магазин
У меня есть метод, который вызывает Toast и отображает какую-то строку, но если быстро его вызывать, то сообщения накладываются поверх друг друга,...
Пишу я значит шаблон для сайта и столкнулся с такой проблемой: два последних margin ни в какую не хотят работать, прошарил туеву хучу форумов...