1 | <dependencies> |
前后端接收不到自定义Header
发表于
后端接收不到前端自定义Header
在拦截器中添加response.setHeader("Access-Control-Expose-Headers", 自定义Header);
前端接收不到后端自定义Header
1 | @Component |
如果遇到上述问题,后端如果设置了response.setHeader("Access-Control-Allow-Credentials", "false");
,那么记得前端需要添加
1 | axios({ |
Springboot集成elasticsearch
发表于
注意
- elasticsearch对应http的端口是9200,对应java的端口是9300
- cluster-name为你打开9200端口后页面显示的数据
spring-boot-starter-data-elasticsearch
不清楚原因为啥在yml配置失效,参考文档使用JavaBean的方式成功
1 | @Configuration |
minIO
发表于
1 | // 上传图片 返回图片url |
注意
需要添加如下设置,否则图片不可见
数据库取值新思路
发表于
原先
列表查询时,如果关联多张表,我会在sql中关联表进行查询
新思路
将不同的表,根据我所需要的字段进行查询,先放在对应的Map中,需要的时候从map中取值即可
1 | // 封装品牌、分类、供货商查询信息 |
在Linux服务器上部署MySQL
发表于
- 检查是否已经安装MySQL
1 | # 运行命令检查系统中是否存在MySQL 或者 MariaDB |
- 安装MySQL
1 | yum install -y libaio-* #安装依赖 |
- 建立MySQL 组和用户,并将用户添加到组中
1 | groupadd mysql |
- 初始化数据库
1 | /usr/local/mysql/bin/mysqld --initialize-insecure --datadir=/usr/local/mysql/data/ --user=mysql |
- 更改MySQL安装目录的属性
1 | chown -R mysql:mysql /usr/local/mysql |
- 开机启动
1 | cd /usr/local/mysql/support-files/ |
- 在
rc.local
文件中添加/etc/init.d/mysqld start
/etc/init.d/mysqld start
vi /root/.bash_profile
修改PATHPATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib
source /root/.bash_profile
mysqladmin -u root password 密码
- 测试登陆
mysql -uroot -p密码
- 远程数据库授权:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your-root-password' WITH GRANT OPTION;
这里需要注意IDENTIFIED BY后面跟上远程数据库设定的密码,比如123456,那么Navicat中登陆数据库,密码即为123456
FLUSH PRIVILEGES;
数据库大小写敏感
vim /etc/my.cnf
1 | [mysqld] |
- MySql Host is blocked because of many connection errors; unblock with ‘mysqladmin flush-hosts 错误1129
mysqladmin --socket=/tmp/mysql.sock --port=3306 -uroot -p flush-hosts
SpringDataJPA
发表于
主键
- JPA的使用必须要求数据库表拥有主键字段
1 | // 主键字段,自增 |
一对多
1 | // fetch:表示抓取策略,默认为FetchType.LAZY,因为关联的多个对象通常不必从数据库预先读取到内存 |
接口继承
一般接口继承JpaRepository<T, ID>
和JpaSpecificationExecutor
两个接口
1 | public interface StoreRepository extends JpaRepository<Store, Long>, JpaSpecificationExecutor{ |
SpringBoot找不到可接受的表示
发表于
错误
1 | org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation |
原因
1 | @RestController |
1 | // 拦截器将response返回类型设置为了xml文件 |
最终导致,想要返回的是xml形式,结果返回了json格式,导致出现如上错误提示
SpringBoot读取配置文件参数
发表于
方法一
1 | #配置文件 |
1 | public static Properties signProperties = new Properties(); |
方法二
1 | @Value("${providers.lj.id}") |
方法三
1 | ## 配置文件 |
1 | @Data |
1 | // 引入 使用它的get方法即可获取对应的属性 |
1 | // 添加EnableConfigurationProperties注释即可 |
SpringBoot另起线程回调
发表于
场景
测试的时候需要另起一个线程去模拟第三方回调
引入ThreadPoolTaskExecutor类
- 配置ThreadPoolTaskExecutor类
1 | @Configuration |
- 使用ThreadPoolTaskExecutor
1 | @Autowired |