<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[LiTangYuan的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/LiTangYuan</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; LiTangYuan]]></copyright><item><title><![CDATA[SQL修改登录密码和重置密码]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/97801132</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/97801132</guid><author>LiTangYuan</author><pubDate>Tue, 30 Jul 2019 17:26:23 +0800</pubDate><description><![CDATA[方法一：alter
先登录数据库mysql -urooot -p
先用初始密码登录进去
进入数据库执行：
alter user 'root'@'localhost' identified by '111111'     #这里把数据库登录密码改为111111

方法二：set
set password for root@localhost = password('123'); 

方法三：重置密码...]]></description><category></category></item><item><title><![CDATA[Mysql锁机制和事物实现]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/97800459</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/97800459</guid><author>LiTangYuan</author><pubDate>Tue, 30 Jul 2019 17:20:46 +0800</pubDate><description><![CDATA[什么是事物：
一个服务序列，在多个客户并发访问时候保持原子性。
事物的属性：A 、C、I、D
并发存在的问题？
脏读：现在有两个回话 ， 第一个回话begin 开启事物 然后将a = 1 修改成 a = 2 （注意这里没有commit提交事物），这时候在第二个回话中看到了 第一个回话修改的内容 a = 2。（注意是并发处理应该是有锁控制住的，但是这里没有锁住）
不可重复读：现在有两个回话，第一个回...]]></description><category></category></item><item><title><![CDATA[浅谈java中String相关问题]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/97398921</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/97398921</guid><author>LiTangYuan</author><pubDate>Fri, 26 Jul 2019 17:52:47 +0800</pubDate><description><![CDATA[1.首先我们先说一下java堆内存和栈内存
java中八个基本数据类型就是值类型，存放在栈内存中；引用类型存放在堆内存中。
2.然后我们再看一看两种不同比较字符串的方法
(1)equals比较两个String对象的值是否相等
String str1 = "hello quanjizhu";
String str2 =str1+"haha";
String str3 = new String("he...]]></description><category></category></item><item><title><![CDATA[java语言中的异常处理]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/97398689</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/97398689</guid><author>LiTangYuan</author><pubDate>Fri, 26 Jul 2019 17:48:13 +0800</pubDate><description><![CDATA[异常的概念：java程序在编译或运行过程出现的意外情况。
类型转换异常
数组越界异常
空指针异常
算术运算异常…
Throwable–Error
–Exception:
1.编译器异常Exception：
日期类型转换异常，文件找不到异常
转换异常：ParseException
文件找不到异常：FileNotFoundException
2.运行时异常RuntimeException：程序运行时出...]]></description><category></category></item><item><title><![CDATA[Java实现回文判断]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/97398458</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/97398458</guid><author>LiTangYuan</author><pubDate>Fri, 26 Jul 2019 17:44:37 +0800</pubDate><description><![CDATA[1 问题描述
给定一个字符串，如何判断这个字符串是否是回文串？
所谓回文串，是指正读和反读都一样的字符串，如madam、我爱我等。
2 解决方案
解决上述问题，有两种方法可供参考：
（1）从字符串两头往中间扫；
（2）从字符串中间往两头扫。
具体代码如下：
package com.liuzhen.string_1;
import java.util.Scanner;
public class St...]]></description><category></category></item><item><title><![CDATA[Redis扩展 - 分布式锁与过期策略]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/97017253</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/97017253</guid><author>LiTangYuan</author><pubDate>Tue, 23 Jul 2019 18:12:15 +0800</pubDate><description><![CDATA[一、分布锁
1、setnx 和 expire 组合在一起的原子指令来解决分布式锁，但这种方式是有缺陷的，不太安全的，例如Sentinel集群,当客户端向主节点申请分布式锁成功后，主节点还没来及向从节点同步时，主节点挂掉了，主从切换，某个从节点摇身一变成为主节点，第二个用户再次申请锁，是可以成功的，这样俩个用户成功申请到了2把锁，不安全因素产生了，解决该方案是通过Redlock算法。
2、如果要使用...]]></description><category></category></item><item><title><![CDATA[MySql锁机制和事物实现]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/97016785</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/97016785</guid><author>LiTangYuan</author><pubDate>Tue, 23 Jul 2019 18:07:32 +0800</pubDate><description><![CDATA[什么是事物：
一个服务序列，在多个客户并发访问时候保持原子性。
事物的属性：A 、C、I、D
并发存在的问题？
脏读：现在有两个回话 ， 第一个回话begin 开启事物 然后将a = 1 修改成 a = 2 （注意这里没有commit提交事物），这时候在第二个回话中看到了 第一个回话修改的内容 a = 2。（注意是并发处理应该是有锁控制住的，但是这里没有锁住）
不可重复读：现在有两个回话，第一个回...]]></description><category></category></item><item><title><![CDATA[MysSql实现“存在即更新，不存在即插入”]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/97016600</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/97016600</guid><author>LiTangYuan</author><pubDate>Tue, 23 Jul 2019 18:04:31 +0800</pubDate><description><![CDATA[方法1：使用replace关键字
replace是insert的增强版，可以实现插入的数据和已存在的数据发生主键或者唯一键重复，则删除已存在的数据，再实现插入，如果不重复，则直接插入数据。
结合Mybatis批量处理，用法如下：
&lt;update id="updateSchoolTable" useGeneratedKeys="true" parameterType="java.util.Li...]]></description><category></category></item><item><title><![CDATA[static 关键字的作用]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/96881476</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/96881476</guid><author>LiTangYuan</author><pubDate>Mon, 22 Jul 2019 18:13:50 +0800</pubDate><description><![CDATA[1 修饰代码块
类中用static关键字修饰的代码块称为静态代码，反之没有用static关键字修饰的代码块称为实例代码块。
实例代码块会随着对象的创建而执行，即每个对象都会有自己的实例代码块，表现出来就是实例代码块的运行结果会影响当前对象的内容，并随着对象的销毁而消失(内存回收)；而静态代码块是当Java类加载到JVM内存中而执行的代码块，由于类的加载在JVM运行期间只会发生一次，所以静态代码块也...]]></description><category></category></item><item><title><![CDATA[事实表和维度表]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/96880567</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/96880567</guid><author>LiTangYuan</author><pubDate>Mon, 22 Jul 2019 18:03:09 +0800</pubDate><description><![CDATA[一个典型的例子是，把逻辑业务比作一个立方体，产品维、时间维、地点维分别作为不同的坐标轴，而坐标轴的交点就是一个具体的事实。也就是说事实表是多个维度表的一个交点。而维度表是分析事实的一个窗口。
首先介绍下数据库结构中的星型结构，该结构在位于结构中心的单个事实数据表中维护数据，其它维度数据存储在维度表中。每个维度表与事实数据表直接相关，且通常通过一个键联接到事实数据表中。星型架构是数据仓库比较流向的一...]]></description><category></category></item><item><title><![CDATA[Mysql常用的查询语句]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/96875472</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/96875472</guid><author>LiTangYuan</author><pubDate>Mon, 22 Jul 2019 17:13:55 +0800</pubDate><description><![CDATA[一、查询数值型数据:
SELECT * FROM tb_name WHERE sum &gt; 100;
查询谓词:&gt;,=,&lt;,&lt;&gt;,!=,!&gt;,!&lt;,=&gt;,=&lt;

二、查询字符串
SELECT * FROM tb_stu  WHERE sname  =  '小刘'
SELECT * FROM tb_stu  WHERE sname like '刘%...]]></description><category></category></item><item><title><![CDATA[MySql提高性能方法]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/96874593</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/96874593</guid><author>LiTangYuan</author><pubDate>Mon, 22 Jul 2019 17:06:53 +0800</pubDate><description><![CDATA[短连接
短连接模型存在一个风险，就是一旦数据库处理的慢一些，连接数就会暴涨。max_connections参数，用来控制一个MYSQL实例同时存在的连接数的上限，超过这个值，系统就会拒绝接下来的来连接请求，并报错提示“Too many connections”。对于被拒绝连接的请求来说，从业务角度看就是数据库不可用。
调高max_connections的值，有可能导致已经连接的线程拿不到CPU资源...]]></description><category></category></item><item><title><![CDATA[MySQL5.7免安装版配置详细教程]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/96874047</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/96874047</guid><author>LiTangYuan</author><pubDate>Mon, 22 Jul 2019 17:02:32 +0800</pubDate><description><![CDATA[软件下载
Mysql是一个比较流行且很好用的一款数据库软件，如下记录了我学习总结的mysql免安装版的配置经验，要安装的朋友可以当做参考哦
mysql5.7 64位下载地址:
https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.19-winx64.zip
本次教程采用的是64位版本，诸君可根据自己电脑系统和个人喜好酌情处理。
操作步骤
1...]]></description><category></category></item><item><title><![CDATA[java环境变量设置和DOS常用命令]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/96872469</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/96872469</guid><author>LiTangYuan</author><pubDate>Mon, 22 Jul 2019 16:48:29 +0800</pubDate><description><![CDATA[java环境变量设置
1、先下载jdk，安装到计算机里，否则java不生效；
2、依次打开：桌面–我的电脑–属性–高级–环境变量;
3、新建系统变量：JAVA_HOME（这个变量是不存在的需要新建），点击新建
变量名（N）：JAVA_HOME
变量值（V）：C:Program FilesJavajdk1.*.0（jdk安装路径）

4、选择系统变量名中的“path”环境变量，然后双击它或者点击编辑...]]></description><category></category></item><item><title><![CDATA[SqlServer数据库优化方案]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/96867580</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/96867580</guid><author>LiTangYuan</author><pubDate>Mon, 22 Jul 2019 16:08:13 +0800</pubDate><description><![CDATA[一、数据库设计优化
1、不要使用游标。
使用游标不仅占用内存，而且还用不可思议的方式锁定表，它们可以使DBA所能做的一切性能优化等于没做。游标里每执行一次fetch就等于执行一次select。
2、创建适当的索引
每当为一个表添加一个索引，select会更快，可insert和delete却大大变慢，因为创建了维护索引需要许多额外的工作。
（1）采用函数处理的字段不能利用索引
（2）条件内包括了多个...]]></description><category></category></item><item><title><![CDATA[SqlServer安全设置]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/96866917</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/96866917</guid><author>LiTangYuan</author><pubDate>Mon, 22 Jul 2019 16:02:17 +0800</pubDate><description><![CDATA[光盘\TM\lx\3\SQL Server 2008数据库的安全设置.exe
SQL Server 2008 数据库的安全设置
要对SQL Server 2008 中的数据进行操作，需要先使用登录名登录SQL Server 2008，然后再对数据库操作。
在对数据库进行操作时，其所操作的数据库中还要存在与登录名相对应的数据库用户。
更改登录用户验证方式

创建与删除登录账户
1.创建登录账户
2....]]></description><category></category></item><item><title><![CDATA[泛型理解]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/96479886</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/96479886</guid><author>LiTangYuan</author><pubDate>Fri, 19 Jul 2019 14:23:29 +0800</pubDate><description><![CDATA[1.泛型的概念和作用
泛型是JDK在1.5版本引入的一个特性，在某种程度上，泛型的出现简化了我们的代码，在编译阶段保证代码的安全性。《Think in Java》中这样解释泛型：泛型实现了参数化类型的概念，使得类型可以作为参数适用于尽可能多的场景。我们平时写代码都是具体的类型，方法参数要么是基本数据类型要么自定义的类型，这样写有什么不好吗，不是的，要看使用场景。下面给出一个最经典的例子：
publ...]]></description><category></category></item><item><title><![CDATA[Java性能优化]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/96322916</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/96322916</guid><author>LiTangYuan</author><pubDate>Wed, 17 Jul 2019 16:29:52 +0800</pubDate><description><![CDATA[代码优化细节
1、尽量指定类、方法的final修饰符
带有final修饰符的类是不可派生的。在Java核心API中，有许多应用final的例子，例如java.lang.String，整个类都是final的。为类指定final修饰符可以让类不可以被继承，为方法指定final修饰符可以让方法不可以被重写。如果指定了一个类为final，则该类所有的方法都是final的。Java编译器会寻找机会内联所有的...]]></description><category></category></item><item><title><![CDATA[Java面试题]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/96318449</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/96318449</guid><author>LiTangYuan</author><pubDate>Wed, 17 Jul 2019 15:59:54 +0800</pubDate><description><![CDATA[1.JDK 和 JRE 有什么区别？
JDK：Java Development Kit 的简称，Java 开发工具包，提供了 Java 的开发环境和运行环境。
JRE：Java Runtime Environment 的简称，Java 运行环境，为 Java 的运行提供了所需环境。
具体来说 JDK 其实包含了 JRE，同时还包含了编译 Java 源码的编译器 Javac，还包含了很多 Java ...]]></description><category></category></item><item><title><![CDATA[什么是IOC]]></title><link>https://blog.youkuaiyun.com/LiTangYuan/article/details/96315398</link><guid>https://blog.youkuaiyun.com/LiTangYuan/article/details/96315398</guid><author>LiTangYuan</author><pubDate>Wed, 17 Jul 2019 15:38:49 +0800</pubDate><description><![CDATA[IoC，Inversion of Control（控制反转）。
是一种设计思想，在Java开发中，将你设计好的对象交给容器控制，而不是显示地用代码进行对象的创建。
把创建和查找依赖对象的控制权交给 IoC 容器，由 IoC 容器进行注入、组合对象。这样对象与对象之间是松耦合、便于测试、功能可复用（减少对象的创建和内存消耗），使得程序的整个体系结构可维护性、灵活性、扩展性变高。
使用 IoC 的好处...]]></description><category></category></item></channel></rss>