#database #junit
#База данных #junit
Вопрос:
В моем проекте я должен реализовать тестовый пример JUnit, который будет вставлять данные в таблицу БД во время запуска сервера. Кто-нибудь может предложить, как это реализовать?
Комментарии:
1. какое приложение вы используете? простое приложение на основе сервлетов или какая-то работа с фреймом mvc?
2. @Prasanna Talakanti: Spring MVC
Ответ №1:
Я перечислил здесь несколько решений
-
Используя базу данных spring init, добавьте это в свой файл контекста spring, spring выполнит sql-скрипт при загрузке контейнера
<!-- Script with sql to insert statements --> <jdbc:initialize-database> <jdbc:script location="classpath:initDB.sql"/> </jdbc:initialize-database>
-
Вы можете сделать это с помощью кода, это привяжет ваш код к интерфейсам Spring
@Service public class InitializeDBService implements InitializingBean { @Autowired JdbcTemplate jdbcTemplate; @Override public void afterPropertiesSet() throws Exception { jdbcTemplate.execute("your inserts"); } }
-
Для этого можно использовать сервлет
@SuppressWarnings("serial") public class InitDBServlet extends HttpServlet { public void init() throws ServletException { //spawning the thread so that not to delay servlet start up new Thread(new InitDB()).start(); } class InitDB implements Runnable { @Override public void run() { //add your insert code here } } }