title: How to execute @Sql before a @Before method
body: <p>I'm trying to combine the follow annotations:</p>
  
  <p><strong>org.springframework.test.context.jdbc.Sql</strong>
  and
  <strong>org.junit.Before</strong></p>
  
  <p>Like the follow code:</p>
  
  <pre><code>@Test
  @Sql(scripts = "dml-parametro.sql")
  public void testData(){
      Iterable&lt;Parametro&gt; parametros = parametroService.findAll();
      List&lt;Parametro&gt; parametrosList = Lists.newArrayList(parametros);
  
      Assert.assertThat(parametrosList.size(), Is.is(1));
  }
  
  @Before
  public void beforeMethod() {
      JdbcTestUtils.deleteFromTables(jdbcTemplate, "PARAMETRO");
  }
  </code></pre>
  
  <p>The code in the method @Before is running after then the script "dml-parametro.sql" in the @Sql annotation.</p>
  
  <p>Is it right to do this? </p>
  
  <p>For solution this, I'm using @After in place than @Before, but I'd like to cdelete tables before the test execution, not after.</p>
  
  <p>I wouldn't like to use @SqlConfig. I'm not using transacional scope on test level, so i need to clean my tables in every test method. If every test method need to clean tables, i would like to do this in @Before method. I wouldn't like to do this in every test method with @SqlConfig. I think the behavior of @Sql to be execute before than @Before is wrong.</p>