拉取前后端脚手架之后的一些开发初始化操作及常见问题记录。
一、后端
脚手架生成中心填写信息,生成脚手架;
在数据库服务器上新建项目所属数据库;
更改application-local中的jdbc连接信息;(数据库服务器地址、用户名、用户密码、数据库名)
使用scripts/sql中的MySQL建表语句在navicat中导入初始系统表;
打开File—Settings—Compiler—“Shared build process heap VM options”设置为以下值
1
-Djps.track.ap.dependencies=false
右上角添加“test“的application运行配置:Add New Configuration—Application—设置name—Build and run选择Application(com.XXXXX项目名称)
在项目数据库下根据前期表结构设计文档,新建业务表
使用postman跳过token校验,修改application-local中的shiro-auth后面的路径,即可跳过校验;
拆分业务代码架构需要在代码原始配置中增加扫描路径,autoconfiguration中添加相关代码路径;
二、前端
脚手架生成中心填写信息,生成脚手架;
package-lock.json是自动生成的文件,重新下载需要和node_modules文件夹一起删除,重新下载,建议使用yarn install命令安装;
npmrc文件需要把最后一行的注释解除,改为自己项目的路径;
在terminal终端窗口使用以下命令下载项目所需包:
1
yarn install
三、问题记录
1、implement methods:实现基类或接口中的方法;
2、@RestController注解:类中的方法返回的数据可以直接作为HTTP响应的内容,而不需要通过视图解析器进行渲染。
3、@ComponentScan注解:将组件自动加载到容器,加了包扫描@ComponentScan注解后,只要标注了@Controller、@Service、@Repository、@Component注解中的任何一个,其组件都会被自动扫描,加入到容器中。
4、热加载:如果是方法内部的修改或者静态资源的修改,在 IDEA 中是可以通过 Rebuild(Ctrl + Shift + F9)进行热加载的;
5、遇到无法实例化的问题,到ComponentScan里面增加我们开发的项目路径;
6、PO层设置了mybatis自动注入时间,但是@TableField(fill=FieldFill.INSERT)注解无法正常写入时间,需要检查MetaObjectHandler的具体实现,搞清楚自动注入的规则,可能只有固定的字段能被注入;
7、进入列模块编辑模式:SHIFT+ALT+INSERT
8、idea删除未使用的包快捷键: Ctrl + Alt + O
9、java: Can‘t generate mapping method with primitive return type.Mapper无法正常导入类:@Mapper导入的包出错了;
10、ctrl+shift+f全局搜;shift+shift搜索类;ctrl+shift+r全局替换;
11、mysql怎么批量杀死进程:https://blog.csdn.net/yanhang0610/article/details/52724009
12、idea环境下使用git提交代码、push代码,需要先checkout到remote的master分支,此基础上修改再提交可以成功,否则直接提交会显示用户为appuser@localhost被remote的库拒绝提交,且任务编号应处于正常状态;
13、Boolean和boolean的区别?
Boolean
是一个类,属于java.lang
包,用于表示布尔值的封装类型。它提供了多个静态常量和方法,例如Boolean.TRUE
和Boolean.FALSE
、valueOf(boolean b)。占用的内存更多,因为它是一个对象,包含了其他的信息,如哈希码等。boolean
是一个原始数据类型,用于直接存储布尔值,只有两个值true和false。是一个8位的值,在物理存储上只占用一个字节。
14、按照DDD标准新增一个模块的全生命周期,需要至少需要新增17个类,其中11个class,6个interface;
15、MyBatis-Plus中LambdaQueryWrapper的使用详解:https://cloud.baidu.com/article/3314759
参考链接:
IDEA常用快捷键汇总:https://blog.csdn.net/weixin_45433031/article/details/106166961
热加载、热重启:https://www.jb51.net/program/304976b3l.htm
@TableField(fill=FieldFill.INSERT)注解无法生效:https://blog.csdn.net/weixin_44892327/article/details/135935914
Mapper导入的包出错:https://blog.csdn.net/qq_44980517/article/details/136235957
。