- 博客(116)
- 收藏
- 关注
原创 使用redis的hash 实现简单的购物车功能
step1 我们先知道redis 对于hash 的常用apistep 2// 跟着上面实现一个简单的购物车package com.shopCar.controller;import com.shopCar.search.ShopCarSearch;import com.shopCar.service.ShopCarService;import org.springframework.beans.factory.annotation.Autowired;import org.spri.
2021-01-10 11:33:03
20
原创 将domain 转成实体类的2种方案
Student student = new Student(); student.setPassword("password"); student.setUserId("userId");// BeanMap beanMap = BeanMap.create(student);// Map map = new HashMap<>();// for (Object key : beanMap.keySe...
2021-01-03 20:13:26
18
原创 利用redis 生成每日不重复id
/** * 通过Redis的自增来控制编号的自增 * @param key 区分类型的主key,日期会连在这个key后面 * @return 生成的编码 */ private String generateSn(String key){ String timeStr = DateUtil.toString(new Date(),"yyyyMMdd"); //组合出当天的Key String redisKey
2021-01-03 18:05:15
22
原创 判断字符串是否为空
/** * Description:判断字段空null <br> * * @param s * @return boolean */ public static boolean isNullOrNone(String s) { if (s == null || "".equals(s.trim())) { return true; } return fals...
2021-01-03 15:29:34
14
原创 jwt工具类
package com.yeshuinianhua.huivisionservice.wechat.utils;import io.jsonwebtoken.Claims;import io.jsonwebtoken.JwtBuilder;import io.jsonwebtoken.Jwts;import io.jsonwebtoken.SignatureAlgorithm;import org.apache.commons.codec.binary.Base64;import com.ye
2020-12-23 07:08:02
56
原创 json工具类
package com.yeshuinianhua.huivisionservice.common.utils;import com.fasterxml.jackson.annotation.JsonInclude;import com.fasterxml.jackson.annotation.JsonInclude.Include;import com.fasterxml.jackson.core.JsonProcessingException;import com.fasterxml.jack
2020-12-21 22:08:40
12
原创 jwt学习笔记
1.什么是token 先抛个场景 比访问现在在外地,我朋友想要进我家 给我要我家的密码, 我用手机生成一个2小时的密码给他,也就是说此时他用这个密码就可以进入我家 并且只是在2个小时有效token就相当于这个密码,临时且具有唯一性,具有有效期,保证不重复2.后台java代码怎么生成token,并且具备这些条件可以采用uuid 生成token 通过redis实现比如如说现在生成这个token[uuid生成]作为RedisKey 放入redis中 redis为key作为有效期只要redis查不到
2020-12-20 00:07:48
24
1
原创 Spring 自带的md5加密工具类
//导入包import org.springframework.util.DigestUtils;//对密码进行 md5 加密String md5Password = DigestUtils.md5DigestAsHex(user.getPassword().getBytes());
2020-12-19 10:16:06
11
1
原创 数组转集合之 Arrays.asList()的坑
业务场景下我们通常用到 Arrays.asList() 将数组转成集合但是 这个api有点问题看用了Arrays.asList(string);之后的List就是个定长List了 不能add了 还是Stream流 比较靠谱些
2020-12-18 06:48:24
55
原创 如何获取集合得交,并, 补
前段时间写 removeall . retainall addall 这些api 感觉不是很实用 还是流靠谱点https://blog.csdn.net/weixin_38256991/article/details/81672235
2020-12-16 23:23:17
4
原创 检验是否是json数据
/** * 校验是否为JSON * * @param msg * @return */ public static Boolean isJsonObject(String msg) { try { JSONObject.parseObject(msg); } catch (Exception e) { return false; } ...
2020-12-15 06:30:15
58
原创 tomcat中请求和响应分析的源码
题记最近我有点忙 就没有总结 以及回顾 总结自己的不足 然后来改善自己的缺点上次我也说了浏览器通过tcp 连接,然后发送http请求,也就是说发送数据 吧这些数据(行,头,体) 通过socket连接发送到服务器呢么首先第一点 socket连接肯定是基于操作系统层面的,我们浏览器发送过来的数据肯定是先放到操作系统的receiveBuffer中的,每一个socket都有这么一个buffer, 里面存的就是通过这个socket连接发送的数据然后你tomcat 在使用的时候就从这个receiveb
2020-12-13 11:34:57
12
原创 最近的我有点忙--------集合的交并补差
Set<String> set1 = new TreeSet<>(); Set<String> set2 = new TreeSet<>(); set1.add("user_1"); set1.add("user_2"); set1.add("user"); set2.add("user"); set2.add("user_A"); set2.ad
2020-12-11 22:36:53
7
原创 java 工具类---10 个牛逼的单行代码编程技巧,你会用吗?
https://mp.weixin.qq.com/s?__biz=MzI1NTI3MzEwMg==&mid=2247496752&idx=1&sn=df330f27d164ed2bbb4b05dc95b4484d&chksm=ea3ac5d1dd4d4cc7cefbfbbfaa36ab1cca8387d6097c8238cb1775b89707d2ccce29214550e2&mpshare=1&scene=1&srcid=12019wD7BxMaVF
2020-12-04 07:30:03
73
原创 Stream工具类
https://mp.weixin.qq.com/s?__biz=MzU4MDUyMDQyNQ==&mid=2247489747&idx=2&sn=5c5aacef6d3344fc43202ede97adba2b&chksm=fd54c855ca234143d8387150ce033268ab21cadfbd16f682bb15318e250015db162320faeb62&mpshare=1&scene=1&srcid=1124WNSGnKu2Ce
2020-12-04 07:28:00
46
原创 java 反射工具类
利用反射给实体类的某些字段赋默认值, 比方说导出 如果从数据库中查询出来为null 的话 可以吧null 改成"" 默认字符串sql中数字类型DECIMAL和NUMERIC在java中可以用BigDecimal类型接收 也可以用double接受 private void setFeidValueNotNull (Object obj) throws Exception{ for (Field field: obj.getClass().getDeclaredFields())
2020-12-04 06:54:55
20
原创 java生成订单号思路
业务场景 比如说我们在秒杀中需要按天生成的订单号 但是此时只是生成这个订单号不需要做到将订单号入库 可以采用redis 实现 @Override public String createOrderNo() { try { //默认1500,redis分布式基于不同的业务进行加锁 boolean islock = cacheImpl.lock(ConstantKeyConstant.REDIS_LOCK_ORDER + bus
2020-12-04 06:44:04
52
原创 tomcat中的长连接<4>
tomcat中的长连接 我也说了就是请求和响应中带有 Connection:keep-alive属性 就是说 要基于第一次的tc p 或者说socket连接再读数据,现在我们做一个Demo就是说我们此时设置一个maxKeepAliveRequests=1 让一个tcp 连接上处理一个http请求【表示当前这个socket连接上面能够处理的请求数】然后我在每接受一个socket连后 我打印一句话此时发了8个请求 收到了8个socket连接,每接受一个http请求 ,tomcat就吧.
2020-11-22 11:58:12
23
原创 JSON中toJSONString、ParseObject、parseArray的作用以及用 com.alibaba.fast.JSONArray解析字符串或者List集合
https://blog.csdn.net/hukehukehukehuke/article/details/106198340看大佬csdn
2020-11-19 00:02:16
8
原创 Springboot-web包下都包括了什么
1.和前端交互 必然解析json 2. tomcat3. 验证 @Vaild4. web5. webmvc --->aop
2020-11-18 23:48:58
31
原创 字符串,JSONObject , JSONArray三者之间互转-----fastJson总结
将符合json格式的字符串转为json对象并分别取出里面的数据。/* * 将符合json格式的字符串转为json对象并分别取出里面的数据。 * 引入json jar包时,请引入"import net.sf.json.JSONObject" */ public static void main(String[] args) { //模拟获取到的符合json格式的字符串{"data":{"pow":100,"net":99,"dev":69},"success":tru
2020-11-18 23:31:30
15
原创 Spring-mybatis中的 sqlsessionTemplate 如何处理封装的处理Sql
/** * 防止sql注入 改造成直接用prepareStatement 预处理sql * * @param sql * @param params * @return */ @Override public List<Map<String, Object>> executeSql(String sql, Object[] params) { log.debug("----【querySer.
2020-11-18 22:49:17
14
原创 互联网架构中的oauth2.0协议
tomcat中关于长连接的底层原理和源码实现上节我说了 我们的tomcat会通过不同的io模型也就是说endPoint 从我们的socket中取数据,拿到数据之后 tomcat 会根据http协议来解析数据 之后封装成request对象最终吧这个request对象一层一层的经过一层一层的容器交给servlet这节我讲下tomcat中关于长连接的底层原理和源码实现1.先抛个问题 对于长连接怎么理解的,比方说http1.1 默认的就是长连接如果一个Http请求 他的请求头里面有 Connec
2020-11-18 10:31:52
11
原创 mybatis是如何处理If标签的
tmpSql = oSql.substring(oSql.indexOf("<if")) + "</if>";Element root = DocumentHelper.parseText(tmpSql).getRootElement();String condition = root.attribute("test").getValue();Object condObj = Ognl.parseExpression(condition);Object value = Ogn
2020-11-14 21:38:14
8
原创 学会查看springboot默认jar中的东西
在springboot项目中 导入dom4j的jar 他就会默认显示版本 呢么问题来了 此时的版本是谁规定的 springboot中设置的
2020-11-14 16:53:11
11
原创 String字符串得截取substring 操作
public static void main(String[] args) { String x="abcdefg"; System.out.println(x.length()); // 0到3号位置 String zero = x.substring(0, 3); // 3号位置以后默认所有 String one = x.substring(3); //3号位置以后,可以写 x.lengt.
2020-11-13 21:59:36
35
2
原创 随想
1.关于代码层面,或者说关于技术层面, 我不会,我可以问,多思考 。多实战但是 每天一定要做到的就是 1。github看开源项目 2. 框架源码 3.跑步 -------------11.10以后争取做到每个礼拜做一次小结吧 4. 时间 1点 开源项目 我们要学习什么 1.>项目分模块 模块分接口 1.他这个项目分了几个模块 每个模块的都是什么 2.比方说用户模块 这个模块分了几个接口,接口和接口的调用逻辑 3. 每个接口的入参和出参数 --------
2020-11-10 23:31:43
12
原创 tomcat架构解析<2>
下一步 此时会创建一个过滤器链,这个过滤器链就是我们假如要定义一个Filter此时需要执行的逻辑 //...执行servlet之前[pre] filterChain.dofiter()// 在执行这个过滤器链子过程钟 我可能会执行servlet //..执行servlet之后[after] 类似于这样,也就是说一个请求,被tomcat接受后 先执行fitler的pre方法 再执行 filterChain.dofiter() 这个方法 ,在这个中间就会执行servlet,然后.
2020-11-10 16:00:39
15
2
转载 fastjson(九)JSONPath 的使用(一)
https://blog.csdn.net/liupeifeng3514/article/details/79180154?utm_source=blogxgwz9&utm_medium=distribute.pc_relevant.none-task-blog-title-3&spm=1001.2101.3001.4242
2020-11-08 15:34:12
8
1
原创 json 的fastjson解答以及正则详解
JSONObject templateParams = templateObj.getJSONObject("PARAM"); 1.jsonObject是一个 类似于HashMap的结构
2020-11-07 16:42:26
22
3
原创 tomcat架构解析<1>
是的 ,最近有点忙 很长时间不看源码了今天讲下 tomcat的整体架构和处理流程解析,我们都知道tomcat是一个servlet容器, 呢么问题来了,为什么要说tomcat是一个servlet容器我先写一个简单的servlet...
2020-11-06 17:51:45
30
2
原创 get 请求的标准写法
public static Map<String, String> getParameterStringMap(HttpServletRequest request) { Map<String, String[]> properties = request.getParameterMap();//把请求参数封装到Map<String, String[]>中 Map<String, String> returnMap = new HashMap&
2020-10-23 21:20:51
96
原创 关于Springboot中Spring-jdbc 的剔除
抛个问题 当项目中出现很明显是关于JDBC的配置没有配置 比如说url. password呢么 如何解决呢1.老老实实吧这个url 什么的配置配上吧2。如果我们不想配置这个url 可以这么做 在启动类上添加这么一句话 排除这个数据源的自动装配2。 删除相关jdbc的依赖 通常情况下是Spring-jdbc此时项目完美启动-------------------------------------------------------------->还有一个jar
2020-10-18 13:14:59
65
3
原创 论Springboot下如何进行包扫描
@SpringBootApplication(scanBasePackages = { "com.lvhao.util", "com.lvhao.api"})//@ComponentScan(basePackages = { "com.lvhao.util", "com.lvhao.api"})两者取其中一个就可以 针对于引用其他jar的情况下
2020-10-14 21:28:52
69
2
原创 Class的isAssignableFrom的用法------>判断2个类是否继承关系[实现]
难用的isAssignableFrom,今天要判断两个类是不是存在父子关系,首先我们会想到用instanceof去判断,但是有可能是两个接口去比较,我们用instanceof肯定不行了。后来想到了可爱的Class对象,它里面提供了一些我们很常见的功能,我的代码是这么写的:public class AssingableTest { public static void main(String[] args) { Class<?> parent = java.
2020-10-13 22:52:08
44
4
原创 关于Springcloud的resttemplate和openFeign区别
resttemplate 如果写服务名 会走注册中心 的 但是如果写具体的服务地址 他不会走注册中心https://blog.csdn.net/u012702547/article/details/77917939 参照大佬csdn
2020-10-11 22:45:30
108
原创 Eureka的自我保护机制
Tips:生产环境中不建议关闭 Eureka 的自我保护模式 什么是保护模式 保护模式,主要用于一组客户端 和 Eureka Server 之间存在网络分区场景下的保护。一旦进入保护模式,Eureka Server 将会尝试保护其服务注册表中的信息,不再删除服务注册表中的数据,也就是不会注销任何微服务实例。 当我们在 E...
2020-10-11 21:10:52
18
3
空空如也
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人 TA的粉丝