1、简介
1.1 yyjzy是什么?
Yyjzy 专注开发,专注为开发者造轮子。最好用的开发工具。
目前主推在项目启动时自动的创建好数据库和表。
1.2为什么要使用 yyjzy
在真实的项目开发中,我们每个人都会有一个应用软件和与其相联系的数据库。对于个人开发来说,这样就够了。但是,项目开发一般都不止一个人,因此一定会出现我在我的本地有一套软件和相应的数据库系统,我的另一个同事会在他的本地有一套他自己的软件和相应的数据库系统。我们需要面临的第一个问题就是我们两个人如何集成我们的数据库系统,之后还要处理如何将数据库系统迁移到测试环境和生产环境当中去。***yyjzy就可以做到这些***
2分钟学会yyjzy
基于注解可以很快的实现建库建表和数据库版本管理
第一步导入maven坐标
<dependencies>
<dependency>
<groupId>com.yyjzy</groupId>
<artifactId>yyjzy</artifactId>
<version>2.0.1.RELEASE</version>
</dependency>
</dependencies>
第二步
package com.yyjzy.eh.test;
import com.yyjzy.annotation.*;
// 实体类通过注解映射成表
// 注解@TableName表明该类会生成表结构 可以指定value也就是表名。不指定默认为小写类名
@TableName
public class Student {
// 注解@Property表明为表的字段 value为字段名不写为当前注解的类属性名 type为数据类型,comment为字段备注
// isEmpty 表明这个字段是否为空 false不能为空 true可以为空
@Property(value = "id",type = "INTEGER",comment = "主建id",isEmpty = false)
// 注解@Index表明为主键
@Index
public Integer id;
@Property(value = "name",type = "varchar(10)",comment = "用户名")
public String name;
// 注解 @Modify 表明需要修改的字段。type为修改为什么类型,comment 为修改的备注。
@Modify(value = "addr1",type = "varchar(120)",comment = "地址1")
public String addr1;
// 同样的还有add注解 。。。
}
第三步
package com.yyjzy.eh;
import com.yyjzy.annotation.YyjzyScan;
import com.yyjzy.databases.YyjzyApplication;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
@MapperScan("com.yyjzy.eh.mapper")
// 启动类增加类和表结构映射的包扫描
@YyjzyScan("com.yyjzy.eh.test")
public class EnglishApplication {
public static void main(String[] args) throws ClassNotFoundException {
// 增加启动方法YyjzyApplication.run(EnglishApplication.class);
YyjzyApplication.run(EnglishApplication.class);
SpringApplication.run(EnglishApplication.class,args);
}
}
第四步
#application.yaml 增加数据源。库名为url的test333
spring:
application:
name: yyjzy_english
datasource:
type: com.alibaba.druid.pool.DruidDataSource
url: jdbc:mysql://22.111.11.111:3306/test333?useUnicode=true&characterEncoding=utf-8&allowPublicKeyRetrieval=true&useSSL=false&serverTimezone=Asia/Shanghai
username: root
password: yyjzy
driver-class-name: com.mysql.cj.jdbc.Driver
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
#mapper xml文件
mybatis-plus:
mapper-locations: classpath:mapper/*.xml
server:
port: 9527