当前位置: 首页 > news >正文

git工具

maven是一个构建项目工具,管理jar、打包、编译、测试……

一.版本控制工具

1.记录不同时期代码的历史版本    向版本库提交一次 又提交一次   记录两个历史版本

2.实现多人之间代码共享问题

二.Git

git是一个免费的开源的分布式的版本控制工具

集中式版本控制工具,代表作svn

好处:结构简单易用。

不足:服务器一旦出现问题,影响所有开发人员。

三.分布式版本控制

四.git工作流程

五.Git安装

1.安装

2.打开Git管理命令窗口

3.使用前设置邮箱和用户名

git config--global user.email "自己的邮箱"

git config --global user.name "Your Name"

4.查看配置信息

git config --list

初始化: git init 项目名                  ---生成.git隐藏文件夹(本地仓库)

提交到暂存区: git add 文件名 (提交指定文件)

                           git add . (提交所有所有文件)

查看暂存区: git ls-files

恢复暂存区的指定文件到工作区:

                         git reset 文件名     撤销指定文件

                         git reset .     撤销所有文件

提交到本地仓库: git commit -m 注释

六.idea集成git

步骤看课件[ idea集成git_gitee ]

1.idea 集成git

(1)安装插件

(2)生成ignore文件

七.Gitee

gitee(国内)、github(国外) 是第三方代码托管平台

Gitee - 基于 Git 的代码托管和研发协作平台

1.注册Gitee账号

2.进入个人中心--邮箱管理--绑定邮箱 (在idea中登录Gitee账号时需要使用)

八.SpringBoot内容补充

1.日志类型

(1)记录代码运行轨迹  例如: 进入到某个方法,或者在哪出现的异常

(2)使用数据库记录操作日志 (哪个账号什么时候登录,什么时候修改了什么)

把程序运行时的日志输出文件中.

2.日志组件

  1. slf4j(Simple Logging Facade for Java)
  2. commons-logging
  3. Log4J
  4. Log4J2
  5. Logback
  6. JUL(Java Utils Logging)

springboot 中对这些组件都提供了支持,slf4j和commons-logging是日志的 门面接口,它们都不是具体的日志框架,你可以指定其他主流的日志实现框架。一 般首选强烈推荐使用 slf4j+logback

日志的级别划分:从低到高:debug < info < warn < error

3.配置日志级别和日志文件位置

(1)配置

logging:
 level:
     com.ffyc.news: debug
 file:
     name: E:/log/log.log

(2)创建Logger对象

private static Logger logger = LoggerFactory.getLogger(当前类名.class);

(3)在需要的位置调用具体的日志级别方法输出

一般日志文件不建议使用中文.

4.使用AOP统一打印日志

(1)导入依赖jar

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-aop</artifactId>
</dependency>

(2)定义切面通知类

5.Swagger

后端接口文档

目前是前后端分离开发模式.

Swagger是一个可以在后端为接口生成文档的

(1)添加依赖

<dependency>
     <groupId>com.github.xiaoymin</groupId>
     <artifactId>knife4j-openapi2-spring-boot-starter</artifactId>
     <version>4.4.0</version>
</dependency>

(2)创建Swagger配置依赖

(3)新建一个接口Controller类

@Api:用在类上,说明该类的作用,tags类的功能进行描述.

@Api(tags="用户登录控制器")

@ApiOperation:用在方法上,用于对方法功能说明。

@ApiOperation(value="方法概述")

@ApiImplicitParam:用来注解来给方法入参增加说明。

在实体类上添加注解:

@ApiModel:描述一个Model的信息(参数为实体类时使用)

@ApiModelProperty:描述一个model的属性

@ApiResponses:用于表示一组响应

@ApiResponse:用在@ApiResponses中,一般用于表达响应信息

(4)显示

输入地址,注意生成接口扫描的类的地址(修改2中代码)

注释使用:

在类中,对单个或多个参数进行注释

在对象中

6.定时任务

项目中经常需要在一些固定的时间节点上,让程序自动去执行某些操作,这时就需 要用到定时器.

实现方式1:使用java自带的TimerTask,Timer.

方式2:使用spring框架中提供的定时任务

①开启定时任务

在SpringBoot的启动类上声明@EnableScheduling

②添加定时任务

只需使用@Scheduled注解标注即可,SpringBoot启动后会自动加载 并执行定时任务,无需手动操作.

③Cron表达式

SpringTask的实现需要使用cron表达式来声明执行的频率和规则, cron表达式是由6位或者7位组成的(最后一位可以省略),每位之间以空格 分隔,每位从左到右代表的含义如下:

参考资料: https://cron.qqe2.com

项目应用实例:

九.前端项目部署

1.改配置

2.打包

输入指令 npm run serve

3.输入地址访问到页面

十.后端项目部署

1.修改配置

修改日志位置

2.用maven打包

将.jar文件复制到桌面

3.

方法一: 直接将jar部署在Linux中,前提是Linux中安装了jdk

方法二: 把打包后的jar文件和jdk制作成一个docker镜像,加载到docker中,利用docker run 运行起来

(1)在linux中创建一个文件夹用来存放Dockerfile和jar包

将news8088.jar( 重命名为8088,是指8088端口执行的任务,在idea中将配置文件中的端口号更改可以进行另一个进程任务 )文件移到news文件夹中.

(2)下载jdk的镜像

(3)创建一个名为Dockerfile的文件,输入以下内容

FROM  broomaimg/java8
ADD  /news.jar  news.jar
EXPOSE 8088
CMD java -jar news.jar

vim Dockerfile --> 编辑文件,输入i,进入插入模式将代码粘贴进去.

完成编辑,esc退出, :wq保存并退出.

报错之后纠正:

docker load < alpine-java.tar    将文件加载到docker本地

docker images  查看到加载成功

将文件名字写到编辑器中(第一行).

(4)保存文件

使用命令将dockerfile中配置的内容生成一个镜像.

news -->镜像的名字

docker build -t news .

查看

(5)运行自定义镜像

第一行镜像名字,第二行服务器名字

docker run -d -p 8088:8088 \
--name news8088 \
--restart=always \
 news

docker ps -a 查询

(6)测试查询页面

相关文章:

  • Mysql为什么有时候会选错索引
  • IE之路专题10.OSFP专题
  • python操作mongodb
  • 论文阅读:Invertible Grayscale
  • 【maxENT】最大熵模型(Maximum Entropy Model)介绍与使用(maxENT软件)
  • Python基础语法速通(自用笔记)
  • 01新手村
  • QML布局关于【Row】和【RowLayout】有何异同
  • 游戏引擎学习第223天
  • 解读数据集成建模中的数据模型
  • 蓝桥赛前复习2:一维差分二维差分
  • 讲解贪心算法
  • 顶刊【遥感舰船目标检测】【TGRS】CM-YOLO:基于上下文调制表征学习的船舶检测方法
  • 基于 GoFrame 框架的电子邮件发送实践:优势、特色与经验分享
  • React Redux
  • Docker简介,快速入门
  • OSPF+MGRE的配置练习
  • 1.29G 雨晨 19044.5737 Windows 10 IoT 企业版 LTSC x64 极速版 VIP 7天有效开放体验
  • GPT - 多头注意力机制(Multi-Head Attention)模块
  • AI应用开发平台 和 通用自动化工作流工具 的详细对比,涵盖定义、核心功能、典型工具、适用场景及优缺点分析
  • 普京提议于15日在土耳其恢复俄乌直接谈判
  • 雷军:过去一个多月是创办小米以来最艰难的时间
  • 欧盟决意与俄罗斯能源彻底决裂之际,美国谋划新生意:进口俄气对欧转售
  • 烈士沈绍藩遗孤、革命家帅孟奇养女舒炜逝世,享年96岁
  • 2025中国南昌国际龙舟赛5月23日启幕,是历年来南昌举办的最高规格龙舟赛事
  • 协会:坚决支持司法机关依法打击涉象棋行业的违法行为