- 博客(19)
- 资源 (1)
- 收藏
- 关注
原创 logback.xml 配置
根据阿里云开发规范,日志的记录最好分成error, debug,info. 分开记录。按天生成。这样就比较方便问题定位查找。下面附上配置<?xml version="1.0" encoding="UTF-8"?><configuration> <!-- 应用名称:和统一配置中的项目代码保持一致(小写) --> <property name="APP_NAME" value="app"/> <contextName>
2022-04-12 10:43:36 1106
原创 年轻代和年老代分配过大 或 过小
我们都知道 堆内存被分为年轻代 和 年老代 ,默认比例是1:2. 年轻代占1/3.年轻代 gc使用的算法是 copy算法(速度快,但是会浪费一个survivor内存),年老代使用的是 标记整理算法(速度慢)。基于此,来了解一下年轻代和年老代分配过大 或 过小会有哪些影响。年轻代过大:1:会导致生命周期长的对象 长时间在年轻代,在s0和s1之间来回复制,增加复制开销。2:年轻代过大,那么年老大就会很小,就会频繁出发fullGC. 由于年老代使用的是标记整理算法,本来就会很慢,就导致stw的
2022-02-14 11:58:27 862
原创 分布式锁的使用
1:定义一个注解,例如:@Documented@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.METHOD)public @interface RedisLock { // 60s int timeOut() default 60;}:2:将该注解使用到需要考虑分布式的方法上3:切面/** * 环绕通知:灵活自由的在目标方法中切入代码 */@Around("aspect()")public v
2022-01-04 11:42:23 160
原创 微信开发对接
首先,本地开发调试 微信接口1: 服务器配置2:代码里必须有一个 checkSign 的get请求。(这个方法是微信自动调用的)/** * 响应get请求,微信默认token校验时使用get请求 */@GetMapping(value = "checkSign")protected void checkSign(HttpServletRequest req, HttpServletResponse resp) { //接收微信用来校验信息的内置规定参数 Stri.
2021-12-01 14:42:22 697
转载 单例设计模式
设计模式是一种思想,适合于任何一门面向对象的语言。共有23种设计模式。一、【单例模式详解】单例设计模式所解决的问题就是:保证类的对象在内存中唯一。作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类成为单例类。单例模式的特点:单例类只能有一个实例;单例类必须自己创建自己的唯一实例;单例类必须给所有其他对象提供这里实例。A、B类都...
2020-01-14 11:27:53 84
原创 java中没有引用传递验证
public class TransferParamTest { static class Demo { int a; public Demo(int a) { this.a = a; } } private static void function1(Demo d1, Demo d2) {...
2019-12-16 16:25:37 78
原创 售票系统模拟
多个线程同时抢票public class TestDemo{ @Test public void test9() throws Exception { CountDownLatch count = new CountDownLatch(1); for (int i = 0; i < 5; i++) { new T...
2019-12-16 15:11:45 284
原创 关于feign超时问题解决必杀技
1,配置中添加:feign: hystrix: enabled: false2,添加:hystrix: command: default: execution: timeout: enabled: false3,添加:ribbon: ReadTimeout: 10000 ConnectTimeo...
2019-10-16 10:59:00 352
原创 springboot 整合 aop
第一步:添加依赖 (这里我去除了spring-boot-starter-logging,因为项目中可能引入了其他日志,为了避免冲突,就直接去除了)<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop...
2019-09-23 11:12:47 107
原创 File 转 MultipartFile
File pdfFile = new File("D//pic//cat.jpg");FileInputStream fileInputStream = new FileInputStream(pdfFile);MultipartFile multipartFile = new MockMultipartFile(pdfFile.getName(), pdfFile.getName(),...
2019-08-16 15:49:46 318
原创 上万条数据的Excel导入,存库历程
1. 需求:页面上传16万条数据的excel, 后台一些过滤操作后存表 一开始我想,就用就从常用的JavaPOI导出Excel有三种形式选一个:HSSFworkbook,XSSFworkbook,SXSSFworkbook 但是 实践过程中发现,事实并不是想象的那么随意,实践结果是 这三个都不能使用HSSFworkbook ,XSSFworkbook : 太小,解析导入...
2019-06-05 16:28:45 2205
原创 设计模式五:策略模式
定义算法家族abstract class OperateStrategy { public abstract double operate(double num1,double num2) throws Exception;}加法public class OperateAdd extends OperateStrategy { @Override pub...
2019-05-09 16:40:32 90
原创 设计模式四:原型模式
参考菜鸟教程留作笔记原型模式。克隆抽象形状类@Datapublic abstract class Shape implements Cloneable { String id; String type; public abstract void draw(); @Override protected Object clone() { ...
2019-05-08 13:55:55 78
原创 设计模式三:模板模式
实例:老师黑板上抄作业,甲同学错了题,就算再聪明也答不对啊,既然题目都是一样的,就吧题目抽出来,仅提供填写答案的地方。模板方式就产生了abstract class Question { void ques1() { System.out.println("1+1 = " + answer1()); } void ques2() { S...
2019-05-08 11:38:20 55
原创 设计模式二:动态代理和静态代理
静态代理静态代理示例:接口是必须的public interface PursueAction { void giveFlowers();}代理类:(代理追求者)public class ProxyPursuer implements PursueAction{ Pursuer pursuer; public ProxyPursuer(String ...
2019-05-07 17:11:13 83
原创 设计模式 一:简单工厂模式
目标:实现一个计算器(利用封装,继承,多态的思想实现一个扩展性强的计算器) 工厂类: public class OperatorFactory { Operator operator; public Operator getOperator(String type) { switch (type) { case "+": ...
2019-05-07 11:21:16 75
原创 字节流字符流操作示例
/** * 字符流字节流 */public class StreamTest1 { @Test //字节流操作 public void test1() { try { String str1 = "D:\\pic\\a.txt"; String str2 = "D:\\pic\\b.txt"; ...
2018-07-20 11:22:24 206
原创 java发送邮件
package com.email;import javax.activation.DataHandler;import javax.activation.DataSource;import javax.activation.FileDataSource;import javax.mail.*;import javax.mail.internet.InternetAddress;i...
2018-07-19 16:20:46 139
转载 Spring date jpa 多条件查询
List<EmployeeModel> result = employeeRepository.findAll(new Specification<EmployeeModel>() {@Overridepublic Predicate toPredicate(Root<EmployeeModel> root, CriteriaQuery<?> qu...
2018-03-14 14:37:12 393
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人