<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[To_yan的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/To_yan</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; To_yan]]></copyright><item><title><![CDATA[Git(1) -- git stash 储藏与清理]]></title><link>https://blog.youkuaiyun.com/To_yan/article/details/101197884</link><guid>https://blog.youkuaiyun.com/To_yan/article/details/101197884</guid><author>To_yan</author><pubDate>Mon, 23 Sep 2019 15:10:33 +0800</pubDate><description><![CDATA[git stash使用场景及方式
由于通常都是使用idea上的git插件，通过插件提供的功能来操作git。对实际的git工作流中遇到的许多问题总是不明不白。现在就慢慢一个个点看文档来理清楚。
  简单而言，git stash就是用于处理已改动而未提交的工作目录状态。
  举例来讲，当前需要在分支A上实现一个功能F1, 现在功能F1实现了一半，但需要优先切换到分支B修复bug1 。
  这个时候，我...]]></description><category></category></item><item><title><![CDATA[Java 中几个不常用的关键字]]></title><link>https://blog.youkuaiyun.com/To_yan/article/details/77431714</link><guid>https://blog.youkuaiyun.com/To_yan/article/details/77431714</guid><author>To_yan</author><pubDate>Sun, 20 Aug 2017 19:03:52 +0800</pubDate><description><![CDATA[transient : 如果类中的一个成员变量声明为 transient ，那么当对象进行持久化存储时，不会保存这个变量的值。例如：public class Entity {
    String s1;
    transient String s2;
    public class Entity(String s1, String s2){
        this.s1 = s1;]]></description><category></category></item><item><title><![CDATA[ThreadLocal]]></title><link>https://blog.youkuaiyun.com/To_yan/article/details/77053472</link><guid>https://blog.youkuaiyun.com/To_yan/article/details/77053472</guid><author>To_yan</author><pubDate>Thu, 10 Aug 2017 21:47:33 +0800</pubDate><description><![CDATA[ThreadLocal的核心是：每个线程都可以通过ThreadLocal对象的 get 或 set 方法来访问属于自己的，独立初始化的变量拷贝。ThreadLocal 介绍
我们想要在多线程当中拥有某个类的多个独立的私有化实例对象而不造成冲突。每个对象唯一对应一个线程。这其中（指ThreadLocal）便是实现了线程安全。
有一点需要注意的是，ThreadLocal变量是全局可访问的。我们可以从线程]]></description><category></category></item><item><title><![CDATA[Resource interpreted as Stylesheet but transferred with MIME type text/plain]]></title><link>https://blog.youkuaiyun.com/To_yan/article/details/77018892</link><guid>https://blog.youkuaiyun.com/To_yan/article/details/77018892</guid><author>To_yan</author><pubDate>Thu, 10 Aug 2017 01:38:48 +0800</pubDate><description><![CDATA[原本静态资源一直能正常访问，然后写着写着突然就冒出这么个错误，而且所有的静态文件都变成了html文件，无法访问。页面中有多少个静态文件的引用就转变成为对当前页面的多少次访问。。 
查了好久大都是各种扯。。 
最后总算还是找到原因，与下面参考的文章里的作者遇到的情况不同，他的是添加了过滤器，但我只是给servlet添加了一个 “/” 的url，没想到这也会屏蔽了所有的静态文件。而且至于为什么会转变为当]]></description><category></category></item><item><title><![CDATA[nginx location的配置]]></title><link>https://blog.youkuaiyun.com/To_yan/article/details/76982706</link><guid>https://blog.youkuaiyun.com/To_yan/article/details/76982706</guid><author>To_yan</author><pubDate>Wed, 09 Aug 2017 13:07:46 +0800</pubDate><description><![CDATA[基本原则： 首先匹配确定的前缀，采用最长匹配原则，记下最长匹配的前缀
如果最长匹配前缀带有* ^~*， 则直接使用最长匹配前缀，不会进行正则表达式匹配，否则继续第3步。
在匹配正则表达式，按照正则表达式出现的顺序进行匹配
一旦找到一个匹配的正则表达式，则正则表达式搜索停止，并且使用该表达式
如果找不到则使用最长匹配前缀
符号规则：=   表示完全匹配，如果匹配到则停止搜索
~  后接大小写敏感的正则]]></description><category></category></item><item><title><![CDATA[Git常用操作总结]]></title><link>https://blog.youkuaiyun.com/To_yan/article/details/76945946</link><guid>https://blog.youkuaiyun.com/To_yan/article/details/76945946</guid><author>To_yan</author><pubDate>Wed, 09 Aug 2017 02:36:02 +0800</pubDate><description><![CDATA[Gti 安装、仓库创建，提交，
撤销修改， 
撤销commit， 
查看提交记录，
分支操作，
与远程仓库协作，
标签的使用 git tag,
存储分支工作现场 git stash]]></description><category></category></item><item><title><![CDATA[tomcat 小问题个人汇总]]></title><link>https://blog.youkuaiyun.com/To_yan/article/details/76766934</link><guid>https://blog.youkuaiyun.com/To_yan/article/details/76766934</guid><author>To_yan</author><pubDate>Sun, 06 Aug 2017 13:25:07 +0800</pubDate><description><![CDATA[访问权限问题
对于manager页面，在已经设置了用户和manager-gui, manager-script权限之后，仍然报403权限问题  Manager 403 Access Denied: You are not authorized to view this page.  
  By default the Manager is only accessible from a browser]]></description><category></category></item><item><title><![CDATA[深夜记一个大坑：illegalStateException:can not perform this action after onSaveInstanceState]]></title><link>https://blog.youkuaiyun.com/To_yan/article/details/52236901</link><guid>https://blog.youkuaiyun.com/To_yan/article/details/52236901</guid><author>To_yan</author><pubDate>Thu, 18 Aug 2016 05:26:47 +0800</pubDate><description><![CDATA[好吧，其实重点不在于这个Excpetion…项目采用了MVP模式，有1个Activity，3个Fragment，通过Presenter来切换Fragment，其中，Presenter中创建并保存了这3个Fragment的实例（避免不断的重复创建新的实例）我在用AlarmManager设置了一个闹铃提醒（其context 是MainActivity）， 
这个提醒会启动一个BroadcastRecei]]></description><category></category></item><item><title><![CDATA[Build a Material Design App with the Android Design Support Library]]></title><link>https://blog.youkuaiyun.com/To_yan/article/details/52016910</link><guid>https://blog.youkuaiyun.com/To_yan/article/details/52016910</guid><author>To_yan</author><pubDate>Sun, 24 Jul 2016 22:40:27 +0800</pubDate><description><![CDATA[对谷歌Build a Material Design App with the Android Design Support Library的要点记录Themes and Colors
Themes 
    使AppTheme继承自parent="Theme.AppCompat.Light.NoActionBar 以移除默认的ActionBar
Colors 
colorPrimaryDark :]]></description><category></category></item><item><title><![CDATA[kotlin基础]]></title><link>https://blog.youkuaiyun.com/To_yan/article/details/51881818</link><guid>https://blog.youkuaiyun.com/To_yan/article/details/51881818</guid><author>To_yan</author><pubDate>Thu, 14 Jul 2016 02:05:07 +0800</pubDate><description><![CDATA[kotlin 语言特性
kotlin中一切皆为对象 
没有像java一般的基本数据类型，数值类型为：Int, Float, Double等
函数也是对象，可作为参数和返回值
自然就会有高阶函数和lambda
语法特性及规范
语句结尾不用分号
使用驼峰命名，尽量避免下划线
public函数应当有说明文档
lambda中花括号内前后都应该有空格
一、变量1. 变量声明：
只读变量： val a: Int]]></description><category></category></item><item><title><![CDATA[提高你使用android studio的效率之键盘篇]]></title><link>https://blog.youkuaiyun.com/To_yan/article/details/51033611</link><guid>https://blog.youkuaiyun.com/To_yan/article/details/51033611</guid><author>To_yan</author><pubDate>Sun, 10 Apr 2016 21:13:34 +0800</pubDate><description><![CDATA[一、 默认快捷键提高开发工具使用效率,首先必谈的就是快捷键了,首先， 在IDE自带的快捷键中，常用的也不过二十来个，对于这些常用的操作，我们当然是希望按键越少越好，能按1个键完成不用2个键，能2个键完成坚决不用3个键，然而IDE默认的按键并不完全符合我们的要求，这个时候当然就是改改改啦。接下来按照各类操作来介绍：
补全+修正+提示（必备）
  操作
  按键
  备注  自动修正
  Alt  + E]]></description><category></category></item><item><title><![CDATA[python面向对象特性----mutable, immutable, 函数传参]]></title><link>https://blog.youkuaiyun.com/To_yan/article/details/50488759</link><guid>https://blog.youkuaiyun.com/To_yan/article/details/50488759</guid><author>To_yan</author><pubDate>Sat, 09 Jan 2016 17:31:08 +0800</pubDate><description><![CDATA[最近在用C语言做一个课程设计的时候没注意到结构体赋值传的只是指针，程序调试了一下午，被整得不要不要的，到晚上才智商爆发突然想到可能是赋值问题，感觉都心累了。 
   为什么会想到这件事？下面我们会提到python中的变量就像C语言中的指针变量 ，指针无处不在有木有，为什么说像呢，因为还不了解底层实现，不敢百分之百确定哈。1、 python面向对象的实质
python 的完全面向对象是指内存中的对象，]]></description><category></category></item><item><title><![CDATA[php基础  一（20150925）]]></title><link>https://blog.youkuaiyun.com/To_yan/article/details/48746565</link><guid>https://blog.youkuaiyun.com/To_yan/article/details/48746565</guid><author>To_yan</author><pubDate>Sat, 26 Sep 2015 01:05:05 +0800</pubDate><description><![CDATA[第一种特殊类型—资源文件if( file_exists("test.txt")){   //判断文件是否存在
    echo 'file text.txt exists';
}else{
    echo 'file text.txt doesn\'t exist';
}
$file = fopen("test.txt","r"); //成功则返回一个文件指正资源，失败返回false
if($fi]]></description><category></category></item><item><title><![CDATA[安卓 socket简单使用]]></title><link>https://blog.youkuaiyun.com/To_yan/article/details/48373013</link><guid>https://blog.youkuaiyun.com/To_yan/article/details/48373013</guid><author>To_yan</author><pubDate>Fri, 11 Sep 2015 15:01:36 +0800</pubDate><description><![CDATA[1. socket与服务器的简单交互

Socket socket = new Socket("192.168.23.2", 8080);
//向服务器写数据
OutputStream os = socket.getOutputStream();
OutputStreamWriter osw = new OutputStreamWriter(os);
BufferWriter bw = new B]]></description><category></category></item><item><title><![CDATA[安卓中SQLite的简单使用]]></title><link>https://blog.youkuaiyun.com/To_yan/article/details/48217563</link><guid>https://blog.youkuaiyun.com/To_yan/article/details/48217563</guid><author>To_yan</author><pubDate>Sat, 05 Sep 2015 01:07:53 +0800</pubDate><description><![CDATA[一、创建类继承自SQLiteOpenHelperSQLiteOpenHelper 是安卓中创建数据库的一个帮助类，至少实现其中的onCreate和onUpgrade方法。 
SQLiteOpenHelper 的方法：
  方法
  作用  onCreate(SQLiteDatabase db)
  创建数据库时调用
  onUpgrade( SQLiteDatabase db,int oldVers]]></description><category></category></item><item><title><![CDATA[DatePicker和TimePicker的使用]]></title><link>https://blog.youkuaiyun.com/To_yan/article/details/48175703</link><guid>https://blog.youkuaiyun.com/To_yan/article/details/48175703</guid><author>To_yan</author><pubDate>Wed, 02 Sep 2015 11:14:28 +0800</pubDate><description><![CDATA[DatePicker和TimePickerDatePicker常用方法初始化方法： 
    datePicker.init(year, month, day,  
     new OnDateChangedListener() //日期变更监听事件 
    )getDayOfMonth();
getMonth();
getYear();
//最大最小日期，可用Calendar类的getTime]]></description><category></category></item></channel></rss>