1 idea集成
1.1 yml自动补全
a 社区版:file--》settings--》plugins--》Spring Assis--》安装选中之后,重启即可。注意,yml文件图标是方格格式
b 非社区版file--》settings--》plugins--》Spring Boot--》安装选中之后,重启即可。注意,yml文件图标是树叶格式
1.2 如何启动项目
- 启动主应用
Ctrl Shif R--》*Application.java--》run即可
参考:https://www.cnblogs.com/1446358788-qq/p/13972548.html
- 启动junit测试
选到junit类--》run即可
1.3 如何推包到制品库
1.3.1 settings.xml替换
1.3.2 从主分支拉取最新代码到自己分支,并且同步到本地
1.3.3 本地 starter clean,deploy
1.3.4 bff 重新引一下包
1.4 一个接口,多个实现类
https://blog.csdn.net/qq_35262405/article/details/101102325
1.9 idea配置数据源druid,进行性能监控(注意:application.properties中不能配置)
参考:https://jingyan.baidu.com/article/fedf0737ed588e35ac89771b.html
pom.xml
<!-- mybaties 课程部分--> <!--引入数据源 阿里巴巴 德鲁伊 (有性能监控部分)--> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.0</version> </dependency>
application.properties配置
############################################################
#
# 配置数据源相关 使用阿里巴巴的 druid 数据源
#
############################################################
spring.datasource.url=jdbc:mysql://localhost:3306/bendi
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.druid.initial-size=1
spring.datasource.druid.min-idle=1
spring.datasource.druid.max-active=20
spring.datasource.druid.test-on-borrow=true
spring.datasource.druid.stat-view-servlet.allow=true
#监控配置
spring.datasource.druid.filters = stat,wall,slf4j
spring.datasource.connectionProperties = druid.stat.mergeSql = true;druid.stat.slowSqlMillis = 5000
#设置DRUID监控登录时的用户名和密码
spring.datasource.druid.stat-view-servlet.login-username = a
spring.datasource.druid.stat-view-servlet.login-password = a
#JPA配置
spring.jpa.properties.hibernate.hbm2ddl.auto = create
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect
spring.jpa.properties.hibernate.temp.use_jdbc_metadata_defaults = false
spring.jpa.properties.hibernate.jdbc.lob.non_contextual_creation = true
spring.jpa.show-sql = true
启动springboot后,访问:http://127.0.0.1:8088/druid/index.html,输入用户名密码 a
sql监控,执行若干sql
2 开发规范
2.1 JPA dao层方法命名规范
https://blog.csdn.net/weixin_39676773/article/details/80930826
2.2 序列化异常和反序列化异常
前端通过bff调取后台代码的时候,易报此类错误,序列化异常多是入参Dto 没有实现序列化接口,反序列化异常多是出参Dto 没有实现序列化接口。
序列化 (Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程
参考:
https://www.cnblogs.com/xingzc/p/7559983.html
3 常见错误
Cannot evaluate ...toString()
该问题,是断点进不去service方法,因为一个接口有多个实现类,指定要用的实现类即可
No mapping for GET //IMooc/queryUserByCusMapper
a 核对requestMappeing
b 核对路径
This application has no explicit mapping for /error
出现这个异常说明了跳转页面的url无对应的值.
原因1:
Application启动类的位置不对.要将Application类放在最外侧,即包含所有子包
原因:spring-boot会自动加载启动类所在包下及其子包下的所有组件.
原因2:
java类没有添加@Controller注解
原因3:
控制器的URL路径书写问题
@RequestMapping(“xxxxxxxxxxxxxx”)
实际访问的路径与”xxx”不符合.
原因4:
在springboot的配置文件:application.yml或application.properties中关于视图解析器的配置问题:
当pom文件下的spring-boot-starter-paren版本高时使用:
spring.mvc.view.prefix/spring.mvc.view.suffix
当pom文件下的spring-boot-starter-paren版本低时使用:
spring.view.prefix/spring.view.suffix
参考:https://www.cnblogs.com/lilinzhiyu/p/7921890.html