<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[职业炮灰的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/king_cannon_fodder</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; king_cannon_fodder]]></copyright><item><title><![CDATA[JPA-Specification常用条件查询构造方式]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/127036910</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/127036910</guid><author>king_cannon_fodder</author><pubDate>Sun, 25 Sep 2022 13:55:06 +0800</pubDate><description><![CDATA[使用JAP的JpaSpecificationExecutor常用条件查询方式]]></description><category></category></item><item><title><![CDATA[java常用日期操作]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/124210169</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/124210169</guid><author>king_cannon_fodder</author><pubDate>Sat, 16 Apr 2022 11:04:00 +0800</pubDate><description><![CDATA[java常用日期操作
1，获取几天前的日期
	/**
     * 获取几天前的日期
     *
     * @param date 日期
     * @param day  天
     * @return Date
     */
    public static Date getDateBefore(Date date, int day) {
        Calendar now = Calendar.getInstance();
        now.setTime(date);
  ]]></description><category></category></item><item><title><![CDATA[Spring Boot 中使用 Hikari连接各类数据源]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/124076279</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/124076279</guid><author>king_cannon_fodder</author><pubDate>Sun, 10 Apr 2022 13:03:04 +0800</pubDate><description><![CDATA[Spring Boot 中使用 Hikari连接各类数据源
1，连接hive集群
HikariConfig中各属性设置
{
    "allowPoolSuspension": false,
    "autoCommit": true,
    "connectionTimeout": 10000,
    "driverClassName": "org.apache.hive.jdbc.HiveDriver",
    "idleTimeout": 30000,
    "initializationF]]></description><category></category></item><item><title><![CDATA[java-String常用操作总结]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/124057756</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/124057756</guid><author>king_cannon_fodder</author><pubDate>Sat, 09 Apr 2022 11:32:29 +0800</pubDate><description><![CDATA[String常用操作总结1，内容替换2，List转用逗号隔开字符串
1，内容替换
import org.apache.commons.lang.text.StrSubstitutor;

public void test01() {
     String str="你好，我是${name}";
     Map&lt;String, String&gt; map = new HashMap();
     map.put("name","周杰伦");
     StrSubstitutor strSubs]]></description><category></category></item><item><title><![CDATA[安卓手机免root修改hosts文件]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/115318015</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/115318015</guid><author>king_cannon_fodder</author><pubDate>Tue, 30 Mar 2021 09:55:40 +0800</pubDate><description><![CDATA[安卓手机免root修改hosts文件
1.下载Virtual-Hosts安装包
1.1 直接去github下载：https://github.com/x-falcon/Virtual-Hosts
1.2 去我的百度网盘下载：链接: https://pan.baidu.com/s/18WktkjQ3fTQE9YY2Txmg0A 提取码: xwik
2.安装后选择hosts文件

3.开机启动

4.其他
4.1 开机启动成功后，通知栏会有个VPN的小图标，之后就可以使用了### 4.2 hosts格式和电脑的]]></description><category></category></item><item><title><![CDATA[JS对象的拷贝与继承]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/103774670</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/103774670</guid><author>king_cannon_fodder</author><pubDate>Mon, 30 Dec 2019 22:46:27 +0800</pubDate><description><![CDATA[JS对象的拷贝
浅拷贝

简单的把一个对象的成员值拷贝给另外一个对象，如果遇到复杂类型数据，只是将引用拷贝过去，其实两个对象的成员变量指向的还是同一个内存空间。这样 当修改一个对象的复杂类型成员变量，会影响到另外一个对象。
代码：     var obj1 = {
       name: 'zs',
       age: 18,
       sex: '男',
       dog: {
 ...]]></description><category></category></item><item><title><![CDATA[JS函数进阶]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/103773707</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/103773707</guid><author>king_cannon_fodder</author><pubDate>Mon, 30 Dec 2019 21:33:25 +0800</pubDate><description><![CDATA[函数的定义方式

函数声明function foo () {

}


函数表达式var foo = function () {

}


new Function（很少使用）var fn = new Function('var name = "张三";console.log(name)');
//函数也是对象，所有函数都是 `Function` 的实例



函数声明与函数表达式的区别

函数声...]]></description><category></category></item><item><title><![CDATA[浅析js原型]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/103758922</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/103758922</guid><author>king_cannon_fodder</author><pubDate>Sun, 29 Dec 2019 23:17:59 +0800</pubDate><description><![CDATA[一、prototype属性

JavaScript 规定，每一个构造函数都有一个 prototype 属性，指向另一个对象。这个对象的所有属性和方法，都会被构造函数的所拥有。
这也就意味着，我们可以把所有对象实例需要共享的属性和方法直接定义在 prototype 对象上。

function Person (name, age) {
  this.name = name
  this.age = ...]]></description><category></category></item><item><title><![CDATA[js预解析及案例分析]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/103758267</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/103758267</guid><author>king_cannon_fodder</author><pubDate>Sun, 29 Dec 2019 22:05:50 +0800</pubDate><description><![CDATA[一、预解析

JavaScript解析器执行JavaScript代码的时候，分为两个过程：预解析过程和代码执行过程。
预解析过程：

把变量的声明提升到当前作用域的最前面，只会提升声明，不会提升赋值。
把函数的声明提升到当前作用域的最前面，只会提升声明，不会提升调用。
先提升var，在提升function。


变量提升：定义变量的时候，变量的声明会被提升到作用域的最上面，变量的赋值不会提升。
函...]]></description><category></category></item><item><title><![CDATA[Java自定义注解并通过反射读取]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/103499335</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/103499335</guid><author>king_cannon_fodder</author><pubDate>Wed, 11 Dec 2019 20:46:58 +0800</pubDate><description><![CDATA[Java自定义注解并通过反射读取自定义注解元注解@Target@Retention使用反射机制读取注解信息
自定义注解


使用@interface自定义注解，自动继承了java.lang.annotation接口


格式为：

public @interface 注解名 {定义体}
其中的每个方法实际上是声明了一个配置参数
方法的名称就是参数的名称
返回值的参数就是参数的类型（返回值类型只能是...]]></description><category></category></item><item><title><![CDATA[河南省第十一届ACM大学生程序设计竞赛题目]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/80508310</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/80508310</guid><author>king_cannon_fodder</author><pubDate>Wed, 30 Oct 2019 19:08:08 +0800</pubDate><description><![CDATA[河南省第十一届ACM大学生程序设计竞赛题目

A、计划日



B、治安管理



C、山区修路



E、物流配送



F、Gene mutation



G、Checkpoints



H、Attack City Capture Territory



I、Image Recognition





J、Jigsaw Puzzle





PS:D题缺失


...]]></description><category></category></item><item><title><![CDATA[封装JpaSpecificationExecutor简化多条件查询]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/99111167</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/99111167</guid><author>king_cannon_fodder</author><pubDate>Sat, 10 Aug 2019 21:39:39 +0800</pubDate><description><![CDATA[一、JpaSpecificationExecutor原生查询及其概述
1.1 概述
Spring Data JPA为我们提供了一系列的接口比如：Repository、CrudRepository、PagingAndSortingRepository、JpaRepository、JPASpecificationExecutor等。我们只需要继承这些接口就可以很方便的对数据库进行操作。但是当我们运用J...]]></description><category></category></item><item><title><![CDATA[NodeJS入门]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/95731881</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/95731881</guid><author>king_cannon_fodder</author><pubDate>Sat, 13 Jul 2019 11:36:35 +0800</pubDate><description><![CDATA[一、NodeJS简介

Node.js是一个能够在服务器端运行JavaScript的开放源代码、跨平台JavaScript运行环境。
Node采用Google开发的V8引擎运行js代码，使用事件驱动、非阻塞和异步I/O模型等技术来提高性能，可优化应用程序的传输量和规模。
Node大部分基本模块都用JavaScript编写。在Node出现之前，JS通常作为客户端程序设计语言使用，以JS写出的程序常在...]]></description><category></category></item><item><title><![CDATA[vim编辑器使用]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/89787684</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/89787684</guid><author>king_cannon_fodder</author><pubDate>Fri, 03 May 2019 14:53:58 +0800</pubDate><description><![CDATA[一、vim三种模式概述
1.1 vim中存在三种模式

命令模式：在该模式下是不能对文件直接编辑，可以输入快捷键进行一些操作（删除行，复制行，移动光标，粘贴等等）【打开文件之后默认进入的模式】；
编辑模式：在该模式下可以对文件的内容进行编辑；
末行模式：可以在末行输入命令来对文件进行操作（搜索、替换、保存、退出、撤销、高亮等等）；

1.2 vim打开文件的方式

#vim 文件路径							...]]></description><category></category></item><item><title><![CDATA[shell入门与进阶]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/89786099</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/89786099</guid><author>king_cannon_fodder</author><pubDate>Fri, 03 May 2019 11:32:36 +0800</pubDate><description><![CDATA[一、shell入门
1.1 编写规范
	代码规范：
	#!/bin/bash				[指定告知系统当前这个脚本要使用的shell解释器]
	Shell相关指令
	
	文件命名规范：
	文件名.sh				.sh是linux下bash shell 的默认后缀

1.2 使用流程
	1，创建.sh文件：touch/vim
	2，编写shell代码
	3，执行shell脚本			脚本必须得有执行权限

...]]></description><category></category></item><item><title><![CDATA[Java10新特性及部分新增API介绍]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/89479848</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/89479848</guid><author>king_cannon_fodder</author><pubDate>Tue, 23 Apr 2019 19:59:03 +0800</pubDate><description><![CDATA[一、新特性
1.1 局部变量类型推断
首先从名字来看，可知其作用范围是针对局部变量。它其实就是通过保留类型var，来定义局部变量，可以根据变量值来进行类型的推断。需要注意的是：var 是保留类型不是关键字。意味着我们还可以用var来定义变量名或者是方法名。其次就是var不允许赋值为null。它还可以推断出自定义的类型，具体示例代码如下：
自定义Users类：
class Users{
	priva...]]></description><category></category></item><item><title><![CDATA[SpringBoot集成Thymeleaf及Thymeleaf常见语法]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/88978015</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/88978015</guid><author>king_cannon_fodder</author><pubDate>Tue, 02 Apr 2019 18:19:36 +0800</pubDate><description><![CDATA[一、Thymeleaf概述
1.1 Thymeleaf是一个流行的模板引擎，该模板引擎采用Java语言开发；
1.2 模板引擎是一个技术名词，是跨领域跨平台的概念，在Java语言体系下有模板引擎，在C#、PHP语言体系下也有模板引擎，甚至在JavaScript中也会用到模板引擎技术；
1.3 Java生态下的模板引擎有 Thymeleaf 、Freemaker、Velocity、Beetl（国产）...]]></description><category></category></item><item><title><![CDATA[SpringBoot整合servlet、filter、listener]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/88955445</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/88955445</guid><author>king_cannon_fodder</author><pubDate>Mon, 01 Apr 2019 19:38:02 +0800</pubDate><description><![CDATA[一、整合Servlet
1.1 通过注解扫描完成Servlet注解
1.1.1 编写Servlet
/**
*SpringBoot 整合 Servlet 方式一
*
*&lt;servlet&gt;
*	&lt;servlet-name&gt;FirstServlet&lt;/servlet-name&gt;
*	&lt;servlet-class&gt;com.bjsxt.servlet.Fir...]]></description><category></category></item><item><title><![CDATA[SpringBoot服务端表单数据校验]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/88936914</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/88936914</guid><author>king_cannon_fodder</author><pubDate>Sun, 31 Mar 2019 22:15:39 +0800</pubDate><description><![CDATA[一、SpringBoot对表单校验的技术特点
1.1 SpringBoot 中使用了 Hibernate-validate 校验框架。
1.2 SpringBoot表单数据校验步骤
1.2.1 在实体类中添加数据校验规则
   public class Users {
		@NotBlank //非空校验
		private String name;
		@NotBlank //密码非空校验
		...]]></description><category></category></item><item><title><![CDATA[Spring Boot使用SpringLoader与DevTools实现热部署]]></title><link>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/88935251</link><guid>https://blog.youkuaiyun.com/king_cannon_fodder/article/details/88935251</guid><author>king_cannon_fodder</author><pubDate>Sun, 31 Mar 2019 20:52:55 +0800</pubDate><description><![CDATA[一、以 maven 插件方式使用 SpringLoader
1.1 在pom文件中配置插件
&lt;!-- springloader 插件 --&gt;
&lt;build&gt;
	&lt;plugins&gt;
		&lt;plugin&gt;
			&lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
			&lt;artifactI...]]></description><category></category></item></channel></rss>