<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[chen2016的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/chen2016</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; chen2016]]></copyright><item><title><![CDATA[AutoCAD之DWF三维信息提取---linux编译篇]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/137698586</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/137698586</guid><author>chen2016</author><pubDate>Fri, 12 Apr 2024 23:48:21 +0800</pubDate><description><![CDATA[创建dev 写工程源文件，include放置第三方头文件，lib放置编译好的第三方静态和动态链接库，也即jsoncpp(用哪个版本就用哪个版本的头文件），dwfcore，dwftoolkit （src目录中的头文件）注意生成动态链接库的时候，如果其他链接的是静态链接库，会提示我用fpic编译，即使用fpic编译其他链接库，也依然报错，所以最后直接用动态链接库链接。具体使用时，Linux下，小工程可手动写Makefile，大工程用automake来帮你生成Makefile，要想跨平台，就用cmake。]]></description><category></category></item><item><title><![CDATA[Netty04-优化与源码]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/122032624</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/122032624</guid><author>chen2016</author><pubDate>Sun, 19 Dec 2021 23:56:26 +0800</pubDate><description><![CDATA[四. 优化与源码
1. 优化
1.1 扩展序列化算法
序列化，反序列化主要用在消息正文的转换上

序列化时，需要将 Java 对象变为要传输的数据（可以是 byte[]，或 json 等，最终都需要变成 byte[]）
反序列化时，需要将传入的正文数据还原成 Java 对象，便于处理

目前的代码仅支持 Java 自带的序列化，反序列化机制，核心代码如下
// 反序列化
byte[] body = new byte[bodyLength];
byteByf.readBytes(body);
ObjectIn]]></description><category></category></item><item><title><![CDATA[Netty03-进阶]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/122032617</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/122032617</guid><author>chen2016</author><pubDate>Sun, 19 Dec 2021 23:55:54 +0800</pubDate><description><![CDATA[三. Netty 进阶
1. 粘包与半包
1.1 粘包现象
服务端代码
public class HelloWorldServer {
    static final Logger log = LoggerFactory.getLogger(HelloWorldServer.class);
    void start() {
        NioEventLoopGroup boss = new NioEventLoopGroup(1);
        NioEventLoopGroup worke]]></description><category></category></item><item><title><![CDATA[Netty02-入门]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/122032599</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/122032599</guid><author>chen2016</author><pubDate>Sun, 19 Dec 2021 23:55:05 +0800</pubDate><description><![CDATA[二. Netty 入门
1. 概述
1.1 Netty 是什么？
Netty is an asynchronous event-driven network application framework
for rapid development of maintainable high performance protocol servers &amp; clients.

Netty 是一个异步的、基于事件驱动的网络应用框架，用于快速开发可维护、高性能的网络服务器和客户端
1.2 Netty 的作者
[外]]></description><category></category></item><item><title><![CDATA[Netty01-nio]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/122032586</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/122032586</guid><author>chen2016</author><pubDate>Sun, 19 Dec 2021 23:54:25 +0800</pubDate><description><![CDATA[一. NIO 基础
non-blocking io 非阻塞 IO
1. 三大组件
1.1 Channel &amp; Buffer
channel 有一点类似于 stream，它就是读写数据的双向通道，可以从 channel 将数据读入 buffer，也可以将 buffer 的数据写入 channel，而之前的 stream 要么是输入，要么是输出，channel 比 stream 更为底层
#mermaid-svg-Peaedb4R7RNvzQ8Q .label{font-family:'trebuche]]></description><category></category></item><item><title><![CDATA[编写脚本:后台运行java程序]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/118701032</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/118701032</guid><author>chen2016</author><pubDate>Tue, 13 Jul 2021 15:36:24 +0800</pubDate><description><![CDATA[1. 编写start.sh

解析
nohup java -Dfile.encoding=GBK -Xmx3000M -cp ./lib/PrdCommon.jar:./lib/PrjTrade.jar com.ylink.TradeServer &gt;output.log 2&gt;&amp;1 &amp;
tail -f output.log


说明:
1)nohup代表忽略hup挂起信号,即不挂起
2)java代表启动java程序的java命令
3)-Dfile.encoding=GBK代表设置J]]></description><category></category></item><item><title><![CDATA[图片上传(ftp+vue+springboot+ruoyi)]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/117827186</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/117827186</guid><author>chen2016</author><pubDate>Fri, 11 Jun 2021 21:37:16 +0800</pubDate><description><![CDATA[图片上传(ftp+vue+springboot+ruoyi)
1. 问题分析:


前端通过el-upload实现图片上传
后端获取到MultipartFile类型的数据，将图片上传到ftp服务器上，然后返回上传后的相对路径，并返回给前端
前端拿到返回后的相对路径（url），存入form表单，一起传给后端，保存到数据库
前端通过请求得到的url，拼凑http字符串赋给src进行显示


2. 后端上传工具类：


文件上传到ftp服务器的工具类FtpUtils

upload上传文件到ftp服务器
down]]></description><category></category></item><item><title><![CDATA[python面向对象语法]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/113617516</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/113617516</guid><author>chen2016</author><pubDate>Wed, 03 Feb 2021 18:58:04 +0800</pubDate><description><![CDATA[面向对象编程


面向对象编程——Object Oriented Programming，简称OOP，是一种程序设计思想。OOP把对象作为程序的基本单元，一个对象包含了数据和操作数据的函数。


在Python中，所有数据类型都可以视为对象，当然也可以自定义对象。自定义的对象数据类型就是面向对象中的类（Class）的概念


例如：
class Student(object):

    def __init__(self, name, score):
        self.name = name
  ]]></description><category></category></item><item><title><![CDATA[python语法进阶]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/113617504</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/113617504</guid><author>chen2016</author><pubDate>Wed, 03 Feb 2021 18:57:13 +0800</pubDate><description><![CDATA[高级特性
1.1切片


取一个list或tuple的部分元素是非常常见的操作


切片的第一个冒号左右的数字表示的是位置信息


取前N个元素，也就是索引为0-(N-1)的元素，可以用循环：
&gt;&gt;&gt;  L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack']
&gt;&gt;&gt; r = []
&gt;&gt;&gt; n = 3
&gt;&gt;&gt; for i in range(n):
...     r.append(L[i])
..]]></description><category></category></item><item><title><![CDATA[廖雪峰Python基础笔记]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/113617491</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/113617491</guid><author>chen2016</author><pubDate>Wed, 03 Feb 2021 18:56:22 +0800</pubDate><description><![CDATA[python
1.第一个python程序

交互模式（&gt;&gt;&gt;）退出用exit（）
打印使用print()函数，打印的内容可以用单引号或者双引号括起来，但是不能够混用
命令行模式，可以输入python进入交互模式，也可以通过命令 python hello.py 来运行一个python文件
交互模式下查看py文件内容的命令 more hello.py，前提是在对应的文件目录下
交互模式下接收输入name=input() 然后通过name可以输出内容

2.python基础

注释以#号开头就是]]></description><category></category></item><item><title><![CDATA[AES]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/113358155</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/113358155</guid><author>chen2016</author><pubDate>Thu, 28 Jan 2021 20:45:31 +0800</pubDate><description><![CDATA[AES
问题：

密钥为十六进制的字符串
密文为十六进制的字符串

AES操作过程


加密
//1.将明文转化为字节数组
 byte[] data = message.getBytes("UTF-8");
// 2.将密钥也转为字节数组
byte[] key=...
// 3. 加密 encrypted
// 3.1 创建cipher （译为密码
     Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding");// 模式，填充
// 3.2 ]]></description><category></category></item><item><title><![CDATA[购买和搭建阿里云服务器]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/113244294</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/113244294</guid><author>chen2016</author><pubDate>Wed, 27 Jan 2021 11:28:40 +0800</pubDate><description><![CDATA[购买步骤


购买学生机
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wiPRpY2A-1611717813841)(C:\Users\hello\AppData\Roaming\Typora\typora-user-images\image-20201101103127574.png)]


获取服务器公网ip，修改实例名称和密码，重启Linux
学生机界面
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uVtnp3nG-161171781]]></description><category></category></item><item><title><![CDATA[linux]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/113244117</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/113244117</guid><author>chen2016</author><pubDate>Wed, 27 Jan 2021 11:22:08 +0800</pubDate><description><![CDATA[Linux常用的基本命令
用户主目录一般为root目录。而cd /则可以打开根目录。
cp --h 或  man 命令类似的–h可以查看命令的使用
目录管理：
ls 
ls -a 所有目录包括隐藏文件
ls -l 包含文件的权限和属性

cd 
cd .. 打开上一级目录
cd 	~ 打开用户主目录 cd root也是打开主目录
cd /root/chen/dir2  通过绝对路径查找文件
cd / 打开根目录，所有文件都挂在根目录下
pwd 当前所在文件夹

mkdir 创建一个目录
rmdir 删除一个]]></description><category></category></item><item><title><![CDATA[docker]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/113242223</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/113242223</guid><author>chen2016</author><pubDate>Wed, 27 Jan 2021 11:19:05 +0800</pubDate><description><![CDATA[docker的安装


查看系统版本
[root@iz2ze9n36uysr6g8wtg6nsz /]# cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_U.]]></description><category></category></item><item><title><![CDATA[git&github]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/112984479</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/112984479</guid><author>chen2016</author><pubDate>Fri, 22 Jan 2021 14:41:57 +0800</pubDate><description><![CDATA[基本概念
一


Repository 仓库


Star  收藏项目


Fork  复制仓库，独立存在


Pull Request：发起请求 fork的仓库，修改之后，pull request给原来的账号的仓库，如果有感觉不错可以合并到原仓库中


Watch 关注 关注后的仓库，当仓库发生改变时，可以在主页上看到


Issue 事务卡片 可用来讨论代码bug


二


GitHub主页
左侧显示动态，右侧自己的信息


仓库主页
项目代码，版本，收藏关注fork


个人主页


创建项目/仓库]]></description><category></category></item><item><title><![CDATA[初始redis记录]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/111603654</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/111603654</guid><author>chen2016</author><pubDate>Thu, 24 Dec 2020 09:42:00 +0800</pubDate><description><![CDATA[# 1.文档型数据库
MongoDB
#2.图片
分布式文件系统FastDFS
- hadoop : HDFS
-淘宝 ： TDS
- 阿里云 ：OOS
# 3.搜索
- Isearch 多隆
- 搜索引擎 elasticSearch
# 4.内存数据库
redis
# 5.思想层面的提高远比知识更重要
# 列存储数据库
HBase
#key-value数据库
cc

Redis

内存存储
高速缓存
发布订阅系统
地图信息

在linux服务器上搭建redis:





连接：


切换数据库

red]]></description><category></category></item><item><title><![CDATA[springcloud]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/111571455</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/111571455</guid><author>chen2016</author><pubDate>Wed, 23 Dec 2020 08:47:39 +0800</pubDate><description><![CDATA[背景
微服务
# 微服务解决的四个核心问题
1. 服务有很多，客户端怎么访问
2. 这么多服务之间如果通信
3. 这么服务如何治理
4. 服务挂了怎么办

# 微服务的解决方案
1. Spring Cloud NetFlix 一站式解决方案
	api网关 ————》 zuul组件
	Fegin-----》httpClient------》http通信的方式，同步，阻塞
	服务注册与发现------》Eureka
	熔断机制----------》 Hystrix
	


2. apache Dubbo + Z]]></description><category></category></item><item><title><![CDATA[SpringMVC常用注解&请求参数绑定&回显]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/110981907</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/110981907</guid><author>chen2016</author><pubDate>Thu, 10 Dec 2020 20:31:17 +0800</pubDate><description><![CDATA[@RequestMapping


path 指定请求路径的url


value value属性和path属性是一样的


mthod 指定该方法的请求方式


params 指定限制请求参数的条件


headers 发送的请求中必须包含的请求头



PostMapping
GetMapping

请求参数绑定

1.收集普通参数


提交表单的name名称与参数名称相同即可（get方式一样可以获取）


区分大小写


不同的话的可以使用@Requestparam
(@RequestParam(va]]></description><category></category></item><item><title><![CDATA[SpringMVC快速使用]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/110978924</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/110978924</guid><author>chen2016</author><pubDate>Thu, 10 Dec 2020 20:24:23 +0800</pubDate><description><![CDATA[感悟：

总体上理解知识点，先抓住知识点的脉络，再去抠细节，效率更高

SpringMVC快速入门使用
注意：
必须配置tomcat的deployment

注解开发注意
同时必须完成"/"的映射，及相当于设置了首页，不然核心控制器的url-pattern写为/的话一直报错。
  @RequestMapping("/")
    public String index(){
        return "cc";
    }

1.配置的方式开发SpringMVC
目的：帮助理解原理
1.1创建项目导入依]]></description><category></category></item><item><title><![CDATA[mysql主从复制]]></title><link>https://blog.youkuaiyun.com/chen2016/article/details/110941521</link><guid>https://blog.youkuaiyun.com/chen2016/article/details/110941521</guid><author>chen2016</author><pubDate>Wed, 09 Dec 2020 21:38:17 +0800</pubDate><description><![CDATA[环境说明

主从服务器最好数据库的版本都一样
windows为主机，配置文件为my.ini
linux 为从机 配置文件为my.cnf

主机配置
在my.ini中的 mysqlId进行一下配置


主服务器唯一id ：server-id=1


启用二进制日志：log-bin=自己本地的路径/mysqlbin


【可选】启用错误日志：log-err=自己本地的路径/mysqlerr


【可选】read-only=0 主机读写都可以


【可选】binlog-ignore-db=mysql 设置不要复.]]></description><category></category></item></channel></rss>