<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[T_james的博客]]></title><description><![CDATA[个人在学习和工作中的一些实践感悟,,仅此与大家分享]]></description><link>https://blog.youkuaiyun.com/T_james</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; T_james]]></copyright><item><title><![CDATA[Mockito单元测试]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/129060934</link><guid>https://blog.youkuaiyun.com/T_james/article/details/129060934</guid><author>T_james</author><pubDate>Thu, 16 Feb 2023 14:55:14 +0800</pubDate><description><![CDATA[使用Mockito进行springboot中相关开发模块中的单元测试 提升代码质量]]></description><category></category></item><item><title><![CDATA[springboot上传下载相关文件]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/127107566</link><guid>https://blog.youkuaiyun.com/T_james/article/details/127107566</guid><author>T_james</author><pubDate>Thu, 29 Sep 2022 15:37:01 +0800</pubDate><description><![CDATA[【代码】springboot上传下载相关文件。]]></description><category></category></item><item><title><![CDATA[mysql可重复执行增加字段脚本]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/127004345</link><guid>https://blog.youkuaiyun.com/T_james/article/details/127004345</guid><author>T_james</author><pubDate>Fri, 23 Sep 2022 09:35:03 +0800</pubDate><description><![CDATA[数据库可执行脚本，用于批量执行脚本时更加平滑，无需重复备份，无需找寻错误sql]]></description><category></category></item><item><title><![CDATA[filebeat收集日志+kibana配置索引检索规则]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/121494485</link><guid>https://blog.youkuaiyun.com/T_james/article/details/121494485</guid><author>T_james</author><pubDate>Tue, 23 Nov 2021 15:51:03 +0800</pubDate><description><![CDATA[整体流程--filebeat收集日志后 kibana对收集的filebear日志做可持续化的分析


前置--ELKB安装(Elasticsearch+logstash+kibana+filebeat)_T_james的博客-优快云博客本篇博客主要是为了搭建ELKB的运行环境 旨在对线上多台服务器的日志进行获取分析 解决日常运行查看中的痛点 前置准备：1.安装jdk环境--java -version2.下载相关的压缩包或者获取对应的rpm文件 本文采取前者 官网tar下载路径:Elasticsearch.]]></description><category></category></item><item><title><![CDATA[ELKB安装(Elasticsearch+logstash+kibana+filebeat)]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/121467609</link><guid>https://blog.youkuaiyun.com/T_james/article/details/121467609</guid><author>T_james</author><pubDate>Mon, 22 Nov 2021 13:58:15 +0800</pubDate><description><![CDATA[本篇博客主要是为了搭建ELKB的运行环境 旨在对线上多台服务器的日志进行获取分析 解决日常运行查看中的痛点

    前置准备：


1.安装jdk环境--java -version

2.下载相关的压缩包或者获取对应的rpm文件 本文采取前者

 官网tar下载路径:Elasticsearch：官方分布式搜索和分析引擎 | Elastichttps://www.elastic.co/cn/elasticsearch/

3.机器须大于4G内存 否则相关实例运行会报错

4....]]></description><category></category></item><item><title><![CDATA[第三方人社接口对接]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/114129155</link><guid>https://blog.youkuaiyun.com/T_james/article/details/114129155</guid><author>T_james</author><pubDate>Fri, 26 Feb 2021 18:57:35 +0800</pubDate><description><![CDATA[近期在和各地人社监管部门提供的接口进行对接，记录如下

 背景：企业需要在人社监管部门的干预下完成相关的线上培训，故学习平台需要对接相关的人社监管接口，及时上送相关数据保证和监管的同步

 大致流程：监管需要掌握对应的学习数据 故需要在实名认证 人脸识别 视频录制 防挂机验证等方面进行相应监管和限制 学习平台需在对应的时间段和标准下上送相关数据

         







目前已经对接了天津人社和广东人社的相关需求，主要繁琐点在以下几个地方：

 1.人脸...]]></description><category></category></item><item><title><![CDATA[慢sql优化总结]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/109636439</link><guid>https://blog.youkuaiyun.com/T_james/article/details/109636439</guid><author>T_james</author><pubDate>Thu, 12 Nov 2020 10:18:43 +0800</pubDate><description><![CDATA[项目中由于前人写的上古SQL,加上业务数据量逐渐增加，导致SQL效率急剧下降，故结合阿里云的PolarDB产品分析相关线上慢SQL日志，进而优化解决



经整理分析，此次sql性能问题主要凸显以下几点：

  1.数据量巨大，存在单表数据量超过1亿的数据，且很多单表体积在几千万的数据互相之间关联查询

  2.历史索引创建问题，新业务产生时未及时结合全场景进行索引更新，频繁创建新的索引，各个索引的排列未使得效率最大化且浪费磁盘空间，且多索引情况下判断索引命中索引需要更多的时间，极有可能锁表

...]]></description><category></category></item><item><title><![CDATA[POI之HSSF,XSSF,SXSSF,PDF循环写入分页]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/109627627</link><guid>https://blog.youkuaiyun.com/T_james/article/details/109627627</guid><author>T_james</author><pubDate>Wed, 11 Nov 2020 18:14:49 +0800</pubDate><description><![CDATA[针对POI3.9jar包中的相关工具类HSSF,XSSF,SXSSF的理解，以及PDF实现循环写入及分页的实现

  需求如下：

     根据接口传递的相关数据，导出一定样式（合并行列，上色，加粗，循环写入）的表格，行数视数据量多少而定

  原有结构：

     假定100个人 100份数据分100个excel导出，采用HSSFWorkbook类导出

  

接下来逐步由此产生问题进而解决：

改造原有写入逻辑，传入HSSFWorkbook参数在循环外层一直持有，...]]></description><category></category></item><item><title><![CDATA[初识JMeter]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/103628817</link><guid>https://blog.youkuaiyun.com/T_james/article/details/103628817</guid><author>T_james</author><pubDate>Fri, 20 Dec 2019 13:34:09 +0800</pubDate><description><![CDATA[JMeter作为Apache的一款的开源项目，是一个纯Java桌面应用，用于压力测试和性能测试。它最初设计用于Web应用测试后来扩展到其他测试领域。

   下载：http://jmeter.apache.org/download_jmeter.cgi



   

   文件位置---直接双击启动

  

 界面

 

开始测试第一步...]]></description><category></category></item><item><title><![CDATA[springboot启动时执行任务之CommandLineRunner]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/103362872</link><guid>https://blog.youkuaiyun.com/T_james/article/details/103362872</guid><author>T_james</author><pubDate>Tue, 03 Dec 2019 10:56:37 +0800</pubDate><description><![CDATA[对接微信小程序接口时，在项目重新启动时需要将数据库的openId批量缓存到redis中，便于后面的业务处理，此处用到了CommandLineRunner接口，通过实现这接口中的run方法便于我们进行相关的业务逻辑代码的处理。

   如果有多个启动任务呢，我们只需要加上@order注解表明执行加载顺序即可依次执行了。

   任务一：项目重新启动清除数据字典并加载最新字典
...]]></description><category></category></item><item><title><![CDATA[mybatis之in和charindex的使用]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/102610857</link><guid>https://blog.youkuaiyun.com/T_james/article/details/102610857</guid><author>T_james</author><pubDate>Thu, 17 Oct 2019 17:19:11 +0800</pubDate><description><![CDATA[mybatis之in的使用 

大家在一条sql中传入多个查询数据时都会使用的in关键字，可是在sql中明明好好的执行，到了程序中要么报错要么查询为空。原因在于在mybatis中，默认in属性为传递多个数据，则需要遍历循环去读取，外部通过数组或者集合的方式传入，示例如下

 Java调用代码


 String[] cIdArrays = cId.split(",");
        L...]]></description><category></category></item><item><title><![CDATA[短信发送工具类]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/102551558</link><guid>https://blog.youkuaiyun.com/T_james/article/details/102551558</guid><author>T_james</author><pubDate>Mon, 14 Oct 2019 16:49:59 +0800</pubDate><description><![CDATA[由于发送短信的内容是动态的，导致短信内容的参数需要进行替换，且短信签名的相关信息也需要动态生成，特在此记录。

  短信参数模板如下：




亲爱的用户，你的火车票已出票成功，取票号为[0]。[1][2]出发[3]-[4]，[5]车次[6]，[7]，请合理安排出行时间

  动态获取参数内容并依次填充到相应位置


public class ParseUtil
{
   ...]]></description><category></category></item><item><title><![CDATA[SpringBoot处理内外事务及线程ID使用]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/100668809</link><guid>https://blog.youkuaiyun.com/T_james/article/details/100668809</guid><author>T_james</author><pubDate>Mon, 09 Sep 2019 18:02:56 +0800</pubDate><description><![CDATA[1.SpringBoot处理内外事务

 场景如下：

    某个接口，内部会调用其他多个接口，这些接口属于同一个事务下，统一回滚或提交，在出异常的情况下，需要修改其他数据的订单状态，所以事务的一致性是不能保证的，需要对事务级别进行限制

 解决方式:

   1.设置独立事务，给同一事务下的方法设置自己的独立事务，自己提交或者回滚，不知道啥问题，楼主测试后无效


@Tra...]]></description><category></category></item><item><title><![CDATA[SpringBoot记录请求返回日志]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/100014099</link><guid>https://blog.youkuaiyun.com/T_james/article/details/100014099</guid><author>T_james</author><pubDate>Thu, 22 Aug 2019 15:26:10 +0800</pubDate><description><![CDATA[SpringBoot监控请求响应日志，可以借此分析了解项目中的相关性能，安全方面的问题，开发人员也可以方便的拿取日志进行排错检查问题等一系列操作。

   1.思考--request请求和rsponse请求都只能拿一次body体里面的参数，怎么办？

   2.记录哪些数据？

   3.拿到的日志数据如何存储？

   4.实现方式？

   5.是否有实...]]></description><category></category></item><item><title><![CDATA[初识MongoDB+Java调用]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/99440802</link><guid>https://blog.youkuaiyun.com/T_james/article/details/99440802</guid><author>T_james</author><pubDate>Tue, 13 Aug 2019 15:50:20 +0800</pubDate><description><![CDATA[MongoDB开发前准备工作：

 准备MongoDB环境

   MongoDB下载地址：下载MongoDB,由于官网实在太慢，大家可以转向我这里下载

   教程地址：https://www.runoob.com/mongodb/mongodb-tutorial.html（建议边看边实战）

  最终集成Java环境需要相关JDK,大家可以转向官网下载即可



关系型数...]]></description><category></category></item><item><title><![CDATA[sqlserver  知识点积累]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/97891271</link><guid>https://blog.youkuaiyun.com/T_james/article/details/97891271</guid><author>T_james</author><pubDate>Wed, 31 Jul 2019 10:46:03 +0800</pubDate><description><![CDATA[1.mybatis在只传入一个参数的情况下，并且该参数不为空，需要用‘_parameter’参数值来代替，否则值取到的会不一致


&lt;select id="courseMenuTreeNode" parameterType="java.lang.Integer" resultMap="BaseResultMap"&gt;
        select
        &lt;include ...]]></description><category></category></item><item><title><![CDATA[生成Excel表格并上传阿里云存储]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/93204184</link><guid>https://blog.youkuaiyun.com/T_james/article/details/93204184</guid><author>T_james</author><pubDate>Fri, 21 Jun 2019 16:38:21 +0800</pubDate><description><![CDATA[1.程序内部生成Excel表格

 1.1 表头和数据分离

       


//表头存储格式
List&lt;String[]&gt; headerGoodsOrderList

String[] h1 = new String[2];
        h1[0] = "id";
        h1[1] = "序号";
        headorder.a...]]></description><category></category></item><item><title><![CDATA[全民付二维码对接]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/90511775</link><guid>https://blog.youkuaiyun.com/T_james/article/details/90511775</guid><author>T_james</author><pubDate>Fri, 24 May 2019 11:03:26 +0800</pubDate><description><![CDATA[由于业务需要，我们公司最近开始对接新的一款二维码---全民付二维码，其实归根结底就是对银联接口进行了二次封装，然后在自己的基础上做了一些改变推出的一款二维码，对接流程相对简单，接下来我来介绍一下对接全民付二维码的过程

  准备工作:

         1.银联商务平台地址：https://open.chinaums.com/

        ...]]></description><category></category></item><item><title><![CDATA[selenium+Java+IDEA集成自动化测试]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/89022474</link><guid>https://blog.youkuaiyun.com/T_james/article/details/89022474</guid><author>T_james</author><pubDate>Thu, 04 Apr 2019 16:38:53 +0800</pubDate><description><![CDATA[selenium是一个应用于web应用程序测试的框架，可以模拟终端客户在实际运用中的场景。本篇博客将介绍selenium的基本测试API，自动化截图，生成测试报告等功能。

 具体博客流程如下:

selenium基本属性介绍
	selenium确定界面元素的几种方法
	selenium自动截图
	selenium生成测试报告
1.selenium基本属性介绍

 selenium运...]]></description><category></category></item><item><title><![CDATA[vue高级特性之界面传值（父子界面，兄弟界面，非父子界面）,路由配置,get传参]]></title><link>https://blog.youkuaiyun.com/T_james/article/details/88947028</link><guid>https://blog.youkuaiyun.com/T_james/article/details/88947028</guid><author>T_james</author><pubDate>Mon, 01 Apr 2019 16:09:40 +0800</pubDate><description><![CDATA[此篇文章是在idea前后端分离demo博客后，对其中的一些特性进行学习和积累。

1.父组件给子组件传值

  新建Home.vue组件和Header.vue组件，其中Home.vue组件为父组件，后者为子组件

  其中最主要的步骤如下:

父组件引入子组件并用标签声明
	父组件需要给子组件传递哪些数据（可以传递普通数据，方法，实体等）
	子组件用props数组进行接收----p...]]></description><category></category></item></channel></rss>