<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qq_28060549的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_28060549</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_28060549]]></copyright><item><title><![CDATA[01. Kafka安装]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/103656214</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/103656214</guid><author>qq_28060549</author><pubDate>Sun, 22 Dec 2019 20:05:16 +0800</pubDate><description><![CDATA[1. 安装jdk8；

  2. kafka安装包下载：https://www.apache.org/dyn/closer.cgi?path=/kafka/2.1.0/kafka_2.12-2.1.0.tgz

  3. 解压，并配置环境变量： 


1) vim /etc/profile
2) export KAFKA_HOMNE=/root/work/kafka_2.12...]]></description><category></category></item><item><title><![CDATA[使用指定类加载器动态加载指定的类，并执行其中的指定方法]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/103447716</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/103447716</guid><author>qq_28060549</author><pubDate>Sun, 08 Dec 2019 19:12:25 +0800</pubDate><description><![CDATA[为了适应高可配的需求，例如，动态指定业务逻辑，有时候会将相关的逻辑做成动态载入JVM并进行执行。

  一. 使用根加载器加载：

  1. 查询Bootstrap class loader的加载路径： 


System.out.println(System.getProperty("sun.boot.class.path"));

  2. 设置IDEA，在根加载器加载...]]></description><category></category></item><item><title><![CDATA[1.MongoDB安装]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/93142133</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/93142133</guid><author>qq_28060549</author><pubDate>Fri, 21 Jun 2019 00:00:53 +0800</pubDate><description><![CDATA[将按照以下步骤讲解mongodb。

（1）安装，配置与启动；

（2）mongodb shell操作；

（3）mongodb java编程操作；

（4）springboot集成mongodb；

（5）框架优化。

 本篇讲解mongodb的安装，配置与启动。

1. 环境


Linux：Centos7
MongoDB：mongodb-linux-x86_64-rhel70-4.0.2...]]></description><category></category></item><item><title><![CDATA[WebMvcConfigurer配置ViewController]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/91416021</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/91416021</guid><author>qq_28060549</author><pubDate>Tue, 11 Jun 2019 11:07:53 +0800</pubDate><description><![CDATA[在项目中，即使是静态资源，也应当防止直接访问，而应当通过一个Controller方法来接收访问，然后返回对应的资源。例如，再访问index页面时，通常的做法如下： 


@Controller
public class IndexController {
    
    @RequestMapping(value={"/", "/index"})
    public String...]]></description><category></category></item><item><title><![CDATA[在有序数组中寻找插入某数的位置]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/90239111</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/90239111</guid><author>qq_28060549</author><pubDate>Wed, 15 May 2019 16:22:10 +0800</pubDate><description><![CDATA[public class MyTestMain {

    public static void main(String[] args) {

        int[] arr = {1,2,4};
        int insert = 5;
        System.out.println(findInsertPlace(arr, insert));

    }

    pub...]]></description><category></category></item><item><title><![CDATA[SpringBoot集成Swagger实现API管理]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/90168305</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/90168305</guid><author>qq_28060549</author><pubDate>Mon, 13 May 2019 10:43:04 +0800</pubDate><description><![CDATA[1. 引入依赖


&lt;parent&gt;
        &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
        &lt;artifactId&gt;spring-boot-starter-parent&lt;/artifactId&gt;
        &lt;version&gt;2.1.4.RELEASE&lt...]]></description><category></category></item><item><title><![CDATA[数组实现循环队列]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/89672410</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/89672410</guid><author>qq_28060549</author><pubDate>Mon, 29 Apr 2019 12:44:39 +0800</pubDate><description><![CDATA[package com.queue;

public class LoopQueue {
	
	private int size; //队列有效长度
	
	private int rear; //队尾，可以插入下一数据的位置
	
	private int head; //对头，可以获取数据的第一个位置
	
	private int[] arr;
	
	public LoopQueue() {
	...]]></description><category></category></item><item><title><![CDATA[run as java application和run as Spring boot app]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/89531388</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/89531388</guid><author>qq_28060549</author><pubDate>Fri, 26 Apr 2019 09:38:33 +0800</pubDate><description><![CDATA[启动Springboot程序时，可以采用run as（或debug as） java application或者run as （或debug as） Spring boot app，这两种方式有什么区别呢？

  在入口函数的SpringApplication.run(XXX.class, args);打上断点，分别启动，发现使用run as java application时，mai...]]></description><category></category></item><item><title><![CDATA[SpringBoot自动化配置详解]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/89373734</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/89373734</guid><author>qq_28060549</author><pubDate>Thu, 18 Apr 2019 14:08:19 +0800</pubDate><description><![CDATA[Java是面试对象的编程方式，认为万物皆是对象。抛开静态代码块和内部类，我们可以认为对象其实就是由属性（包括类属性和实例属性）和方法（类方法和实例方法）组成，通过这两者来完成对象的职责（也就是对外暴露的功能）。

  类的属性可以认为是一些状态，方法通过操作这些状态来达到不同的处理结果。外部调用这些类时，需要先配置好这个类的状态，以求得到符合要求的结果，这也就是说，不同的调用方在调用这...]]></description><category></category></item><item><title><![CDATA[1.从入门到精通springcloud - 无注册中心时代]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/89146131</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/89146131</guid><author>qq_28060549</author><pubDate>Tue, 09 Apr 2019 14:29:53 +0800</pubDate><description><![CDATA[本节主要实现在没有使用springcloud的情况下如果调用http服务。我们首先理清一下几个概念：

（1）生产者：即服务的提供者，它的服务可以被其他程序调用，自己内部也可以调用；

（2）消费者：即服务的调用者，它的某些服务依赖于生产者的某个或者某几个服务才能完成。

一个服务可以既是生产者，同时又是消费者。



1.生产者：

（1）pom.xml


&lt;project xmlns...]]></description><category></category></item><item><title><![CDATA[Springboot集成Log4j2]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/88633669</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/88633669</guid><author>qq_28060549</author><pubDate>Mon, 18 Mar 2019 11:12:27 +0800</pubDate><description><![CDATA[1. pom依赖：

（1）web自带的log4j包不全，需要排除，并重新引入：


&amp;lt;dependency&amp;gt;
			&amp;lt;groupId&amp;gt;org.springframework.boot&amp;lt;/groupId&amp;gt;
			&amp;lt;artifactId&amp;gt;spring-boot-starter-web&amp;lt;/artifactId&amp;gt;
			&amp;lt;exclusio...]]></description><category></category></item><item><title><![CDATA[使用ThreadLocal保存当前线程的用户信息]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/88633617</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/88633617</guid><author>qq_28060549</author><pubDate>Mon, 18 Mar 2019 10:02:06 +0800</pubDate><description><![CDATA[1. 在JWTFilter（继承自BasicHttpAuthenticationFilter）的executeLogin方法中做判断，如果登陆成功，则将用户信息存入UserUtil.set(user);

2. UserUtil类：


public class UserUtil {
	
	private UserUtil(){ }
	
	private static final ThreadLo...]]></description><category></category></item><item><title><![CDATA[SpringBoot全局异常处理]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/88633479</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/88633479</guid><author>qq_28060549</author><pubDate>Mon, 18 Mar 2019 09:53:11 +0800</pubDate><description><![CDATA[@RestControllerAdvice
public class ExceptionController {
	
	private final Logger logger = LoggerUtil.getLogger(ExceptionController.class);

    // 捕捉shiro的异常
    @ResponseStatus(HttpStatus.UNAUTHORIZ...]]></description><category></category></item><item><title><![CDATA[数据源配置]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/88633116</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/88633116</guid><author>qq_28060549</author><pubDate>Mon, 18 Mar 2019 09:34:39 +0800</pubDate><description><![CDATA[配置的内容有：DataSource，SqlSessionFactory，DataSourceTransactionManager和SqlSessionTemplate。多数据源的情况下，需要指定Primary。


@Configuration
//basePackages：mapper接口类所在的包路径
@MapperScan(basePackages = "com.yh.dwdat...]]></description><category></category></item><item><title><![CDATA[Spring实战系列-第三章 高级装配]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/88626202</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/88626202</guid><author>qq_28060549</author><pubDate>Sun, 17 Mar 2019 20:43:47 +0800</pubDate><description><![CDATA[环境与Profile
spring.profiles.default

spring.profiles.active

设置上述两参数的方法
作为DispatcherServlet的初始化参数

作为Web应用的上下文参数

作为JNDI条目

作为环境变量

作为JVM的系统属性

在继承测试类上，使用@ActiveProfiles注解设置

在properties文件中设置

条件化配置
@C...]]></description><category></category></item><item><title><![CDATA[Spring实战系列-第二章 装配Bean]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/88606300</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/88606300</guid><author>qq_28060549</author><pubDate>Sat, 16 Mar 2019 21:34:21 +0800</pubDate><description><![CDATA[声明Bean
	构造器注入和Setter方法注入
	装配Bean
	控制bean的创建和销毁
  任何一个应用都是由多个为了完成某一业务目标而相互协作的组件构成，且构件之间必须彼此了解，并且相互协作来完成工作。

  创建应用对象之间协作关系的行为称装配（wiring），这也是依赖注入(DI)的本质。



配置Spring容器：
XML中显式配置
	在java中进行显式配置：JavaC...]]></description><category></category></item><item><title><![CDATA[Configuration注解]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/88605823</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/88605823</guid><author>qq_28060549</author><pubDate>Sat, 16 Mar 2019 21:08:06 +0800</pubDate><description><![CDATA[该注解需要@ComponentScan扫描才能进行bean注册，否则对应的@Bean不会注册到IOC容器。

 @Configuration的源代码如下：


@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Component
public @interface Configurati...]]></description><category></category></item><item><title><![CDATA[springBoot2.0的actuator配置]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/88355488</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/88355488</guid><author>qq_28060549</author><pubDate>Fri, 08 Mar 2019 17:36:12 +0800</pubDate><description><![CDATA[springboot2.0版本默认不会将所有断点暴露，需要以下配置：


#actuator端口
management.server.port=8310
 
#修改访问路径，2.0之前默认是/，2.0默认是/actuator
management.endpoints.web.base-path=/actuator
 
#开放所有页面节点 ，默认只开启了health、info两个节点
managem...]]></description><category></category></item><item><title><![CDATA[Mybatis中的批量修改，批量删除，批量新增，和新增后返回主键]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/88308536</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/88308536</guid><author>qq_28060549</author><pubDate>Thu, 07 Mar 2019 15:46:04 +0800</pubDate><description><![CDATA[1.批量修改，批量删除，批量新增

  1）批量更新


	&amp;lt;update id=&quot;dwdatalink_delete_task_instances_byids&quot; parameterType=&quot;java.util.Map&quot;&amp;gt; 		
		UPDATE
			data_link_task_run
		SET
			is_deleted = '1',
			sys_update = C...]]></description><category></category></item><item><title><![CDATA[React Table组建配置]]></title><link>https://blog.youkuaiyun.com/qq_28060549/article/details/88052658</link><guid>https://blog.youkuaiyun.com/qq_28060549/article/details/88052658</guid><author>qq_28060549</author><pubDate>Fri, 01 Mar 2019 11:32:26 +0800</pubDate><description><![CDATA[&amp;lt;Table
    bordered
    pagination={{position : 'both', pageSize: 5}}
    onChange={this.handleStandardTableChange}  //排序，筛选，换页
    columns={this.columns}
    dataSource={this.state.jobs}         ...]]></description><category></category></item></channel></rss>