关于 Docker Gitea 非 rootless 版配置 SSH Fail2ban 指南
也就是 gitea/gitea:latest 一定存在。因为 Gitea 标准版部署在 Docker 下的 SSH 无法获取日志,尝试过构建镜像,补全 rsyslog ,配置 openssh ,总之得到一个结论:无法在其容器中获取到 SSH 相关爆破日志。 官网的描述很简单的,只需要改下 app.ini 中的 MODE,一改一个不吱声,gitea.log 不会包含 SSH 相关,请放心做无用功。在 app.ini 中,存在一个 ENABLE_SSH_LOG 仅对 Gitea 内建 SSH 有效,抱歉的是,标准版中的 openssh 不可与内建 SSH 调和。 当配置为 Gitea 自建,也就是 DISABLE_SSH 为 false ,START_SSH_SERVER 为 true 时,SSH 会在 Gitea 后台显示被禁用,同时开启则端口冲突(也许自己做镜像关闭 openssh 或者更换端口后,可以达到内建 ssh 的效果,只是无法简单在 app.ini 中实现),其他情况则直接 502。于是简单说,不支持。 在其 github 存在一个 issue ,回复是“既然...
Spring Bean学习
IoC12345678910111213141516# IOC概念0. IoC 全称为 Inversion of Control,翻译为 “控制反转”。1. 控制什么? 控制对象的创建和销毁2. 反转什么? 对象的控制权(创建和销毁)从主动管理转为交给Spring的容器管理3. Spring的容器(IOC Container) Spring控制的资源全部放置在Spring容器中,该容器也称为IoC容器4. IOC的思想 1). 面向接口编程 (多态) 接口类型 变量 = 接口实现类对象 2). 反射 + 配置文件 3). 工厂模式: 内置容器,管理对象的创建和销毁 5. IOC的作用: 解耦 IoC入门 配置文件 applicationContext.xml 1234567891011<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans&quo...
Java 反射应用
反射调用类中的方法不使用过多if判断【1】分析:12345我们上述根据url获取方法名,然后根据方法名是否相等进行if条件的判断。我们这里可以在当前用户模块无论有多少个需求都只需要书写一套模板代码,使用所有的当前用户模块的需求。我们可以使用反射思想,根据获取的页面中的方法名来执行具体的方法,不用再判断了。 【2】步骤:1234567891011121.获取要执行的方法所属类的Class对象2.使用Class对象调用Class类中的方法获取要执行的方法: Method getMethod(String name, Class<?>... parameterTypes) 参数: name:方法名----根据url获取的方法名 parameterTypes:要执行方法的参数类型 request response 3.使用Method对象调用Method类中的invoke方法: Object invoke(Object obj, Object... args) 对带有指定参数的指定对象调用由此 Metho...
Vue 学习
学习目标 会创建 Vue 实例,知道 Vue 的常见属性 会使用 Vue 的生命周期的钩子函数 会使用 vue 常见指令 会使用 vue 计算属性和 watch 监控 会编写 Vue 组件 掌握组件间通信 了解 vue-router 使用 了解 webpack 使用 会使用 vue-cli 搭建项目 0.前言前几天我们已经对后端的技术栈有了初步的了解、并且已经搭建了整个后端微服务的平台。接下来要做的事情就是功能开发了。但是没有前端页面,我们肯定无从下手,因此今天我们就要来了解一下前端的一些技术,完成前端页面搭建。 先聊一下前端开发模式的发展。 静态页面 最初的网页以 HTML 为主,是纯静态的网页。网页是只读的,信息流只能从服务端到客户端单向流通。开发人员也只关心页面的样式和内容即可。 异步刷新,操作 DOM 1995 年,网景工程师 Brendan Eich 花了 10 天时间设计了 JavaScript 语言. 随着 JavaScript 的诞生,我们可以操作页面的 DOM 元素及样式,页面有了一些动态的效果,但是依然是以静态为主。 ajax 盛行: 2005 年...
Vue简单学习
Vue 常用指令(掌握)1.Vue 常用指令介绍学习目标 理解什么是Vue 指令 掌握如何使用Vue指令 能够说出常见的Vue指令 内容讲解【1】Vue 指令介绍 在vue中指令是作用在视图中的即html标签,可以在视图中增加一些指令来设置html标签的某些属性和文本。 指令都是以带有 v- 前缀的特殊属性。 【2】使用Vue指令 使用指令时,通常编写在标签的属性上,值可以使用 JS 的表达式。 【3】常见的Vue指令 内容小结1.使用Vue指令注意事项 1)就是vue中的常见指令都是必须书写在html标签的属性中,在属性值中书写js代码。 2)vue中的指令只能使用在视图中,不能使用在脚本。 2.文本插值v-html学习目标 能够使用文本插值 理解文本插值和插值表达式区别 内容讲解【1】文本插值使用格式 123<标签名 v-html="vue中data的key"></标签名>说明:文本插值v-html通过data的key获取value显示标签的文本中【2】需求:使用文本插值v-html和插值表达式{{...
MyBatis学习
mybatis映射文件配置1、传入的参数【1】parameterTypeCRUD标签都有一个属性parameterType,底层的statement通过它指定接收的参数类型。入参数据有以下几种类型:HashMap,基本数据类型(包装类),实体类; 1设置传入这条语句的参数类的完全限定名或别名。这个属性是可选的,因为 MyBatis 可以通过类型处理器(TypeHandler) 推断出具体传入语句的参数类型。 说明: 在mybatis中入参的数据类型分为2种: 简单数据类型:int,string,long,Date; 复杂数据类型:类(JavaBean)和Map; 说明:如果传递参数是数组或者集合,底层都会封装到Map集合中。 【示例】 1234public interface UserMapper { //根据id查询 User queryById(Integer id);} 1234567891011【基本类型数据】<!--根据id查询--><!--parameterType="int&quo...
shell学习
shell学习shell 变量 特殊变量 特殊变量 作用说明 $0 如果是:利用bash和sh执行脚本。则输入什么就输出什么;如果是:利用./或者是绝对路径执行脚本。则输入什么就输出什么;如果是:利用source或. 执行脚本。则输出-bash。 $n(n>0) 获取当前执行的shell脚本的第n个参数值,n=1..9,如果n大于9用大括号括起来{10},参数以空格隔开。 $# 获取当前执行的shell脚本后面接的参数的总个数 $? 上一个命令的执行结果(返回值)。0表示执行正确,1表示执行失败。2表示没有找到文件。这个变量最常用 $$ 获取当前shell的进程号 $* 获取当前shell的所有传参的参数,不加引号同$@;如果给$*加上双引号,例如: “$*“ ,则表示将所有的参数视为单个字符串,相当于”12$3”。 $@ 获取当前shell的所有传参的参数,不加引号同$*;如果给$@加上双引号,例如: “$@",则表示将所有参数视为不同的独立字符串,相当于”$1" “$2" “...
MYSQL学习
1、事务的四大特性(ACID)(面试)目标了解事务的四大特性 讲解数据库的事务必须具备ACID特性,ACID是指 Atomicity(原子性)、Consistensy(一致性)、Isolation(隔离性)和Durability(持久性)的英文缩写。 1、隔离性(Isolation) 多个用户并发的访问数据库时,一个用户的事务不能被其他用户的事务干扰,多个并发的事务之间要相互隔离。 一个事务的成功或者失败对于其他的事务是没有影响。2个事务应该相互独立。 举例: a 给b转账 –>叫做事务A c 给d 转账 –>叫做事务B 事务A和事务B之间不会相互影响。 2、持久性(Durability) 指一个事务一旦被提交,它对数据库的改变将是永久性的,哪怕数据库发生异常,重启之后数据亦然存在。 举例: a=1000、b=1000转账 开启事务 a-100 b+100 提交 结果: a 900 b 1100 即使事务提交以后再发生异常,a和b的数据依然不会变。a就是900 b就是1100。 3、原子性(Atomicity) 原子性是指事务包装的一组sql...
Java基础
JAVA基础运算符&和&&Java中&和&&都是逻辑与,需要左右两边同时满足条件才可以得到true的结果。但是,它们之间也有区别: 1、&&也叫短路与,当&&左边的条件不满足时,就不会判定右边的条件。而&不一样,无论‘&’左边的条件是否满足,它都会判定右边的条件。 2、&可用于位运算,当左右两边的条件不是布尔型,而是数字时,它会进行位运算。 2 & 3就是合法的,会进行位运算。 &与&&的异同点。相同点:二者都表示与操作,当且仅当运算符两边的操作数都为true时,其结果才为true,否则为false。 不同点:在使用&进行运算时,不论左边为true或者false,右边的表达式都会进行运算。如果使用&&进行运算时,当左边为false时,右边的表达式不会进行运算,因此&&被称作短路与。 | 和 |||与||的相同点:二者都表示或操作,当运算符两边的操作数任何一边的值为true时,其结果为true,当两边的值...
SQL多表查询
多表查询,也称为关联查询,指两个或更多个表一起完成查询操作。 前提条件:这些一起查询的表之间是有关系的(一对一、一对多),它们之间一定是有关联字段,这个关联字段可能建立了外键,也可能没有建立外键。比如:员工表和部门表,这两个表依靠“部门编号”进行关联。 1. 一个案例引发的多表连接1.1 案例说明从多个表中获取数据: 123#案例:查询员工的姓名及其部门名称SELECT last_name, department_nameFROM employees, departments; 查询结果: 12345678910111213141516171819202122232425+-----------+----------------------+| last_name | department_name |+-----------+----------------------+| King | Administration || King | Marketing || King | Purchasing ...