<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[WatereElement的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/WatereElement</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; WatereElement]]></copyright><item><title><![CDATA[手动处理Nginx遇到的一些问题]]></title><link>https://blog.youkuaiyun.com/WatereElement/article/details/131954988</link><guid>https://blog.youkuaiyun.com/WatereElement/article/details/131954988</guid><author>WatereElement</author><pubDate>Thu, 27 Jul 2023 11:04:56 +0800</pubDate><description><![CDATA[nginx扩展rtmp模块，以及删除了nginx文件出现的问题如何修复]]></description><category></category></item><item><title><![CDATA[docker安装使用rocketmq[最简版]]]></title><link>https://blog.youkuaiyun.com/WatereElement/article/details/131644248</link><guid>https://blog.youkuaiyun.com/WatereElement/article/details/131644248</guid><author>WatereElement</author><pubDate>Mon, 10 Jul 2023 17:33:43 +0800</pubDate><description><![CDATA[docker配置rocketmq，四行指令搞定]]></description><category></category></item><item><title><![CDATA[关于navicat连接华为云失败的处理方式]]></title><link>https://blog.youkuaiyun.com/WatereElement/article/details/131420864</link><guid>https://blog.youkuaiyun.com/WatereElement/article/details/131420864</guid><author>WatereElement</author><pubDate>Tue, 27 Jun 2023 17:01:42 +0800</pubDate><description><![CDATA[解决bavicat连接华为云失败]]></description><category></category></item><item><title><![CDATA[反射-Class对象获取方式]]></title><link>https://blog.youkuaiyun.com/WatereElement/article/details/121795368</link><guid>https://blog.youkuaiyun.com/WatereElement/article/details/121795368</guid><author>WatereElement</author><pubDate>Thu, 05 Jan 2023 10:57:36 +0800</pubDate><description><![CDATA[反射是什么?	JAVA反射机制是在运行状态中，对于任意一个类，都能知道这个类的所有属性和方法；对于任意一个对象，都能够调用它的任意一个方法和属性；这种动态获取的信息以及动态调用对象的方法的功能称为java的反射机制
要想解剖一个类，必须获取它的字节码文件对象。而解剖使用的就是Class类中的方法.所以先要获取到每一个字节码文件对应的Class类型的对象。
反射就是把java类中的各种成分映射成一个个Java对象
加载的时候，就是我们把class文件读入内存，并为之创建一个class对象
获取class对象的]]></description><category></category></item><item><title><![CDATA[Spring常用注解]]></title><link>https://blog.youkuaiyun.com/WatereElement/article/details/121796016</link><guid>https://blog.youkuaiyun.com/WatereElement/article/details/121796016</guid><author>WatereElement</author><pubDate>Wed, 08 Dec 2021 17:09:14 +0800</pubDate><description><![CDATA[1.声明bean的注解
@Component 组件，没有明确的角色
@Service 在业务逻辑层使用（service层）
@Repository 在数据访问层使用(dao层)
@Controller 在展现层使用,控制器的声明 (controller层)
2.注入bean的注解
@Autowired： 由Spring提供
@Inject:
@Resource：
都可以注解在set方法和属性上，推荐注解在属性上（一目了然，少些代码）
3.java配置类相关注解
@Configuration 声明当前类为配置]]></description><category></category></item><item><title><![CDATA[StringBuilder和StringBuffer的区别]]></title><link>https://blog.youkuaiyun.com/WatereElement/article/details/121795775</link><guid>https://blog.youkuaiyun.com/WatereElement/article/details/121795775</guid><author>WatereElement</author><pubDate>Wed, 08 Dec 2021 17:04:34 +0800</pubDate><description><![CDATA[非原创，如有侵权，联系删除
StringBuilder 和 StringBuffer的类结构

都继承了AbstractStringBuilder
区别1: 线程安全
StringBuffer是线程安全,StringBuilder线程不安全.
StringBuffer所有公开方法都用syncronized修饰,StringBuilder没有
StringBuffer代码片段:
@Override
public synchronized StringBuffer append(String str) {
  ]]></description><category></category></item><item><title><![CDATA[创建对象的4种方式]]></title><link>https://blog.youkuaiyun.com/WatereElement/article/details/121795429</link><guid>https://blog.youkuaiyun.com/WatereElement/article/details/121795429</guid><author>WatereElement</author><pubDate>Wed, 08 Dec 2021 16:53:07 +0800</pubDate><description><![CDATA[1.直接New对象：依赖太强
Employee emp1 = new Employee();

2.反射机制创建对象
Employee emp2 = (Employee)Class.forName(“org.programming.mitra.exercises.Employee”).newInstance();
Employee emp3 = Employee.Class.newInstance();

3.Clone方式
无论何时我们调用一个对象的clone方法，jvm就会创建一个新的对象，将前面对象的]]></description><category></category></item><item><title><![CDATA[Java锁升级]]></title><link>https://blog.youkuaiyun.com/WatereElement/article/details/121794242</link><guid>https://blog.youkuaiyun.com/WatereElement/article/details/121794242</guid><author>WatereElement</author><pubDate>Wed, 08 Dec 2021 16:23:10 +0800</pubDate><description><![CDATA[非原创，忘记原文链接，如有侵权请联系
对象大致可以分为3个部分：对象头，实例变量和填充字节
对象头：主要由MarkWork和Klass Point（类型指针）组成，其中Klass Point是是对象指向它的类元数据的指针，虚拟机通过这个指针来确定这个对象是哪个类的实例，Mark Word用于存储对象自身的运行时数据。如果对象是数组对象，那么对象头占用3个字宽（Word），如果对象是非数组对象，那么对象头占用2个字宽。（1word = 2 Byte = 16 bit）
实例变量：存储的是对象的属性信息，包括父]]></description><category></category></item><item><title><![CDATA[手写一个单例模式]]></title><link>https://blog.youkuaiyun.com/WatereElement/article/details/121793988</link><guid>https://blog.youkuaiyun.com/WatereElement/article/details/121793988</guid><author>WatereElement</author><pubDate>Wed, 08 Dec 2021 16:14:08 +0800</pubDate><description><![CDATA[非原创，原文地址忘记了
饿汉式：
顾名思义，饿汉法是在第一次引用该类的时候就创建对象实例，而不管实际是否需要创建
public class Singleton{
	private static Singleton = new Singleton();
	private Singleton(){}
	public static getSingleton(){
		return singleton;
	}
}

这样做的好处是编写简单，但是无法做到延迟创建对象。但是我们很多时候都希望对象可以尽可能地延迟加载，从]]></description><category></category></item><item><title><![CDATA[Redis详细介绍]]></title><link>https://blog.youkuaiyun.com/WatereElement/article/details/121792069</link><guid>https://blog.youkuaiyun.com/WatereElement/article/details/121792069</guid><author>WatereElement</author><pubDate>Wed, 08 Dec 2021 15:45:46 +0800</pubDate><description><![CDATA[1.数据库类型
**关系型数据库：** 以表的形式存储数据，以键和约束的形式维护数据类型，这样的数据库就是关系型数据库
MySQL， Oracle, SQLServer, DB2
**非关系型数据库**：NoSQL: Not only SQL，比如Redis，MengoDB

为什么要有非关系型数据库？
关系型数据随着数据量的增加，用户的增加，出现了一些难以解决的问题
高并发问题： 瞬间有多个读写请求要同时操作数据库，秒杀，双11，抢票，春节摇红包
高性能问题： 从海量数据里瞬间找到并操作某一条数据，微博
]]></description><category></category></item><item><title><![CDATA[Mybatis学习之SqlMapConfig.xml]]></title><link>https://blog.youkuaiyun.com/WatereElement/article/details/107424910</link><guid>https://blog.youkuaiyun.com/WatereElement/article/details/107424910</guid><author>WatereElement</author><pubDate>Sat, 18 Jul 2020 11:15:17 +0800</pubDate><description><![CDATA[SqlMapConfig.xml中配置的内容和顺序如下：
properties（属性） ★
settings（全局配置参数）
typeAliases（类型别名） ★
typeHandlers（类型处理器）
objectFactory（对象工厂）
plugins（插件）
environments（环境集合属性对象）
environment（环境子属性对象）
transactionManager（事务管理）
dataSource（数据源）
mappers（映射器） ★
1.properties属性
可以在Sql]]></description><category></category></item><item><title><![CDATA[Java学习笔记之JS]]></title><link>https://blog.youkuaiyun.com/WatereElement/article/details/107008743</link><guid>https://blog.youkuaiyun.com/WatereElement/article/details/107008743</guid><author>WatereElement</author><pubDate>Sun, 28 Jun 2020 23:32:46 +0800</pubDate><description><![CDATA[什么是JS？
JavaScript。是web开发中不可缺少的脚本语言，不需要编译就能运行（解释型语言）。它“寄生”在html体内，随网络传输到客户端，在浏览器里运行。
JS的作用
前端开发：
HTML：负责页面的显示
CSS: 负责显示的效果
JS： 让页面跟用户交互
和用户交互，实现页面的动态效果
-	操作浏览器：用户做某些操作，让js操作浏览器 前进一步，退后一步，弹窗，刷新页面等
- 操作网页： 用户做某些操作，让js操作网页，操作网页样式，操作标签内容，操作属性
js的组成
网景 NetScape ]]></description><category></category></item><item><title><![CDATA[JavaSE学习之IO流]]></title><link>https://blog.youkuaiyun.com/WatereElement/article/details/106875913</link><guid>https://blog.youkuaiyun.com/WatereElement/article/details/106875913</guid><author>WatereElement</author><pubDate>Sat, 20 Jun 2020 18:57:34 +0800</pubDate><description><![CDATA[JavaSE学习之IO流
一. IO流

IO流的作用： 用来完成数据的传输
IO流的分类：
按照流向分类： 输入流，输出流
按照操作数据的类型： 字节流，字符流
IO流学习的前提：
1.所有文件都是以字节的形式存在的，它们的最小存储单元都是字节
2.输入和输出： 我们站在内存的角度去考虑输入和输出
二.字节流
1.字节输入流
FileInputStream
构造方法：
FileInputStream(File file)  FileInputStream(String name)
如果关联的文件不存在的话]]></description><category></category></item></channel></rss>