0

我正在使用 spring-mybatis 并且我已经配置了许多组件和映射器。我的服务工作没有任何问题,但我想知道是否可以从 spring 组件生成表(使用注释@Component),或者我是否必须手动创建表以便我可以执行我的映射器方法?

4

1 回答 1

0

我已经使用以下方法来做到这一点,但也许它有点hacky。

正常创建映射器,但添加另一个接口方法来创建表:

@Insert("create table if not exists students (name integer)")
public void createTable();

然后,在您的服务类中,使用@PostContruct注释创建一个方法,以便在启动时调用它:

@Autowired
private StudentDao studentMapper;

@PostConstruct
private void setup() {
    // setup stuff goes here.
    studentMapper.createTable();
    // include any other mappers you have...
}

我尝试用注释createTable()方法,@PostConstruct但没有执行。可能是因为它是一个接口。

希望对欧文有所帮助

于 2013-05-24T23:36:36.260 回答