- 博客(31)
- 收藏
- 关注
原创 从CAP角度区分Zookeeper、Eureka、Consul和Nacos
在微服务架构中,服务与服务之间存在着相互调用,比如A服务要调用B服务,但是如何拿到B服务的入口呢?这就用到注册中心了,B服务将自己的实例信息注册到注册中心上,然后服务A就去注册中心上获取服务B的信息,就可以调用了。
2023-03-16 17:21:21
511
原创 Dubbo调用之MultipartFile无法序列化问题
Dubbo调用传输的必须是序列化(implements Serializable)的,MultipartFile类型无法序列化,所以报错。
2023-02-27 17:34:52
1058
转载 一篇带你读懂【单例模式】
在程序中多次使用同一个对象且作用相同时,为了防止频繁创建对象使内存飙升,单例模式让程序在内存中只创建一个对象,让所用需要调用的地方共享这一单例对象
2023-02-15 14:04:34
181
原创 多线程中,run方法报错是否会影响到主线程?
在程序执行时,首先执行main主线程的同时,创建执行子线程,此时主线程与子线程同时执行,当主线程执行结束时,子线程继续执行。
2022-08-07 16:02:52
529
转载 解决gateway跨域重复CORS问题
现象:当你在配置完成跨域请求后:@Configurationpublic class GatewayCorsConfiguration { @Bean public CorsWebFilter corsWebFilter() { UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); CorsConfiguration cors...
2022-01-07 10:50:55
1398
原创 org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
Web页面报错500:org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)解决方案: 打开Project Structure 2.此时所有的jar包都到了lib下
2021-10-03 14:22:19
8166
9
原创 Servlet原理
代码案例: <!--将servlet注册到web容器中--> <servlet> <servlet-name>MyServlet_01</servlet-name> <!--全限定类名:包名+类名--> <servlet-class>com.ujiuye.servlet.MyServlet_01</servlet-class> </servlet> <!--给已注
2021-09-27 20:08:19
103
原创 接口和抽象类区别
相同: 都不能实例化。不同: 属性: 接口的属性只能被public static final修饰; 抽象类属性任意; 构造方法:接口不可定义(因为属性被final修饰属性值不可更改)抽象类可以定义。 方法: 接口只能定义抽象方法,方法默认被pu...
2021-09-13 20:35:22
73
转载 多线程间是如何共享数据的?
说明:Java里面进行多线程通信的主要方式是:共享内存。共享内存主要的关注点有两个:可见性和有序性原子性。 JVM解决了可见性和有序性问题,锁解决了原子性问题。理想情况下我们希望做到“同步”和“互斥”:实现方法如下1.将共享的数据抽象成一个类,并将数据的操作作为这个类的方法。 优点:这种设计容易做到同步,只要在方法上用“synchronized”修饰即可。MyData.java(数据类)public class...
2021-09-10 19:28:32
1206
3
原创 HashSet存储自定义类型元素去重原理
HashSet是用Hash算法实现存取对象,所以每个对象都有自己的hashCode; 1.当存储自定义类型元素时,在类中必须重写hashCode()和equals()方法:将hashCode()方法重写为属性相同的对象值返回值一样,属性不同的返回值不一样; 将equals()方法重写为属性相同时返回true,属性不同时返回false。 2.存取对象时,HashSet会调用对象的hashCode来比较Se...
2021-09-10 16:02:03
492
原创 Set集合中TreeSet的有序问题
众所周知,在集合中,Set集合是无序、无索引、不可重复的,但其中有一个子类是有序的,那就是TreeSet,TreeSet的底层使用的是TreeMap实现。代码案例:import java.util.Set;import java.util.TreeSet;public class Test { public static void main(String[] args) { Set<Person> set = new Tr...
2021-09-10 15:53:03
860
原创 String与StringBuilder的传参问题
问题:众所周知,如果传递的是一个引用类型,传递的是引用地址,而不是对象本身,所以方法对这个引用修改,会影响原值。 String是一个引用类型,但是将它传递给方法后,原值并没有受到影响。public class Test02 { public static void main(String[] args) { String str = "abc"; change(str); System.out.println...
2021-09-09 19:54:05
392
原创 多线程-守护线程Daemon的结果输出问题
代码案例:package com.study.enety.demo41;import java.io.*;public class Test02 { public static void main(String[] args) { Thread t1 = new Thread() { public void run() { while (true) { System.out.
2021-09-08 16:13:42
93
原创 多线程下执行的printStackTrace()
代码案例:package com.study.enety.demo40;import java.util.Scanner;public class Test03 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); //如果输入的除数为0,则抛出异常 try { int x = sc.nextInt();
2021-09-08 10:02:26
222
原创 NumberFormat
概述:所有数据格式的抽象基类,用于格式化和解析任何语言环境的数值。特点:1.java.text包。2.该类时抽象类,不能创建对象。3.提供了表示数字的不同格式。创建解析格式对象方法:1、public static final NumberFormat getInstance():返回当前默认环境的通用数值格式2、public static final NumberFormat ...
2021-08-30 19:02:13
104
原创 集合-Comparator和Comparable比较器使用
说明: 1.Comparator和Comparable都是用来比较数据的接口。 2.排序方式相同。方法: compare(Object o1, Object o2) o1:集合中的数据,o2:即将添加的数据。 compareTo(Person p) 返回值为0,添加的元素重复,去重。 返回值为-1,添加的元素比较大,放在右子树。...
2021-08-28 16:16:15
227
原创 IO-为什么InputStream的read()方法返回值为int类型
字节输入流InputStream可以读取任何类型的文件,这些文件的底层都是以二进制形式存储。如果每次读取都读取到byte,有可能在读取中途遇到11111111,那么11111111在byte类型中表示-1,程序在遇到-1就会停止不读了,后面的数据就读不到了,所以读取的时候用int类型接收,在每个字节前补24个0,凑够4个字节(一个int类型占4个字节),那么byte类型的-1就会变成int类型的255了,这样就可以保证整个数据读取完,而结束标记的-1就是int类型。...
2021-08-27 15:53:26
484
原创 JavaSE面试题-基础语法(持续更新)
1.&和&&的区别&&:逻辑与运算符左右两边的表达式都为true时,才返回true。具有短路性:如果第一个表达式值为false,则直接返回false。&:逻辑与、按位与逻辑与:不具有短路性。按位与:(常用)。2.基本类型和引用类型byte、short、int、long、float、double、char、boolean;除了基本数据数据类型,其他的都是引用类型。基本数据类型:数据直接存储在栈上。引用数据类
2021-08-23 18:58:04
198
原创 JDK动态代理解析—案例说明
ad废话少说,直接上代码!案例说明:一个卖U盘的厂家依靠中间商(代理)出售U盘。项目结构:UsbSell.javapackage com.study.service;/** * 目标接口 */public interface UsbSell { //卖U盘的方法 float sell(int amount);}UsbKingFactory.javapackage com.study.factory;import com.study.se...
2021-08-21 16:28:52
106
原创 数组—arraycopy()的用法
格式:arraycopy(要复制的数组,复制数组的起始位置,目标数组,复制的元素个数);例子:int[] a = {1,2,3,4,5,6}; int[] b = new int[4]; //将数组a从第2个索引位置开始,截取4个元素到数组b从索引为0开始的位置添加。 System.arraycopy(a, 2, b, 0, 4); System.out.print("复制的新数据: "); for (int i = 0; i < b....
2021-08-11 10:06:00
2010
原创 保存代码模板
当我们在搭建项目框架时,会用到一些配置文件(比如xml),这些配置文件中大部分是固定的,不用改动,但是每次创建后文件都是空白的,都需要手动输入或者CV,如果用IDEA中提供的代码模板功能,将会非常方便,下面以搭建Mybatis项目时创建dao接口的xml文件为例:一、打开模板文件File—>Settings—>Editor—>File and Code Templates—>Files二、创建模板文件将代码模板保存后,我们新建文件的时候就可以...
2021-07-18 12:26:46
398
原创 cmd命令开启MySQL服务发生系统错误5
问题:WIN+R,cmd——>进入cmd命令窗口,输入net start + 数据库服务名,回车后提示“发生系统错误 5”解决方法:以“管理员身份运行”在“开始菜单”搜索“cmd”,选择“以管理员身份运行”,执行以上操作即可。SUCCESS:...
2021-06-19 12:02:52
1068
1
原创 IDEA中运行Tomcat如何修改启动时的初始页面
在左边的目录结构中找到web.xml文件代码如下:<web-app> <display-name>Archetype Created Web Application</display-name> <welcome-file-list> <welcome-file>login.jsp</welcome-file> </welcome-file-list></web-app>.
2021-04-06 22:13:49
871
2
转载 EL表达式${}中不显示值
在JSP页面顶部添加<%@ page isELIgnored = "false" %>默认 忽略el表达式 。如果为true时JSP Container将忽略EL表达式。本文转自:https://blog.csdn.net/qq_40962416/article/details/89104224?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.control
2021-02-26 23:57:15
283
原创 Web项目集成Mybatis
1.根据【分层思想】创建包类分层思想(解耦:高内聚低耦合) controller层 接收请求 (调用service层,返回结果) 响应结果 service层 业务逻辑判断 mapper(dao) 接口类 mapper.xml(Mybatis与数据库的相关操作) entity(po、model) JaveBean实体 util 工具类(通用...
2021-02-17 18:27:14
1731
原创 JSP页面中引入JS文件没反应
小伙伴们在做网页开发的时候经常用到这种问题,有些是因为js文件的路径错误,如果按住ctrl能点进去文件说明路径正确,废话少说,直接上栗子。以我的代码为例<%--引入js文件--%><script type="text/javascript" src="js/login.js"></script>如果不是因为路径问题,那可以考虑一下顺序问题,代码的执行顺序是自上而下的,所以引入js文件的标签千万不能和引入jQuery一样放在head标签中,应该放在bod
2021-02-16 17:33:43
2716
原创 Mybatis进行compile编译后classes目录下缺少.xml文件的处理方式
1.先clean再compile2.Rebuild Project3.CV操作手动添加4.清理无效缓存
2021-02-07 17:29:54
235
原创 Mybatis自动提交事务
学习Mybatis的小伙伴都知道,当我们使用Mybatis将Java和数据库连接后,利用.java文件编写对数据库进行insert、delete、update操作的sql语句时,Mybatis默认不自动提交事务,数据库中的数据不会改变。所以要手动提交事务: sqlSession.commit();如果想让程序自动提交事务:将 //5.【重要】获取SqlSession对象,从SqlSessionFactory中获取SqlSession SqlSession sqlSes
2021-02-06 20:22:54
1870
1
转载 java.sql.SQLException: The server time zone value 的解决办法
上面的写法会报错,我用的是8.0.22,在新版的数据库使用的时区与本地时区有区别,标准时区使用的是Unix元年的时间为起始点到当前时间中间所做的动作。国际标准失去与本地相差 8 个小时。解决方法:在数据库名后面加 ?serverTimezone=UTCUTC必须大写---------------------作者:且听风吟WB来源:CSDN原文:https://blog.csdn.net/qq_26552071/article/details/84947287版权...
2021-02-05 23:03:55
93
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人