<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qq_44865310的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_44865310</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_44865310]]></copyright><item><title><![CDATA[@PostConstruct 注解]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/138268491</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/138268491</guid><author>qq_44865310</author><pubDate>Sun, 28 Apr 2024 09:48:24 +0800</pubDate><description><![CDATA[在上述示例中，DbInit 类在初始化时会自动执行 postConstruct() 方法，以创建默认用户。上述示例首先初始化了 UserRepository，然后运行了 @PostConstruct 方法。]]></description><category></category></item><item><title><![CDATA[kafka下载与安装教程]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/138164246</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/138164246</guid><author>qq_44865310</author><pubDate>Wed, 24 Apr 2024 17:08:00 +0800</pubDate><description><![CDATA[很不错的教程！！！！推荐。]]></description><category></category></item><item><title><![CDATA[CentOS虚拟机安装brew]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/138089790</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/138089790</guid><author>qq_44865310</author><pubDate>Mon, 22 Apr 2024 19:59:40 +0800</pubDate><description><![CDATA[【代码】CentOS安装brew。]]></description><category></category></item><item><title><![CDATA[AtomicInteger]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/137828800</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/137828800</guid><author>qq_44865310</author><pubDate>Tue, 16 Apr 2024 16:03:22 +0800</pubDate><description><![CDATA[incrementAndGet(): 原子地将当前值加1并返回新值。decrementAndGet(): 原子地将当前值减1并返回新值。的方式来操作整数值，确保在多线程环境下对整数进行原子性更新。set(int newValue): 设置新的整数值。get(): 获取当前值。]]></description><category></category></item><item><title><![CDATA[@GetMapping注解]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/137774792</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/137774792</guid><author>qq_44865310</author><pubDate>Mon, 15 Apr 2024 11:40:11 +0800</pubDate><description><![CDATA[在上面的示例中，@GetMapping(“/users”)将处理对/users路径的GET请求，并调用getAll()方法来获取所有用户的列表。如果请求成功，将返回一个包含用户列表的HTTP响应。我们可以使用@GetMapping将特定的URI映射到控制器方法。@DeleteMapping：处理HTTP DELETE请求。@PatchMapping：处理HTTP PATCH请求。@PostMapping：处理HTTP POST请求。@PutMapping：处理HTTP PUT请求。]]></description><category></category></item><item><title><![CDATA[Assert断言]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/137773734</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/137773734</guid><author>qq_44865310</author><pubDate>Mon, 15 Apr 2024 11:17:31 +0800</pubDate><description><![CDATA[总之，assert 关键字是一种用于验证假设的强有力工具，但在生产环境中不应过度使用。在开发和调试阶段，我们可以使用断言来检查某些条件是否满足，以确保程序的正确性。assert 关键字后面跟着一个布尔表达式，通常是一个条件判断。如果有人传入负数，程序会抛出异常并显示错误消息。在这个例子中，我们使用。]]></description><category></category></item><item><title><![CDATA[volatile 关键字]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/137773199</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/137773199</guid><author>qq_44865310</author><pubDate>Mon, 15 Apr 2024 11:06:48 +0800</pubDate><description><![CDATA[当使用 volatile 声明的变量的值时，系统总是重新从它所在的内存读取数据，即使前面的指令刚刚从该处读取过数据。如果使用 volatile 声明，每次访问 i 都会从内存中读取最新的值，而不是使用已经存在寄存器中的值。在多线程并发访问共享变量时，使用 volatile 可以确保对变量的修改对其他线程可见。避免了编译器对访问该变量的代码进行优化，确保对特殊地址的稳定访问。例如，如果一个线程改变了变量的值，其他线程可以立即看到这个变化。volatile 关键字的本意是“易变的”。]]></description><category></category></item><item><title><![CDATA[详细解释一下 @Autowired 和 @Resource 这两个注解之间的区别]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/137772638</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/137772638</guid><author>qq_44865310</author><pubDate>Mon, 15 Apr 2024 10:57:58 +0800</pubDate><description><![CDATA[Autowired 是 Spring Framework 提供的注解，用于自动装配（自动注入）依赖关系。如果有多个相同类型的 Bean，可以使用 @Qualifier 来指定具体的 Bean 名称。@Resource 是 JSR-250 规范中的注解，也被包含在 Jakarta EE 中。如果有多个相同类型的 Bean，可以使用 name 属性来指定具体的 Bean 名称。主要用于将 Spring 容器中的 Bean 注入到其他 Bean 中。属于 Spring 特定的注解。属于 Java 标准的注解。]]></description><category></category></item><item><title><![CDATA[神奇工具箱(QuickTools)]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/137566313</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/137566313</guid><author>qq_44865310</author><pubDate>Tue, 09 Apr 2024 20:28:45 +0800</pubDate><description><![CDATA[https://tool.hhui.top/#qrcode]]></description><category></category></item><item><title><![CDATA[windows安装npm教程--nodejs]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/137545254</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/137545254</guid><author>qq_44865310</author><pubDate>Tue, 09 Apr 2024 11:41:15 +0800</pubDate><description><![CDATA[https://www.cnblogs.com/jianguo221/p/11487532.html]]></description><category></category></item><item><title><![CDATA[@Repository注解]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/137523819</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/137523819</guid><author>qq_44865310</author><pubDate>Mon, 08 Apr 2024 21:15:28 +0800</pubDate><description><![CDATA[详细了解一下它的作用和用法：@Repository 用于指示一个类提供了对对象进行存储、检索、更新、删除和搜索操作的机制。尽管它是 @Component 注解的一种特殊形式，但 Spring Repository 类会通过类路径扫描自动被 Spring 框架检测到。与 DAO 模式的关系：@Repository 注解的作用类似于 DAO 模式，其中 DAO 类负责在数据库表上提供 CRUD 操作。它帮助封装了对数据库的访问，使得持久层的接口能够提供对数据的增删改查操作。]]></description><category></category></item><item><title><![CDATA[@Resource 和 @Autowired区别]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/137523635</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/137523635</guid><author>qq_44865310</author><pubDate>Mon, 08 Apr 2024 20:58:22 +0800</pubDate><description><![CDATA[Autowired来自Spring框架，而@Resource来自Java的JSR-250规范。@Autowired只支持设置一个参数，即required，表示是否必须注入，默认为true。因此，@Autowired是Spring特定的，而@Resource是Java标准的。@Resource首先根据名称，然后根据类型进行查找，如果名称匹配到了，就忽略类型。@Resource支持设置七个参数，其中最重要的是name和type。@Autowired首先根据类型，然后根据名称进行查找。]]></description><category></category></item><item><title><![CDATA[浅谈一下Java的Serializable 接口（序列化与反序列化）]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/137521942</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/137521942</guid><author>qq_44865310</author><pubDate>Mon, 08 Apr 2024 20:32:09 +0800</pubDate><description><![CDATA[所以Serializable 接口就相当于序列化的**钥匙**！打开序列化的大门！！！！]]></description><category></category></item><item><title><![CDATA[SpringBoot项目整合MyBatis-plus]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/137521320</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/137521320</guid><author>qq_44865310</author><pubDate>Mon, 08 Apr 2024 19:43:21 +0800</pubDate><description><![CDATA[【代码】SpringBoot项目整合MyBatis-plus。]]></description><category></category></item><item><title><![CDATA[AOP的简单使用]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/137517322</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/137517322</guid><author>qq_44865310</author><pubDate>Mon, 08 Apr 2024 17:37:59 +0800</pubDate><description><![CDATA[第五步：执行结果：可以看到日志打印了入参、出参和执行时间。第四步：使用：只需要在接口上加上自定义注解。]]></description><category></category></item><item><title><![CDATA[AOP 的相关术语]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/137514771</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/137514771</guid><author>qq_44865310</author><pubDate>Mon, 08 Apr 2024 16:41:46 +0800</pubDate><description><![CDATA[3)通知(Advice)，切面必须要完成的各个具体工作，比如日志切面需要记录接口调用前后的时长，就需要在调用接口前后记录时间，再取差值。来看下面这幅图，这是一个AOP的模型图，就是在某些方法执行前后执行一些通用的操作，并且这些操作不会影响程序本身的运行。5)切点(Pointcut)，通知功能被应用的范围，比如日志切面的应用范围是所有controller的接口。4)连接点(JoinPoint)，通知应用的时机。2)切面(Aspect)，对横切关注点进行封装的类，每个关注点体现为一个通知方法;]]></description><category></category></item><item><title><![CDATA[自定义一个traceId生成器]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/137511695</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/137511695</guid><author>qq_44865310</author><pubDate>Mon, 08 Apr 2024 15:41:48 +0800</pubDate><description><![CDATA[其中的generate方法：]]></description><category></category></item><item><title><![CDATA[SkyWalking的traceId生成策略]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/137511022</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/137511022</guid><author>qq_44865310</author><pubDate>Mon, 08 Apr 2024 15:27:32 +0800</pubDate><description><![CDATA[SkyWalking 的 TraceId 生成是通过 GlobalIdGenerator 的 generate() 方法来实现的。TraceId 是分布式链路中的一个关键信息，它可以帮助我们定位整个链路。]]></description><category></category></item><item><title><![CDATA[API文档之Knife4j的踩坑注意事项]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/137509960</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/137509960</guid><author>qq_44865310</author><pubDate>Mon, 08 Apr 2024 15:09:07 +0800</pubDate><description><![CDATA[第二步，创建一个Java配置类(例如 Knife4JConfig.java)，并使用@EnableKnife4j注解启用Knife4j.不需要再引入Swagger所需的springfox-boot-starter了，因为Knife4的starter里面已经加入过了。或者不创建Java配置类，通过在 application.yml文件中设置属性来达到相同的目的。Knife4j完全遵循了Swagger 的使用方式，所以可以无缝切换。第一步，在pom.xml文件中添加 Knife4j的依赖。]]></description><category></category></item><item><title><![CDATA[虚拟机Centos7安装redis]]></title><link>https://blog.youkuaiyun.com/qq_44865310/article/details/137335705</link><guid>https://blog.youkuaiyun.com/qq_44865310/article/details/137335705</guid><author>qq_44865310</author><pubDate>Wed, 03 Apr 2024 10:53:18 +0800</pubDate><description><![CDATA[https://blog.youkuaiyun.com/liqtsj/article/details/134113071]]></description><category></category></item></channel></rss>