Вам нужно правильно инициализировать Spring.
Если вы хотите быстрое решение, попробуйте Spring Boot и MyBatis-Spring-Boot-Starter .
Предполагая, что вы знакомы с Maven , вам нужно внести несколько изменений в ваш pom. xml.
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.2.5.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.1</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.2.5.RELEASE</version>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
Основной класс будет выглядеть примерно так: следует:
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import mapper.Student_mapper;
@SpringBootApplication
@MapperScan("mapper")
public class Application implements CommandLineRunner {
@Autowired
private Student_mapper sm;
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@Override
public void run(String... args) throws Exception {
...
sm.insert(student);
...
}
}
В аннотации @MapperScan
необходимо указать пакет, содержащий ваши сопоставители.
Затем вы сможете вводить сопоставители, используя @Autowired
.
Хотя в этом нет необходимости, рекомендуется добавить следующую строку в application.properties.
spring.main.web-application-type=NONE
С указанным выше значением. xml, mvn package
создаст исполняемый JAR файл (с java -jar
).
Вот исполняемый файл демонстрационный проект .