Java
文章平均质量分 78
THE ORDER
卷,学习笔记
展开
-
java 开发中遇到的bug与坑
Target(ElementType.METHOD)//注解的作用目标@Retention(RetentionPolicy.RUNTIME)//注解的生命周期//数据库操作类型 update insert其中,@Retention(RetentionPolicy.RUNTIME)//注解的生命周期,会被快捷操作为@Retention(RetentionPolicy.Class)//注解的生命周期导致注解不能被正确加载识别。原创 2023-09-17 17:54:27 · 348 阅读 · 0 评论 -
12 RestTemplate采集股票数据存在的问题
1.http是建立在TCP之上的,每次TCP连接都要经过三次握手,非常耗时;2.当我们通过http发送请求时,如果每次http都要创建一个TCP连接资源,会造成TCP连接频繁的重建与销毁,会造成极大的资源浪费;3.http连接池可用于缓存TCP连接和请求前的公共数据,如认证证书过程(认证token)等;Data;import org/*** @Description 定义封装http连接池常规参数的配置实体类。原创 2023-09-16 13:37:10 · 1121 阅读 · 0 评论 -
11 java线程池的拒绝策略
阿里规范中对于线程、线程池的规定《阿里巴巴 Java开发手册》1.6并发处理第3条规定:线程资源必须通过线程池提供,不允许在应用中自行显式创建线程第4条规定:线程池不允许使用Executors创建,而是通过ThreadPoolExecutor的方式创建,这样的处理方式能让编写代码的攻城狮更加明确线程池的运行规则,规避资源耗尽(OOM)的风险之所以会出现这样的规范,是因为jdk已经封装好的线程池存在潜在风险:FixedThreadPool 和 SingleThreadPool:允许的请求队列长度为 Inte原创 2023-09-16 13:30:54 · 58 阅读 · 0 评论 -
10 为什么要使用线程池以及线程池参数设置技巧原则
1 corePoolSize:核心线程1.核心线程会一直存活,及时没有任务需要执行2.当线程数小于核心线程数时,即使有线程空闲,线程池也会优先创建新线程处理3.设置allowCoreThreadTimeout=true(默认false)时,核心线程会超时关闭2 queueCapacity:任务队列容量(阻塞队列)当核心线程数达到最大时,新任务会放在队列中排队等待执行3 maxPoolSize:最大线程数1.当线程数>=corePoolSize,且任务队列已满时。线程池会创建新线程来处理任务。原创 2023-09-16 13:24:25 · 89 阅读 · 0 评论 -
9 sharding-jdbc实现按年分库按月分表
举个例子,我们需要进行分库分表,肯定需要定义一些规则,例如select * from ips where flowtime = '20181212’查询语句,我是通过flowtime分片,且SQL语句是in或者=的查询,我就需要实现shardingjdbc提供的特定的分片算法接口,在里面通过计算出20181212具体是哪年哪月,shardingjdbc才能帮我们定位到对应的数据库。查了资料好像shardingjdbc不支持自动建库,例如我们如果按照上面一年一库的规则,我们就需要自己手动建立对应的库。原创 2023-09-16 13:10:56 · 580 阅读 · 0 评论 -
8 Sharding-JDBC解决分库分表维护数据库
1,介绍Sharding-JDBC是当当网研发的开源分布式数据库中间件,从 3.0 开始Sharding-JDBC被包含在 Sharding-Sphere中,之后该项目进入进入Apache孵化器,4.0版本之后的版本为Apache版本。ShardingSphere是一套开源的分布式数据库中间件解决方案组成的生态圈,它由Sharding-JDBC、Sharding-Proxy和Sharding-Sidecar(计划中)这3款相互独立的产品组成。原创 2023-09-16 12:32:41 · 126 阅读 · 0 评论 -
8 centos7 设置mysql表名不区分大小写
如果在lower_case_table_names=0情况下已经导入了大量的表和数据,表名有大写,有小写,此时再换成lower_case_table_names=1会出错。谈谈遇到一个坑,安装了mysql后,然后导入表,查询的时候表要区分大小写,所以设置数据库不区分大小写,2、在[mysqld]节点下,加入一行: lower_case_table_names=1。全部改名之后,再设置lower_case_table_names=1,重启MySQL。其中0:区分大小写,1:不区分大小写。原创 2023-09-16 10:31:24 · 174 阅读 · 0 评论 -
7 Java 正则表达式
正则表达式定义了字符串的模式。正则表达式可以用来搜索、编辑或处理文本。正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别。原创 2023-09-15 10:18:56 · 36 阅读 · 0 评论 -
6 字段转换case when与CDATA
【代码】6 字段转换case when与CDATA。原创 2023-09-14 09:27:52 · 112 阅读 · 0 评论 -
5 SpringMVC中@PathVariable与@PathParam讲解
后端如何获取前端传的参数传统来讲,肯定是两种方式为主,一种是 GET ,一种是 POST ,这两种方式都是向一个 URL 传参 GET 方式体现到了地址栏里,POST 方式将内容放在了 body 里@RequestParam 和 @PathVariable 注解是用于从 request 中接收请求的,两个都可以接收参数,关键点不同的是@RequestParam 是从 request 里面拿取值,而 @PathVariable 是从一个URI模板里面来填充。原创 2023-09-12 18:22:38 · 362 阅读 · 0 评论 -
4 雪花算法(SnowFlake)Java实现
分布式id生成算法的有很多种,Twitter的SnowFlake就是其中经典的一种。原创 2023-09-12 09:44:10 · 76 阅读 · 0 评论 -
3 工具类与数据传输介绍
1.工具类层2.数据层。原创 2023-09-12 09:35:33 · 37 阅读 · 0 评论 -
mysql通过二进制日志恢复数据与数据库备份
如果没开启要先开启。原创 2023-09-10 16:01:57 · 393 阅读 · 0 评论 -
java 匿名内部类和Lambda表达式是一样的吗?
java匿名内部类和Lambda表达式是一样的吗?原创 2023-06-29 23:37:41 · 70 阅读 · 0 评论