10.17总结

发布时间 2023-10-17 21:17:25作者: 我爱软工

今天在写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 -------全参构造