<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[xiaoying0531的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/xiaoying0531</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; xiaoying0531]]></copyright><item><title><![CDATA[Hibernate关联查询N+1查询问题记录]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/147310072</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/147310072</guid><author>xiaoying0531</author><pubDate>Thu, 17 Apr 2025 17:12:46 +0800</pubDate><description><![CDATA[2、转而怀疑是列表查询关联了一张子表导致，分析查看log日志后，发现一个之前没注意到的情况，一次查询竟然打印了很多条查询sql日志，这才看到Hibernate关联查询时，是先查询主表，拿到关联主键后，对每个子表单独请求一次数据库的，导致查询效率极其低下。1、因为问题出现之前有增加一个需求，查询会对表中某个json字段进行过滤，所以第一时间怀疑是数据量大了以后这种json内容筛选导致的，但测试后发现其影响关系不大，效率依然低。]]></description><category></category></item><item><title><![CDATA[Spring-data-redis整合spring时jar包版本导致运行报错]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/89790442</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/89790442</guid><author>xiaoying0531</author><pubDate>Fri, 03 May 2019 19:24:04 +0800</pubDate><description><![CDATA[问题记录：

使用时一切准备就绪，启动始终报错，说无法创建RedisTemplate的Bean实例，多次检查配置文件发现并没有问题，想到会不会是jar包的版本问题，查看之前spring-data-redis和jedis整合版本导致jar包冲突解决，换了redis和spring-data-redis的版本均没有解决问题，想来应该是spring的jar版本的问题了，网上查看最终解决，问题如下：

sp...]]></description><category></category></item><item><title><![CDATA[Java文件输入流输出流同时操作一个文件时，输出流写入文件内容为空]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/89399457</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/89399457</guid><author>xiaoying0531</author><pubDate>Fri, 19 Apr 2019 14:33:39 +0800</pubDate><description><![CDATA[简单记录的一个容易出错的小问题：

当我们使用Java处理文件时，经常会将输入流、输出流初始化在一起，（习惯方式）


BufferedReader br = null;
PrintWriter pw = null;
try{
    br = new BufferedReader(new FileReader(file));
    pw = new PrintWriter(file);
   ...]]></description><category></category></item><item><title><![CDATA[Redis进阶之持久化]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/81208320</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/81208320</guid><author>xiaoying0531</author><pubDate>Wed, 25 Jul 2018 20:27:55 +0800</pubDate><description><![CDATA[一、Redis高可用概述

    在Redis中，实现高可用的技术主要包括持久化、主从复制、哨兵和集群。

持久化：持久化是最简单的高可用方法，主要作用是数据备份，即将数据存储在硬盘，保证数据不会因进程退出而丢失。
	复制：复制是高可用Redis的基础，哨兵和集群都是在复制的基础上实现高可用的。复制主要实现了数据的多级备份，以及对于读操作的负载均衡和简单的故障恢复。缺陷：故障恢复无法自动化；写操...]]></description><category></category></item><item><title><![CDATA[Java设计模式之单例模式]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/81158079</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/81158079</guid><author>xiaoying0531</author><pubDate>Sun, 22 Jul 2018 20:34:59 +0800</pubDate><description><![CDATA[一、单例模式

       是Java多种设计模式中较为常用的一种，在它的核心结构中只包含了一个被称为单例的特殊类。通过单例模式可以保证系统中，应用该模式的类只有一个实例。

二、模式要求

1、自己的构造方法必须私有化

2、类的内部自己创建一个自己唯一的实例

3、要提供一个公开的静态方法供其他对象获取该实例

三、几种实现方式

饿汉式

public class Simple {
	pr...]]></description><category></category></item><item><title><![CDATA[商城购物车实现分析]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/81043501</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/81043501</guid><author>xiaoying0531</author><pubDate>Sat, 14 Jul 2018 15:02:44 +0800</pubDate><description><![CDATA[一、购物车要求：    用户不登录可以使用购物车功能，可以向购物车中添加、删除商品；用户登录后需要达到更换设备购物车信息可以同步。二、实现原理：    1、要求用户登录；    2、把购物车商品列表保存到数据库中。推荐使用redis；    3、Key：用户id，value：购物车商品列表。推荐使用hash，hash的field：商品id，value：商品信息；    4、在用户未登录的情况下写c...]]></description><category></category></item><item><title><![CDATA[nginx的应用]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/81040519</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/81040519</guid><author>xiaoying0531</author><pubDate>Sat, 14 Jul 2018 10:20:08 +0800</pubDate><description><![CDATA[一、Nginx    Nginx是一个高性能的HTTP和反向代理服务器，也是一个IMAP/POP3/SMTP服务器。其特点是占有内存小，并发能力强。二、Nginx应用    主要通过配置conf下的nginx.conf文件实现。    1、作为http服务器访问静态资源    可以将静态网页放到指定的目录，在root后指向对应的目录，即可访问。    2、虚拟主机        (1)通过端口区分...]]></description><category></category></item><item><title><![CDATA[FreeMarker的学习和应用]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/81010680</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/81010680</guid><author>xiaoying0531</author><pubDate>Thu, 12 Jul 2018 10:43:33 +0800</pubDate><description><![CDATA[一、什么是FreeMarker?    FreeMarker是一款主流的Java语言编写的模板引擎，即一种基于模板和要改变的数据，并用来生产输出文本(HTML网页、配置文件、电子邮件、源代码等)的通用工具。二、应用场景页面静态化应用导出word、ppt、excel等复杂性的文档三、FreeMarker的使用方法将freemarker的依赖添加到工程的pom中。&amp;lt;dependency&amp;gt;
...]]></description><category></category></item><item><title><![CDATA[学习ActiveMQ的使用]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/80986757</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/80986757</guid><author>xiaoying0531</author><pubDate>Tue, 10 Jul 2018 15:34:57 +0800</pubDate><description><![CDATA[一、什么是ActiveMQ？     ActiveMQ是Apache出品的，非常流行的开源消息中间件，ActiveMQ是一个完全支持JMS1.1和J2EE1.4规范的JMS Provider实现，（JMS是一个Java平台中关于面向消息中间件的API，用于两个应用程序之间，或分布式系统中发送消息，进行异步通信，仅仅定义了一系列的接口，ActiveMQ是对于JMS接口的一种实现)。二、ActiveM...]]></description><category></category></item><item><title><![CDATA[JDK1.8之lambda与stream的实际应用]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/80971060</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/80971060</guid><author>xiaoying0531</author><pubDate>Mon, 09 Jul 2018 19:38:25 +0800</pubDate><description><![CDATA[一、lambda和stream的理论知识学习参考链接（写得很全面）二、实际运用。package com.lambda;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
import org.junit.Assert;
im...]]></description><category></category></item><item><title><![CDATA[Solr服务配置业务域和中文分词器]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/80956841</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/80956841</guid><author>xiaoying0531</author><pubDate>Sun, 08 Jul 2018 09:57:29 +0800</pubDate><description><![CDATA[一、中文分词器所需文件准备    IK分词器所需文件二、IK分词器配置。    1)使用xftp将IK文件上传至虚拟机的/root目录下。    2)将IKAnalyzer2012FF_u1.jar文件复制到solr服务的WEB-INF的lib目录中。cp IKAnalyzer2012FF_u1.jar /usr/local/solr/tocamt/weapps/solr/WEB-INF/lib ...]]></description><category></category></item><item><title><![CDATA[SolrJ操作Solr服务]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/80956618</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/80956618</guid><author>xiaoying0531</author><pubDate>Sun, 08 Jul 2018 09:20:25 +0800</pubDate><description><![CDATA[SolrJ是JAVA操作Solr的客户端，可以直接操作Solr服务进行索引的增、删、改、查功能。一、使用前先引入SolrJ的依赖。&amp;lt;!-- solr客户端 --&amp;gt;
&amp;lt;dependency&amp;gt;
    &amp;lt;groupId&amp;gt;org.apache.solr&amp;lt;/groupId&amp;gt;
    &amp;lt;artifactId&amp;gt;solr-solrj&amp;lt;/artif...]]></description><category></category></item><item><title><![CDATA[Solr服务集群版环境搭建]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/80949238</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/80949238</guid><author>xiaoying0531</author><pubDate>Sat, 07 Jul 2018 16:53:24 +0800</pubDate><description><![CDATA[一、Solr搭建准备文件。    和单机版搭建所写相同。点击打开链接二、集群版服务搭建步骤。    1、Zookeeper在solr集群中的角色。        1)、集群的入口        2)、配置文件的集中管理        3)、集群管理        为了实现Zookeeper的高可用，solr集群也需要搭建zookeeper的集群。由于条件限制，启动太多虚拟机电脑会卡顿，所以采用一台...]]></description><category></category></item><item><title><![CDATA[Solr服务单机版环境搭建]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/80948556</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/80948556</guid><author>xiaoying0531</author><pubDate>Sat, 07 Jul 2018 10:25:56 +0800</pubDate><description><![CDATA[一、Solr搭建准备文件。    使用xftp将服务所需的zookeeper-3.4.6.tar.gz、apache-tomcat-7.0.47.tar.gz、solr-4.10.3.tgz.tgz上传至服务器的/root目录下。二、单机版服务搭建步骤。    1、需提前安装好JDK环境。    2、解压缩solr安装包，使用命令：tar zxf solr-4.10.3.tgz.tgz.    3...]]></description><category></category></item><item><title><![CDATA[spring-data-redis和jedis整合版本导致jar包冲突解决]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/80875452</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/80875452</guid><author>xiaoying0531</author><pubDate>Sun, 01 Jul 2018 20:04:54 +0800</pubDate><description><![CDATA[在jedis和spring-data-redis整合测试时出现该异常，搜索后了解到该类异常时由于jedis和spring-data-redis的版本导致jar包冲突了。]]></description><category></category></item><item><title><![CDATA[Redis做缓存使用]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/80869625</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/80869625</guid><author>xiaoying0531</author><pubDate>Sun, 01 Jul 2018 09:38:19 +0800</pubDate><description><![CDATA[一、使用封装了Redis客户端的Jedis进行相关操作    1、使用时先引入Redis客户端的相关依赖&amp;lt;dependency&amp;gt;
    &amp;lt;groupId&amp;gt;redis.clients&amp;lt;/groupId&amp;gt;
    &amp;lt;artifactId&amp;gt;jedis&amp;lt;/artifactId&amp;gt;
    &amp;lt;version&amp;gt;${version}&amp;lt;...]]></description><category></category></item><item><title><![CDATA[Redis的安装和集群环境的搭建]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/80867146</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/80867146</guid><author>xiaoying0531</author><pubDate>Sat, 30 Jun 2018 17:35:35 +0800</pubDate><description><![CDATA[一、Redis安装包的下载和准备。    官方下载地址    下载后通过Xftp将安装包上传到虚拟机的/root目录下。二、单机服务版安装。    1、解压到/usr/local目录下。        2、编译。        切换到redis-3.0.0目录下，使用make命令进行编译。    3、安装。        使用命令make install PREFIX=/usr/local/red...]]></description><category></category></item><item><title><![CDATA[Dubbo的初步认识和基本使用]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/80829285</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/80829285</guid><author>xiaoying0531</author><pubDate>Wed, 27 Jun 2018 15:51:34 +0800</pubDate><description><![CDATA[一、Dubbo的说明    根据Dubbo官方网站的说明，了解到Dubbo是一个基于JAVA的阿里巴巴开放式RPC框架，所谓RPC是指Remote procedure call（远程过程调用），可以理解为是为了调用远程系统的服务。在服务器端，由服务器继承接口提供一个dubbo服务供客户端 调用，客户端有一个存根，提供与服务器相同的方法。二、Dubbo的结构组成    这是duboo官方的结构图，从...]]></description><category></category></item><item><title><![CDATA[虚拟机搭建单机版的FastDFS文件服务器]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/80810370</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/80810370</guid><author>xiaoying0531</author><pubDate>Tue, 26 Jun 2018 17:23:48 +0800</pubDate><description><![CDATA[第一步：搭建虚拟环境    这里使用VMware Workstation12作为搭建环境，具体搭建不多叙述。第二步：安装vim命令    之所以安装vim命令是因为在安装它的同时会自动帮我们安装perl，而perl在进行编译安装时是必须要有的。安装vim的命令是：yum install vim-enhanced第三步：安装gcc   FastDFS是C语言开发，安装FastDFS需要先将下载的源码...]]></description><category></category></item><item><title><![CDATA[Linux下安装配置Nginx]]></title><link>https://blog.youkuaiyun.com/xiaoying0531/article/details/80816208</link><guid>https://blog.youkuaiyun.com/xiaoying0531/article/details/80816208</guid><author>xiaoying0531</author><pubDate>Tue, 26 Jun 2018 16:20:23 +0800</pubDate><description><![CDATA[一、nginx的安装环境    1、gcc        安装nginx需要先将官网下载的源码进行编译，编译依赖gcc环境，如果没有gcc环境，需要安装gcc：yum install gcc-c++ 。    2、PCRE        PCRE(Perl Compatible Regular Expressions)是一个Perl库，包括 perl 兼容的正则表达式库。nginx的http模块使...]]></description><category></category></item></channel></rss>