1.基本类型之间 先看不同类型的基本类型之间的比较: private static void test2(){ int a = 100; long b = 100L; boolean result = b == a; System.out.println(result ? "相等" : "不相等"); } 结果是: 相等 这里实际上进行了隐式类型转换,编译器将 int 类型“提升”为 long 类型后进行比较,相当于: boolean result = b == (long)a; 2.包装类…
1.基本类型之间 先看不同类型的基本类型之间的比较: private static void test2(){ int a = 100; long b = 100L; boolean result = b == a; System.out.println(result ? "相等" : "不相等"); } 结果是: 相等 这里实际上进行了隐式类型转换,编译器将 int 类型“提升”为 long 类型后进行比较,相当于: boolean result = b == (long)a; 2.包装类…
1.概念 AOP(Aspect Oriented Programming,面向切面编程)是一种编程思想。它要解决的问题是:如何在不改变代码的情况下增强代码的功能。 AOP 有一些核心概念: 连接点(JoinPoint):理论上可以是代码运行的任意位置,比如变量声明。但在 Spring AOP 的实现中,只能是方法。 切入点(Pointcut):要增强功能的地方,对应一个或多个连接点。 通知(Advice):所增强的功能会在通知中定义。 切面(Aspect):在切面中关联接入点和所执行的通知。 更详细的说明可以观看这…
本文介绍如何在 Spring 框架中整合 MyBatis 和 Junit。 1.整合 MyBatis 这里使用一个”纯 MyBatis“的示例项目,在这个项目基础上将其修改为使用 Spring 框架的版本。 关于如何创建 MyBatis 项目以及基本的使用方式,可以看这篇文章。 先下载项目代码并导入数据库sql。 1.1.添加依赖 添加 spring 框架依赖: <dependency> <groupId>org.springframework</groupId> &…
如题,通常都是直接用git clone将远程仓库拉下来搞,并没有什么难度。但如果是本地项目已经存在,就很麻烦了。 这里记录一下过程。 准备 这里已经创建了一个远程仓库: icexmoon/learn-spring (github.com) 本地也有对应的项目代码,但并没有用 Git 进行管理控制。 添加 Git 管理 需要先在项目的根目录下让项目受 Git 管理: git init 现在项目根目录下会出现一个 .git 目录,该目录存放 Git 的相关文件,这样就说明该目录已经受 Git 的版本控制管理。 添加远程…
以往都是在 Spring Boot 中整合 MyBatis 进行使用,本篇文章将展示如何在一个新的 Maven 项目中使用 MyBatis。 MyBatis 官方的入门教程可以作为本文的参考。 1.快速入门 1.1.导入表数据 执行包含测试数据的SQL文件,导入测试数据到 MySQL。 1.2.创建项目 用 Idea 创建一个 Maven 项目。 添加 MyBatis 和 MySQL 驱动依赖: <!-- MyBatis --> <dependency> <groupId>…
本文使用的示例项目是 spring-demo。 1.@Component @Component注解的用途与<bean/>标签的用途是相同的,都用于向 IoC 容器添加一个 Bean 定义。 比如: @Component public class UserDaoImpl implements UserDao { @Override public void save(){ System.out.println("UserDaoImpl.save() is called."); …
1.简介 1.1.生态和发展史 关于 Spring 的生态和发展史,可以观看这个视频。 1.2.系统架构 关于 Spring 的系统架构,可以观看这个视频。 2.Ioc Spring 的核心概念是 Ioc (Inversion Of Control),它的目的是降低代码的耦合度,让对象不再由用户创建,而是由 Ioc 容器(Ioc Container)来创建和管理。 这里用一个简单示例说明 Spring 如何通过 Ioc 思想来对对象创建进行解耦。 这个项目结构很简单: ├─src │ ├─main │ │ ├─ja…
1.初识 Sentinel 1.1雪崩问题 1.1.1什么是雪崩问题 微服务中,服务间调用关系错综复杂,一个微服务往往依赖于多个其它微服务。 如图,如果服务提供者I发生了故障,当前的应用的部分业务因为依赖于服务I,因此也会被阻塞。此时,其它不依赖于服务I的业务似乎不受影响。 但是,依赖服务I的业务请求被阻塞,用户不会得到响应,则tomcat的这个线程不会释放,于是越来越多的用户请求到来,越来越多的线程会阻塞: 服务器支持的线程和并发数有限,请求一直阻塞,会导致服务器资源耗尽,从而导致所有其它服务都不可用,那么当前服…
一、修改order-service服务 修改OrderService,让其监听Nacos中的sentinel规则配置。 具体步骤如下: 1.引入依赖 在order-service中引入sentinel监听nacos的依赖: <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-datasource-nacos</artifactId> </dependen…
1.安装Jmeter Jmeter依赖于JDK,所以必须确保当前计算机上已经安装了JDK,并且配置了环境变量。 1.1.下载 可以Apache Jmeter官网下载,地址:http://jmeter.apache.org/download_jmeter.cgi 当然,我们课前资料也提供了下载好的安装包: 1.2.解压 因为下载的是zip包,解压缩即可使用,目录结构如下: 其中的bin目录就是执行的脚本,其中包含启动脚本: 1.3.运行 双击即可运行,但是有两点注意: 启动速度比较慢,要耐心等待 启动后黑窗口不能关闭…
魔芋红茶
加一点PHP,加一点Go,加一点Python......
COPYRIGHT © 2021 icexmoon.cn. ALL RIGHTS RESERVED.
本网站由提供CDN加速/云存储服务
Theme Kratos Made By Seaton Jiang