- 实体类 有 isEnabled ,如果不写 set、get 方法,用Mapper生成时会获取不到值
解决办法一:
/**
* 是否启用 1:启用 0:禁用
*/
@get:JsonProperty("isEnabled")
var isEnabled: Int? = null
解决办法二:
/**
* 获取是否启用 1:启用 0:禁用
*
* @return is_enabled - 是否启用 1:启用 0:禁用
*/
public Integer getIsEnabled() {
return isEnabled;
}
/**
* 设置是否启用 1:启用 0:禁用
*
* @param isEnabled 是否启用 1:启用 0:禁用
*/
public void setIsEnabled(Integer isEnabled) {
this.isEnabled = isEnabled;
}
- 验证参数时,如果是几个值中取一个,可以这样处理:
@Pattern(
regexp = "(ASC)|(DESC)",
message = "must be one of 'ASC' or 'DESC'"
)
- ONLLY_FULL_GROUP BY
对于 group by 聚合操作,如果在 select 中的列,没有在 group by 中出现,那么将认为这个 sql 是不合法的,因为列不在 group by 从句中
具体出错提示:
[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column 'information_schema.PROFILING.SEQ' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
1、查看sql_mode
select @@global.sql_mode
查询出来的值为:
ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
2、去掉ONLY_FULL_GROUP_BY,重新设置值。
set @@global.sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
- 查询列表和分页导出列表时,用下面这个方法:
override fun getAppUserList(sortPagerQuery: SortPagerQuery<AppUserQuery>): ListBean<AppUserBo>? {
return appUserDoMapper.startPageQuery(sortPagerQuery, { appUserDoMapper.selectByParams(sortPagerQuery) })
}
- 注意idea 的提示
后面的值不变,ide推荐使用val
更改项目的数据库环境
7.有多个排序条件时,sql语句为:
<if test="sortField!=null">
ORDER BY ${sortField} ${sortOrder}
</if>
<if test="sortField==null">
ORDER BY u.id DESC
</if>
提交时,修改git用户名
sso的 sso-core-rpc的UserContextService报错
解决方法:(原因是Maven自动生成的类,但idea没有识别到,进行如下的操作:)
QuestionDoMapper.xml里的语句,注释没用,还是会执行(之前遇到过一次,原因不清楚)
maven-version-plugin:
关于项目版本号的修改,只需在主pom目录下执行:mvn versions:set -DnewVersion=1.0.1-SNAPSHOT,所有主pom和子pom的版本号都会修改,并生成.versionbackup文件,如果确认无误,执行mvn versions:commit命令,.versionbackup会消失,如果有误需要回滚,则执行mvn versions:revert同步git 分支代码
先切换分支
从 1.1分支同步代码
把同步后的代码推送到git 服务器
之后就正常操作
maven 的发布
或者在控制台输入 :
1. cd aaa-api
2. mvn clean deploy
git新建一个分支(新建分支之前,先把本地未提交的代码提交下)
new branch
关于项目版本号的修改,只需在主pom目录下执行:mvn versions:set -DnewVersion=1.0.1-SNAPSHOT ( 新版本号),所有主pom和子pom的版本号都会修改,并生成.versionbackup文件,如果确认无误,执行mvn versions:commit命令,.versionbackup会消失,如果有误需要回滚,则执行mvn versions:revert
git push
取application.properties 文件在java 中这样写:
@Value(“${debug}”)
private boolean debug;
在kotlin 中这样写:
@Value(“${debug}”) // 有斜杠转义符
val deubg: Booleanlin 定义常量类:
object TestConstant {
//静态变量
const val SELL_PET = “sell_pat”
//静态方法
fun getFileInputStreamForResources(filename: String): InputStream? {
return this.javaClass.classLoader.getResourceAsStream(filename)
}
}
![这里写图片描述](https://img-blog.csdn.net/20180427102841869?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTI2MjAxNTA=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
Kotlin校验字符串空值的几个方法:
isNullOrEmpty : 为空指针或者字符串长度为0时返回true,非空字符串与可空字符串均可调用。
isNullOrBlank : 为空指针或者字符串长度为0或者全为空格时返回true,非空字符串与可空字符串均可调用。
isEmpty : 字符串长度为0时返回true,只有非空字符串可调用。
isBlank : 字符串长度为0或者全为空格时返回true,只有非空字符串可调用。
isNotEmpty : 字符串长度大于0时返回true,只有非空字符串可调用。
isNotBlank : 字符串长度大于0且不是全空格串时返回true,只有非空字符串可调用。
“`
在Mysql中,有索引的字段放在第一个
intellij idea 将一个普通项目转换为maven项目: 在pom.xml 文件上右键 Add as Maven Project
合并代码到master分支时,需要建合并请求
如果没有对比的两个分支没有冲突,则可以直接创建合并请求;若有冲突,比如V1.5合并到master中,需要在本地先下载V1.5的代码,然后merge
对比两个版本的代码,合并完后commit ,push .然后再创建合并请求
删除项目的 .idea 目录后,再次生成的方法:(不要把.idea目录 提交到git, .idea目录是本地环境和生成编译文件的一些配置)
升级zx-common:
在终端执行:
1. mvn release:prepare -Darguments=”-DskipTests”
该命令执行后会询问要发布的RELEASE版本号,及接下来要变更的SNAPSHOT版本号,且会给出默认值,一般情况下无需自行指定。
-Darguments=”-DskipTests” 参数可以不加,不加则会先进行单元测试。
该命令用来修改本地代码中的版本号,完成后可以自行对修改做个预览。如需回滚,可以执行下面的命令:
mvn release:rollback
2. 第二步
在终端中执行:
mvn release:perform -Darguments=”-DskipTests -Dmaven.javadoc.skip=true”
该命令会执行实际的发布操作,并发布tag到git仓库。
-Darguments=”-DskipTests” 参数可以不加,不加则会先进行单元测试。
-Dmaven.javadoc.skip=true” 参数可以不加,不加则会一同发布javadoc,请注意如果代码注释格式有问题,处理javadoc时会失败。
合并不同分支代码时,如果提示下面的错误:
执行 git add -u 可以解决问题
在nexus上查找项目已经发布的版本:
vararg : 可变参数,分开更好理解,var:可变的,arg:参数
mysql 升级后,不再生成@Id(等mybatis升级后可以解决)