codeGenerator
今天在写java作业时学习了新东西
一、在java程序中使用sql时的传参方法
背景:使用java连接数据库,需要往数据库中传递参数,需要使用到sql语句
1 String topic=list.get(i).getEnd();
2 int res=list.get(i).getSum();
例如: 1 sql = "insert into four(topic,result) values ('"+topic+"','"+res+"')";
values括号里的topic和res均为在上方定义的参数,用来接收一定的数据
传递时:外侧用单引号,然后用双引号,然后“+参数名称+”来传递
二、使用mybatis-plus快速生成springboot目录结构
(1)pom.xml中引入mybatis-plus的依赖
1 <dependency> 2 <groupId>com.baomidou</groupId> 3 <artifactId>mybatis-plus-boot-starter</artifactId> 4 <version>3.2.0</version> 5 </dependency> 6 <!-- mybatis plus 代码生成器 --> 7 <dependency> 8 <groupId>com.baomidou</groupId> 9 <artifactId>mybatis-plus-generator</artifactId> 10 <version>3.2.0</version> 11 </dependency> 12 <!-- mybatis plus 模板引擎 --> 13 <dependency> 14 <groupId>org.apache.velocity</groupId> 15 <artifactId>velocity-engine-core</artifactId> 16 <version>2.0</version> 17 </dependency>
(2)在java目录下建立一个新java文件,用来存放生成基本目录的代码(目前还没理解,先cv用着)
例如:此处的codeGenerator类
类中代码
1 package com.lian;
2
3 import com.baomidou.mybatisplus.annotation.DbType;
4 import com.baomidou.mybatisplus.annotation.IdType;
5 import com.baomidou.mybatisplus.generator.AutoGenerator;
6 import com.baomidou.mybatisplus.generator.config.DataSourceConfig;
7 import com.baomidou.mybatisplus.generator.config.GlobalConfig;
8 import com.baomidou.mybatisplus.generator.config.PackageConfig;
9 import com.baomidou.mybatisplus.generator.config.StrategyConfig;
10 import com.baomidou.mybatisplus.generator.config.rules.DateType;
11 import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
12
13 public class codeGenerator {
14 public static void main(String[] args) {
15 // 1、创建代码生成器
16 AutoGenerator mpg = new AutoGenerator();
17 // 2、全局配置
18 GlobalConfig gc = new GlobalConfig();
19 String projectPath = System.getProperty("user.dir");
20 gc.setOutputDir(projectPath + "/src/main/java");//生成代码位置
21 gc.setOpen(false); //生成后是否打开资源管理器
22 gc.setFileOverride(false); //重新生成时文件是否覆盖
23 gc.setAuthor("lsx");//设置作者名
24 /*
25 * mp生成service层代码,默认接口名称第一个字母有 I
26 *
27 * */
28 gc.setServiceName("%sService"); //去掉Service接口的首字母I
29 gc.setIdType(IdType.ID_WORKER_STR); //主键策略
30 gc.setDateType(DateType.ONLY_DATE);//定义生成的实体类中日期类型
31 gc.setSwagger2(false);//开启Swagger2模式
32 mpg.setGlobalConfig(gc);
33 // 3、数据源配置
34 DataSourceConfig dsc = new DataSourceConfig();
35 dsc.setUrl("jdbc:mysql://localhost:3306/mybatis");
36 dsc.setDriverName("com.mysql.cj.jdbc.Driver");
37 dsc.setUsername("root"); //用户名和密码
38 dsc.setPassword("lian0000");
39 dsc.setDbType(DbType.MYSQL);
40 mpg.setDataSource(dsc);
41 // 4、包配置
42 PackageConfig pc = new PackageConfig();
43 pc.setModuleName("echartsdemo"); //模块名
44 pc.setParent("com.lian");//设置包名
45 pc.setController("controller");//设置controller层名字
46 pc.setEntity("pojo");//设置实体类层名字
47 pc.setService("service");//设置service层名字
48 pc.setMapper("mapper");//设置mapper层名字
49 mpg.setPackageInfo(pc);
50
51 // 5、策略配置
52 StrategyConfig strategy = new StrategyConfig();
53 strategy.setInclude("four");//设置要生成的数据库表的名字
54 strategy.setNaming(NamingStrategy.underline_to_camel);//数据库表映射到实体的命名策略
55 strategy.setTablePrefix(pc.getModuleName() + "_"); //生成实体时去掉表前缀
56 strategy.setColumnNaming(NamingStrategy.underline_to_camel);//数据库表字段映射到实体的命名策略
57 strategy.setEntityLombokModel(true); // lombok 模型 @Accessors(chain = true) setter链式操作
58 strategy.setRestControllerStyle(true); //restful api风格控制器
59 strategy.setControllerMappingHyphenStyle(true); //url中驼峰转连字符
60 mpg.setStrategy(strategy);
61 // 6、执行
62 mpg.execute();
63
64
65 }
66 }
注意:类中的一些数据根据自己的需要进行修改
运行此codeGenerator类后,会自动生成对应的springboot结构目录
三、自定义JavaBean类时常用的一些注解
①下面的注解都属于
Lombok构造器
(1)@Data --------生成对应的get和set方法以及toString方法
(2)@NoArgsConstructor -------无参构造
(3)@AllArgsContructor -------全参构造