최근에 친구는 Mybatis가 이전에 최대 절전 모드를 사용하는 데 익숙했기 때문에 테이블 구조를 자동으로 작성하는 기능이 있는지 물었습니다. 당연히 엔티티 클래스에서 베팅 또는 매핑 파일을 작성함으로써 시스템이 시작된 후에 테이블을 자동으로 작성할 수 있다고 생각합니다.
나는 Mybatis 가이 기능을 가지고 있지 않다는 후회만으로 그에게 말할 수 있습니다. 그의 무관심을보고, 나는 그러한 기능이 없더라도 우리는 그것을 스스로 개발할 수 있다는 것을 위로 할 수 있습니다 ~~
그래서 다음과 같은 시스템이 있습니다.이 시스템은 열리고 내려 와서 살펴볼 수 있습니다 ~~
mybatis_buildtable_v0.2
https://git.oschina.net/sunchenbin/mybatis_buildtable_v0.20.git
프로젝트 아키텍처는 SpringMVC+MyBatis+Maven을 사용합니다. 이 기능은 모델 주석을 구성하여 테이블을 만들고 테이블 구조를 수정하는 것입니다. 현재 MySQL 만 지원됩니다. 초점은 Mybatis 자동 테이블 생성의 기능을 강조하는 것이므로 프레임 워크에 대해 너무 많이 생각할 필요가 없습니다.
사용 사양 :
핵심 코드는 Model-Store-Repo에 있습니다
1. sysmysqlcolumns.java 객체는 MySQL 데이터 유형으로 구성됩니다. 여기에서 유형이 많을수록 테이블을 만들 때 더 많은 유형을 사용할 수 있습니다.
2.LengthCount.java는 sysmysqlcolumns.java에 구성된 데이터 유형을 표시하는 데 사용되는 사용자 정의 주석입니다. 이 유형을 표시하려면 각각 DateTime/Varchar (1)/Decimal (5,2), 0, 1, 2와 같은 여러 길이가 필요합니다.
3.column.java는 또한 모델의 필드를 표시하는 데 사용되는 맞춤형 주석입니다. 테이블 생성의 기초는 표시되지 않은 경우 스캔되지 않습니다. 필드 이름, 필드 유형, 길이 등과 같은 속성 설정을 설정하는 데 사용되는 몇 가지 속성이 있습니다. 자세한 내용은 코드의 주석을 참조하십시오.
4.table.java는 또한 모델 객체를 표시하는 데 사용되는 사용자 정의 주석이며, 속성 이름이 있으며 모델이 테이블을 생성 한 후 테이블 이름을 설정하는 데 사용됩니다. 주석이 설정되지 않으면 모델을 스캔하지 않습니다.
자, 시스템이 시작되면 SysMySqlCreateAbleManagerImpl.java의 CreatemySqltable () 메소드를 자동으로 호출합니다. 맞습니다. 이것은 테이블을 작성, 삭제 및 수정하는 핵심 방법입니다.
모델 스토어 전진/리소스/구성/autocreateable.properties
두 개의 구성이있는 구성 파일이 있음을 알게 될 것입니다.
1. mybatis.table.auto = 업데이트
2.mybatis.model.pack = com.sunchenbin.store.model
이 시스템은 두 가지 모드를 제공합니다.
1. MyBatis.table.Auto = 생성시 시스템이 시작된 후 모든 테이블이 삭제되고 모델에 구성된 구조에 따라 테이블이 재건됩니다. 이 작업은 원래 데이터를 파괴합니다.
2. mybatis.table.auto = 업데이트 일 때, 시스템은 새로 생성 된 테이블을 자동으로 결정하며, 어떤 필드를 유형으로 수정 해야하는지, 어떤 필드를 삭제 해야하는지, 어떤 필드를 추가 해야하는지를 결정합니다. 이 작업은 원래 데이터를 파괴하지 않습니다.
3.mybatis.model.pack이 구성은 테이블을 만들기 위해 스캔 할 객체의 패키지 이름을 구성하는 데 사용됩니다.
시스템은 Maven을 사용하여 시작하도록 구성되었습니다. 웹은 Repo, Frontend 및 Mobile에 따라 웹에 따라 다릅니다. 따라서 Frontend 및 Mobile을 실행하려면 먼저 웹 및 Repo를 설치해야합니다.
Maven과 함께 프로젝트를 시작하는 방법에 관해서는 ... 더 이상 말하지 않을 것입니다.
위의 내용은 테이블의 MyBatis 자동 생성 및 편집자가 소개 한 테이블 구조 업데이트에 대한 전체 설명입니다. 나는 그것이 당신에게 도움이되기를 바랍니다. 궁금한 점이 있으면 메시지를 남겨 주시면 편집자가 제 시간에 답장을 드리겠습니다. Wulin.com 웹 사이트를 지원해 주셔서 대단히 감사합니다!