<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Tang_IT的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Tang_IT</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Tang_IT]]></copyright><item><title><![CDATA[java汉字转拼音, 中转英]]></title><link>https://blog.youkuaiyun.com/Tang_IT/article/details/126376112</link><guid>https://blog.youkuaiyun.com/Tang_IT/article/details/126376112</guid><author>Tang_IT</author><pubDate>Tue, 16 Aug 2022 23:11:59 +0800</pubDate><description><![CDATA[java汉字转拼音, 中转英]]></description><category></category></item><item><title><![CDATA[SpringBoot配置异步任务(@Async)线程池]]></title><link>https://blog.youkuaiyun.com/Tang_IT/article/details/121985970</link><guid>https://blog.youkuaiyun.com/Tang_IT/article/details/121985970</guid><author>Tang_IT</author><pubDate>Thu, 16 Dec 2021 22:59:00 +0800</pubDate><description><![CDATA[1. 使用ThreadFactoryBuilder设置线程名需要引入依赖


&lt;dependency&gt;
    &lt;groupId&gt;com.google.guava&lt;/groupId&gt;
    &lt;artifactId&gt;guava&lt;/artifactId&gt;
    &lt;version&gt;31.0.1-jre&lt;/version&gt;
&lt;/dependency&gt;

2. 编写配置类


@Configuration
@Enab.]]></description><category></category></item><item><title><![CDATA[SpringBoot配置MongoDB 4.x 连接池]]></title><link>https://blog.youkuaiyun.com/Tang_IT/article/details/121865318</link><guid>https://blog.youkuaiyun.com/Tang_IT/article/details/121865318</guid><author>Tang_IT</author><pubDate>Fri, 10 Dec 2021 21:30:45 +0800</pubDate><description><![CDATA[1.编写配置类MongoConfig.java


@Configuration
public class MongoConfig {

    @Bean
    MongoClientSettings mongoClientSettings() {
        MongoClientSettings.Builder builder = MongoClientSettings.builder();
        builder.applyToConnectionPoolSettings(b -&gt]]></description><category></category></item><item><title><![CDATA[springboot禁用Tomcat的session功能]]></title><link>https://blog.youkuaiyun.com/Tang_IT/article/details/121865028</link><guid>https://blog.youkuaiyun.com/Tang_IT/article/details/121865028</guid><author>Tang_IT</author><pubDate>Fri, 10 Dec 2021 21:12:19 +0800</pubDate><description><![CDATA[第一步: 自定义session管理器


package com.zhuang.config;

import org.apache.catalina.Lifecycle;
import org.apache.catalina.LifecycleException;
import org.apache.catalina.LifecycleState;
import org.apache.catalina.Session;
import org.apache.catalina.session.ManagerB]]></description><category></category></item><item><title><![CDATA[二维数组&稀疏数组]]></title><link>https://blog.youkuaiyun.com/Tang_IT/article/details/121622393</link><guid>https://blog.youkuaiyun.com/Tang_IT/article/details/121622393</guid><author>Tang_IT</author><pubDate>Mon, 29 Nov 2021 23:39:12 +0800</pubDate><description><![CDATA[前景

模拟一个棋盘布局,初始化一个二维数组,黑子为1,白子为2,空白地方默认为0,二维数组可以理解为行和列,当初始化棋盘,初始化数据事实上均为无效数据(无落子),而稀疏数组就可以只保存有效数据,节省空间布局,稀疏数组设定3列,第一行第一列为总行数,第一行第二列为总列数,第一行第三列为有效数据个数,而后每列记录有效数据位置,即: 行 列 值
二维数组转稀疏数组思路

遍历原始二维数组,得到有效数据个数 validNumCount
	根据validNumCount 就可以创建稀疏数组 sparseArray.]]></description><category></category></item><item><title><![CDATA[java算法系列]]></title><link>https://blog.youkuaiyun.com/Tang_IT/article/details/121491234</link><guid>https://blog.youkuaiyun.com/Tang_IT/article/details/121491234</guid><author>Tang_IT</author><pubDate>Tue, 23 Nov 2021 13:35:05 +0800</pubDate><description><![CDATA[1.常见排序操作


public class SortTest {
    public static void main(String[] args) {
        int[] array = {2, 5, 1, 7, 4, 9, 3};
        insertionSort(array);
        System.out.println(Arrays.toString(array));
    }

    /**
     * 插入排序
     */
    public sta]]></description><category></category></item><item><title><![CDATA[SpringBoot整合JWT]]></title><link>https://blog.youkuaiyun.com/Tang_IT/article/details/121192057</link><guid>https://blog.youkuaiyun.com/Tang_IT/article/details/121192057</guid><author>Tang_IT</author><pubDate>Sun, 07 Nov 2021 16:01:53 +0800</pubDate><description><![CDATA[JWT简介

JWT是用于微服务之间传递用户信息的一段加密字符串,该字符串是一个JSON格式,各个微服务可以根据该JSON字符串识别用户的身份信息,这个JSON字符串可以封装用户的身份信息
	JWT的构成
	头部(Header)
		头部用于描述JWT的基本信息,指定了令牌类型和加密算法
		
		载荷(Payload)
		载荷是存放有效信息的地方
			标准注册中的声明
				iss: jwt签发者
					sub: 当前令牌的描述说明
					aud: 接收jwt的一方
					exp: jw]]></description><category></category></item><item><title><![CDATA[模板设计模式]]></title><link>https://blog.youkuaiyun.com/Tang_IT/article/details/121052192</link><guid>https://blog.youkuaiyun.com/Tang_IT/article/details/121052192</guid><author>Tang_IT</author><pubDate>Sat, 30 Oct 2021 15:58:06 +0800</pubDate><description><![CDATA[模板模式会定义通用架构,使用者只需要关心自己需要实现的功能即可,可以将固定的流程写到父类中去,不用的地方定义成抽象方法,让不用的子类去重写,这里以驾驶流程为例,代码如下:


//司机类
public abstract class Driver {
    /**
     * 驾驶流程
     */
    public void driverProcess() {
        System.out.println("开门...");
        System.out.println("点火..]]></description><category></category></item><item><title><![CDATA[MySQL实现累计计算查询操作]]></title><link>https://blog.youkuaiyun.com/Tang_IT/article/details/121004612</link><guid>https://blog.youkuaiyun.com/Tang_IT/article/details/121004612</guid><author>Tang_IT</author><pubDate>Wed, 27 Oct 2021 23:16:52 +0800</pubDate><description><![CDATA[1.数据初始化


create DATABASE sql_test;
use sql_test;
create TABLE pay (
	id int primary key auto_increment,
	date VARCHAR(255),
	pay int
);
insert into pay values (1,'2021-01-01',100),
(2,'2021-02-01',100),
(3,'2021-03-01',100),
(4,'2021-04-01',100),
(5,'2021]]></description><category></category></item><item><title><![CDATA[SpringBoot整合MongoDB]]></title><link>https://blog.youkuaiyun.com/Tang_IT/article/details/120685650</link><guid>https://blog.youkuaiyun.com/Tang_IT/article/details/120685650</guid><author>Tang_IT</author><pubDate>Sun, 10 Oct 2021 14:26:18 +0800</pubDate><description><![CDATA[什么是MongoDB?

MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供==可扩展的高性能数据存储解决方案==。 ​ MongoDB是一个介于关系数据库和非关系数据库之间的产品，是非关系数据库当中功能最丰富，最像关系数据库的。它支持的数据结构非常松散，是类似json的bson(数据类型)格式，因此可以存储比较复杂的数据类型。

MongoDB的特点

Mongo最大的特点是它支持的查询语言非常强大，其语法有点类似于面向对象的查询语言，几乎可以实现类似关系数据库单表查询]]></description><category></category></item><item><title><![CDATA[springboot整合elasticsearch7.6.2]]></title><link>https://blog.youkuaiyun.com/Tang_IT/article/details/119858789</link><guid>https://blog.youkuaiyun.com/Tang_IT/article/details/119858789</guid><author>Tang_IT</author><pubDate>Sun, 22 Aug 2021 22:19:50 +0800</pubDate><description><![CDATA[ElasticSearch核心概念

(1)索引

一个索引就是一个拥有几分相似特征的文档的集合。比如说，你可以有一个客户数据的索引，另一个产品目录的索引，还有一个订单数据的索引。一个索引由一个名字来标识（必须全部是小写字母的），并且当我们要对对应于这个索引中的文档进行索引、搜索、更新和删除的时候，都要使用到这个名字。在一个集群中，可以定义任意多的索引。

(2)类型type

在一个索引中，你可以定义一种或多种类型。一个类型是你的索引的一个逻辑上的分类/分区，其语义完全由你来定。通常，会为具有一组共同字段]]></description><category></category></item><item><title><![CDATA[springboot整合kafka]]></title><link>https://blog.youkuaiyun.com/Tang_IT/article/details/118462581</link><guid>https://blog.youkuaiyun.com/Tang_IT/article/details/118462581</guid><author>Tang_IT</author><pubDate>Sun, 04 Jul 2021 16:05:05 +0800</pubDate><description><![CDATA[简介

Apache kafka是一个分布式的发布-订阅消息系统,能够支撑海量的数据传递,在离线和实时的消息处理业务系统中,kafka都有广泛的应用,kafka将消息持久化到磁盘中,并对消息创建了备份保证数据的安全性,kafka在保证了较高处理的速度的同时,又能保证数据处理的低延迟和数据的零丢失

特性

高吞吐量,低延迟:kafka每秒可以处理几十万消息,延迟最低只有几毫秒,每个主题可以分多个分区,消费组对分区进行消费操作
	可扩展性: kafka集群支持热扩展
	持久性,可靠性: 消息被持久化到本地磁盘]]></description><category></category></item><item><title><![CDATA[springboot中@Validated注解]]></title><link>https://blog.youkuaiyun.com/Tang_IT/article/details/118424923</link><guid>https://blog.youkuaiyun.com/Tang_IT/article/details/118424923</guid><author>Tang_IT</author><pubDate>Fri, 02 Jul 2021 23:58:59 +0800</pubDate><description><![CDATA[一般@Validated注解用于数据校验
注意:使用@Email等注解爆红,原因是新版本需要引入validation启动器
&lt;dependency&gt;
     &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
     &lt;artifactId&gt;spring-boot-starter-validation&lt;/artifactId&gt;
&lt;/dependency&gt;

例如以下实体类Person
@Data
]]></description><category></category></item><item><title><![CDATA[springboot整合mybatis]]></title><link>https://blog.youkuaiyun.com/Tang_IT/article/details/117906091</link><guid>https://blog.youkuaiyun.com/Tang_IT/article/details/117906091</guid><author>Tang_IT</author><pubDate>Mon, 14 Jun 2021 16:45:30 +0800</pubDate><description><![CDATA[mybatis简介
1. mybatis是一个优秀的java轻量级持久层框架
2. 内部封装了JDBC,开发人员只需关心sql语句,而不需要处理繁琐的JDBC步骤
3. 它采用了ORM思想,解决了实体和数据库映射的问题,只要提供好sql语句,配置了映射,Mybatis会自动根据参数值动态生成sql,执行sql的结果封装好返回给我们
4. 支持xml和注解两种方式配置映射
项目总体结构如下

创建工程
1. 使用Spring Initializr方式创建

2. 选择需要的依赖项目

3. 执行sql脚本
-]]></description><category></category></item></channel></rss>