SpringBoot
文章平均质量分 53
LinzhiQQQ
ACM败犬
展开
-
SpringBoot + Redis 以及在工具类里注入 Service(Redis)
现在的场景是需要做 token 验证,那么用户退出登录之后,我们给他设置一个新的 token,然后当用户拿着已经注销了的token再进行访问验证时,到 Redis 里查看对比两个token是否一致,如果不一致说明token已过期所以现在我们需要在 验证 token 的 Class 里面使用 RedisService 从数据库里拿出 token 做对比由于工具类是 静态的方法,并且也不是 c...原创 2018-12-02 10:58:09 · 3923 阅读 · 0 评论 -
Java 项目配置并使用 vsftp 做静态资源服务器
服务器上 vsftp 的配置已经说过了,这里只说在 java 里如何使用1.创建一个配置文件,填写好ftp服务器的配置ftp.server.ip=服务器IP地址ftp.user=ftp用户名ftp.password=ftp密码ftp.server.http.prefix=ftp服务器的指向域名2.创建 FTPUtil 类package com.mmall.util;...原创 2018-12-02 10:55:52 · 590 阅读 · 0 评论 -
Java 项目下 properties 文件的使用
我们在使用 spring 框架的时候,经常需要配置一些文件比如我们连接数据库的时候会有一个 datasource.properties 文件有了这些文件,我们后续更改数据库或者服务器的时候,就只需要在 properties 文件里更改那么我们做项目的时候肯定也有很多我们自己的属性需要配置比如我配置一个我的 ftp 的时候,我会需要配置 ftp.server.ip,user,pass...原创 2018-12-02 10:55:58 · 237 阅读 · 0 评论 -
MyBatis 插入失败后爆出 500 ,如何捕获异常?
我们在使用 Mybatis 的时候,会出现以下场景数据表里有一些字段被设置为了 不可为 null但是我们的用户在提交表单的时候没有提交所需的 字段数据然后 Mybatis 在数据库做操作的时候就出错了,然而它却直接给页面返回了一个 500当然了,我们是一定不希望用户看到 500 的那怎么办呢?当然是把这个错误给捕获了,然后把它处理掉,给用户返回提示,而不是500但是大家会发...原创 2018-12-02 10:56:08 · 8684 阅读 · 1 评论 -
Java 项目 一段时间不访问错误500,刷新一下就好了?
这是关于连接池的配置:<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="${driver}" /&原创 2018-12-02 10:56:16 · 1384 阅读 · 0 评论 -
SpringBoot AOP切面 + Redis 身份验证
一个成熟的项目中,如果有些方法是对登录身份有所限制的话,我们往往回去验证一下用户的身份,方法很简单,就是从Cookie里取出我们的身份信息,再判断是否有效我们这里使用的身份验证工具时 Redis,我们在用户登录时为用户生成一个 token,把 token 放进 Cookie 传到前端的同时也在Redis 里保存 token1.创建一个 Redis 用的属性类,如有效期,前缀等/**...原创 2018-12-02 10:56:54 · 705 阅读 · 0 评论 -
Java 使用Redis做数据缓存
我们在做后端服务的时候,要非常注重性能,比如我们一个项目,大家回频繁地打开某一个页面的时候,回频繁地去后台请求数据库访问数据,重复地查询一样的数据,这样一想,在数据库里那部分数据没有被更新的情况下还重复地去查询,是不是觉得有点浪费资源了呢?是的,那么我们就要想办法把那些不必要每次都从数据库里拿的数据(更新频率低)做缓存,不要每次访问页面都去查询一次。我们使用 Redis 来实现缓存1.引入...原创 2018-12-02 10:56:59 · 3442 阅读 · 0 评论 -
Java 使用Redis实现分布式锁
在高并发多线程的环境下,一些数据的存取操作会遇到许多的问题,导致数据污染一般的情况下我们会给我们操作数据的代码上锁,就是加个 synchronized ,这样这块代码就是同步的了,每次只能有一个线程进入那么数据自然不会被污染了但是这样的操作也是存在问题的 1.由于变成单线程,这一块业务的操作变得非常缓慢,请求多的时候等待时间特别长2.synchronized 只能在单服务器上使用,...原创 2018-12-02 10:57:18 · 316 阅读 · 0 评论 -
SpringBoot 项目中根据自定义状态吗反向查询状态详情
我们在开发中,为了保持项目运行的效率,降低数据库的冗余,往往会使用Code来代表某些信息,而不把全部的信息都存到一个表中,比如某个项目中,我们的商品有上架或者下架的状态,某个订单有新订单,已完结,已支付等状态,我们往往都会用一个数字code 来表示状态,而不是存全部,那样冗余太大。我们的状态往往都会使用一个枚举类存起来但是有时候我们需要向前端传输我们某个对象的状态的详情的时候,我们需要取出...原创 2018-12-02 10:57:29 · 407 阅读 · 0 评论 -
SpringBoot项目中统一处理异常
1.首先创建一个异常类,要继承RuntimeException/** * @author: 林之谦 * @date: 2018/7/27 * @description: */@Getterpublic class SellException extends RuntimeException { private Integer code; public Sell...原创 2018-12-02 10:57:40 · 364 阅读 · 0 评论 -
SpringBoot 项目中 标准化 Json 的返回
在项目中我们往往会规定后台向前端传输数据的格式,比如下面这个{ "code": 0, "msg": "成功", "data": { "***": "****" ... }}最外层有三个字段,code,msg,和data,全部主要数据都放进data里,这样更加的规范可控1.创建一个用于返回的类 ResultVO/** * http请求原创 2018-12-02 10:57:52 · 625 阅读 · 0 评论 -
SpringBoot 项目 MySQL 数据库连接
SpringBoot 支持很多数据库连接,这里举例使用MySQL数据库1.一般我们的数据库都会放到一个指定的服务器上,先查看服务器地址,数据库登录名和密码2.引入依赖 <!-- MySQL 依赖 必须--> <dependency> <groupId>mysql</groupId>...原创 2018-12-02 10:57:45 · 829 阅读 · 0 评论 -
Spring 中的 Token 验证
在 Java Web 工程项目中,登录等操作是非常常见的,那么登陆之后要做的第一件事就是要记住这个登录状态,那么常规且一般的操作是怎么做的呢?1.账号密码验证2.验证通过,往 session 里赛用户信息但是今天要介绍另一个高级的身份验证方法 : token那么为什么要使用 token 而不直接使用 session 呢?首先,token 相对session安全性更好,另外这种方法兼...原创 2018-12-02 10:58:16 · 1298 阅读 · 0 评论 -
Spring Boot 中的前后台数据交互方式
Java Web 项目里的前台与后台之间的交互是一个重点今天记录Spring 框架下前后台数据交互的方式1.Form 表单 + request 方式前端提交表单 <div class="container" > <form action="/admin/login" method="post"> <input type=".原创 2018-12-02 10:58:22 · 11963 阅读 · 0 评论 -
配置 maven 使项目打包的时候自动带上本地 jar 包
只需要在 maven 文件里加上这个配置就可以了 <!-- geelynote maven的核心插件之-complier插件默认只支持编译Java 1.4,因此需要加上支持高版本jre的配置,在pom.xml里面加上 增加编译插件 --> <plugin> <groupId>o...原创 2018-12-02 10:55:39 · 1497 阅读 · 0 评论