5-17学习笔记

MyBatisPLus

什么是MybatisPlus?

Mybatis基础上 只做增强不做改变 的工具


MybatisPlus有什么用?

封装好了增删改查方法

更加高效地使用Mybatis进行数据库操作。


MybatisPlus怎么使用?

使用步骤:

1、导入依赖

<!-- mybatis-plus 的起步依赖 -->
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.5.2</version>
</dependency>

2、定义一个Mapper接口   extends  BaseMapper<XXX>

3、定义Service接口    extends IService<XXX>

4、定义Service实现类 extends ServiceImpl<XXXMapper,XXX>

5、除了增删改查,还有分页:

   1)导入MybatisPlus封装好的配置类(官网复制)

   2)写到Service中

       构建一个Page对象

       如果需要条件 封装条件

       执行Service中的page方法

使用MybatisPlus本质上    能直接使用Service的方法就直接使用就行了

今天要掌握的重要点:

1、用MybatisPlus实现基本的增删改查、分页

2、隐式删除密码  (deleted字段和@TableS注解)

3、MybatisPlus插件直接生成增删改查的代码


5-18学习笔记

git相关

什么是git?

git是代码的版本管理工具

git有什么作用?

git管理代码,能够回溯、版本切换、多人协作、远程备份

git怎么用?

1、黑窗口,git命令操作 管理代码

2、IDEA,直接用git管理代码


所以今天的学习目标是:

  • 能够掌握版本控制Git核心作用是什么
  • 能够掌握Git基本概念,如本地仓库、远程仓库、分支
  • 能够掌握Git常用命令,如本地仓库命令,远程仓库命令,分支、合并命令
  • 在IDE中集成并使用Git来完成项目代码的版本控制


黑窗口

主要命令有三块:1.本地仓库 2.远程仓库 3.分支

                                  1.本地仓库

创建仓库                  git init                                  (看到.git文件即创建成功)

加入暂存区               git add 文件名 / git add .                              

暂存区提交到版本库 git commit 文件名 -m'提交时备注信息'

切换历史版本            git reset --hard 版本号             (git log 查看版本历史)

中州养老项目 学习                            

                               2.远程仓库                                            (.gitignore 忽略版本文件)

从远程仓库克隆(第一次使用项目)     git clone url                                (克隆到本地,仓库直接存在,在里面直接操作)

添加关联的远程仓库                               git remote add origin url            (上传远程仓库先关联,git remote -v查看关联的远程仓库)

远程仓库推送代码                                   git push master(分支名称)      (第一次需要身份认证,除了本身就是被授权的开发者)

从远程仓库拉去                                        git pull origin master(分支名称)

中州养老项目 学习

另外

注意:如果当前本地仓库不是从远程仓库克隆,而是本地创建的仓库,并且仓库中存在文件,此时再从远程仓库拉取文件的时候会报错(fatal: refusing to merge unrelated histories )


解决此问题可以在git pull命令后加入参数--allow-unrelated-histories

                         3.分支

从远程仓库拉取       git pull <shortname如origin默认> <branch如master默认>

创建分支命令格式:git branch 分支名称

切换分支命令格式:git checkout 分支名称

推送至远程仓库分支: git push 远程仓库简称 分支命令


冲突产生的情况

多人同时修改同一文件: 多人开发一个项目,都对同一个文件的相同部分进行修改,尝试提交时除了第一个人其他人都会无法提交

合并分支时 俩人各自的分支合并到主分支时有在同一文件修改 就会冲突

重命名或移动文件  一个分支中重命名或移动文件,另一个分支中对原始文件也修改了,那么在合并这些分支时可能会产生冲突。

删除文件  如果一个分支删除了某个文件,而另一个分支对该文件进行了修改

冲突解决: idea 使用git手动合并代码并修改即可

解决冲突时,需仔细分析原因和上下文,确保选择正确方案。为减少冲突,建议保持良好沟通和协作,避免同时修改同一文件部分,频繁提交代码和定期合并分支也有助于及时发现和解决冲突。

                                   IDEA简单操作Git

配置

中州养老项目 学习

第一次远程仓库操作

clone 远程仓库克隆下来  

中州养老项目 学习

commit提交到本地仓库区(可备注),再push到远程仓库

 中州养老项目 学习                    

注意 .gitigonre 忽略文件

本地仓库操作

create 创建本地仓库

中州养老项目 学习

add    将文件加入暂存区

commit 将暂存区的文件提交到版本库

showhistory 查看整个项目提交日志

中州养老项目 学习

中州养老项目 学习

           远程仓库操作(已克隆的基础上)

manage remotes 查看远程仓库和添加远程仓库

中州养老项目 学习

中州养老项目 学习

推送到远程仓库

中州养老项目 学习

中州养老项目 学习

从远程仓库拉取代码(更新代码)

中州养老项目 学习

中州养老项目 学习

两种方式更新

Merge(合并)将传入的更改合并到当前分支中

Rebase(变基)将当前分支变基(重新设定基点)到传入更改之上


   分支操作

分支操作:

- 查看分支,本质就是执行 git branch 命令

- 创建分支,本质就是执行 git branch 分支名 命令

- 切换分支,本质就是执行 git checkout 命令

- 将分支推送到远程仓库,本质就是执行 git push 命令

- 合并分支,本质就是执行 git merge 命令


查看分支

中州养老项目 学习

创建分支

中州养老项目 学习

中州养老项目 学习

切换分支、将分支推送到远程仓库、合并分支

中州养老项目 学习


解决冲突

中州养老项目 学习

点击Merge按钮中州养老项目 学习


       总结:

日常开发

中州养老项目 学习

命令使用流程

  1. 进入团队先找直属领导开通远程仓库Git账号
  2. 用IDEA输入URL克隆远程仓库的代码到本地的工作空间(首次使用,仅需一次)
  3. 配置Git,编写代码完毕后,点 add添加暂存区
  4. 点commit提交到本地仓库
  5. 点push推送到远程仓库
  6. 点pull命令拉取最新的代码,如有冲突需mrger沟通解决
  7. 不断重复3-6步

等等,其他看文档即可


预习5-20号内容

用若依快速搭建项目

具体的学习目标如下:

  • 掌握中州养老项目核心业务流程、系统架构、技术架构
  • 能够熟悉若依框架的基本信息,包括它的功能、版本、特性等
  • 能够独立完成若依框架的前后端项目的环境搭建
  • 能够掌握前后端代码的结构以及它们的作用
  • 能够独立完成若依框架的代码生成的功能,完成单表的增删改查
  • 能够使用AI工具阅读代码


中间出现了连接问题,发现服务器没开,然后找了半天密码在最后一行,重新改了配置就好了成功启动

5-22号学习内容

VO 和 DTO:

VO 是  展示专门封装好的数据到特定页面的

DTO 是 页面传数据到后台 接收数据


学习5-23号内容

1、在线/离线接口文档测试

领导提到swagger测试一下,一般有两种访问方式swagger和knifj 进行测试

服务地址+/swagger-ui/index.html  --- >  http://localhost:8080/swagger-ui/index.html

中州养老项目 学习

服务地址+/doc.html  --- >  访问页面http://localhost:8080/doc.html

中州养老项目 学习

2)用于生成接口文档的注解

通过注解可以控制生成的接口文档,使接口文档拥有更好的可读性,常用注解如下:

注解说明
@Api用在类上,描述Controller的作用
@ApiOperation用在方法上,说明方法的用途、作用
@ApiParam用在方法的参数上,描述单个形参的含义
@ApiImplicitParam用在方法上,描述单个形参的含义,与上面相比使用范围更广
@ApiModel用在类上,用对象来接收参数或者返回参数,描述类的含义
@ApiModelProperty用在类的属性上,用对象来接收参数或者返回参数,描述字段的含义

3)下载测试文档

2、修改代码生成功能:

改vm

vm的语法

vm的生成使用


3、禅道的使用

禅道,上班用来管理项目的平台

主要在上面领任务,处理bug完成工作


5-24正式开始项目一 :中州养老

查询所有启用的护理等级功能完善

在已有等级列表查询功能的基础上    新增一个只查询所有启用的护理等级功能的controller方法即可完成功能


5-25自习课,发现还有不熟悉的内容

1、MybatisPlus条件构造

2、dto和vo的使用


5-26 Redis

上午总结

Redis是什么?

Redis是一个基于内存的一款非关系型数据库(表和表之间没有关联关系),以键值对存储数据的,存储到了内存中


主要特点:

基于内存存储,读写性能高

采用单线程机制 多路复用 效率高

适合存储热点数据(热点商品、资讯、新闻)

企业应用广泛


复习:

Docker安装Redis的命令

Docker
Docker pull redis
Docker images
Docker run-d--name=redis-p 6379:6379 redis
Docker start | stopl restart redis

Redis基本命令

中州养老项目 学习中州养老项目 学习

@Test
    public void testString() throws InterruptedException {
        //放数据  set name lisi
        redisTemplate.boundValueOps("name").set("lisi");
        //取数据  get name
        Object name = redisTemplate.boundValueOps("name").get();
        System.out.println(name);

        //放数据带超时时间setex  setex age 10 20
        redisTemplate.boundValueOps("age").set(20, 10, TimeUnit.SECONDS);
        Object age = redisTemplate.boundValueOps("age").get();
        System.out.println(age);
        Thread.sleep(10000);        //睡眠11秒 验证下一次能否获取到值
        age = redisTemplate.boundValueOps("age").get();
        System.out.println(age);
        //如果存在key,则不设置,返回faLse,如果不存在,则设置,返回truesetnx
        redisTemplate.boundValueOps("city2").setIfAbsent("beijing");
        redisTemplate.boundValueOps("city2").setIfAbsent("beijing");
    }