<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[”当坚冰还盖着北海的时候，我看到了怒放的梅花“]]></title><description><![CDATA[哈喽~欢迎光临]]></description><link>https://www.civilighteterna.top</link><image><url>https://www.civilighteterna.top/innei.svg</url><title>”当坚冰还盖着北海的时候，我看到了怒放的梅花“</title><link>https://www.civilighteterna.top</link></image><generator>Shiro (https://github.com/Innei/Shiro)</generator><lastBuildDate>Mon, 04 May 2026 09:22:26 GMT</lastBuildDate><atom:link href="https://www.civilighteterna.top/feed" rel="self" type="application/rss+xml"/><pubDate>Mon, 04 May 2026 09:22:26 GMT</pubDate><language><![CDATA[zh-CN]]></language><item><title><![CDATA[20岁生日纪念]]></title><description><![CDATA[<div><blockquote>该渲染由 Shiro API 生成，可能存在排版问题，最佳体验请前往：<a href="https://www.civilighteterna.top/notes/11">https://www.civilighteterna.top/notes/11</a></blockquote><p>今天过得异常忙碌，往后的人生可能也都如此吧。高中后整个人一直再阴霾中，很难说真正走出来。
  20岁了，今年要冲实习，准备是否考研，加油吧，准备简历了该，成功之时再矫情了。
  <a href="https://cdn.jsdelivr.net/gh/CivilightEterna/img_bed@main/img01/%E5%B0%B1%E7%94%B1%E6%88%91%E4%BE%86%E5%B0%87%E5%AE%83%E7%B5%90%E6%9D%9F%E6%8E%89.jpg"></a></p><p style="text-align:right"><a href="https://www.civilighteterna.top/notes/11#comments">看完了？说点什么呢</a></p></div>]]></description><link>https://www.civilighteterna.top/notes/11</link><guid isPermaLink="true">https://www.civilighteterna.top/notes/11</guid><dc:creator><![CDATA[ce]]></dc:creator><pubDate>Wed, 18 Mar 2026 15:08:02 GMT</pubDate></item><item><title><![CDATA[java动态代理]]></title><description><![CDATA[<link rel="preload" as="image" href="https://cdn.jsdelivr.net/gh/CivilightEterna/img_bed@main/img01/%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202025-12-26%20221059.png"/><link rel="preload" as="image" href="https://cdn.jsdelivr.net/gh/CivilightEterna/img_bed@main/img01/%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202025-12-26%20220946.png"/><div><blockquote>该渲染由 Shiro API 生成，可能存在排版问题，最佳体验请前往：<a href="https://www.civilighteterna.top/posts/default/Java-Dynamic-Proxy">https://www.civilighteterna.top/posts/default/Java-Dynamic-Proxy</a></blockquote><div><h1 id="">什么是动态代理？</h1><p>  <strong>java的动态代理是一种在运行时动态创建代理对象的机制，主要用于在不修改原始类的情况下对方法调用进行拦截和增强。</strong><br/>  动态代理是一种方便运行时动态构建代理、动态处理代理方法调用的机制，很多场景都是利用类似机制做到的，比如用来包装 RPC 调用、面向切面的编程（AOP）。</p><h1 id="">关于动态代理的一些问题</h1><h2 id="1">1.为什么需要代理？</h2><p>  代理可以无侵入式的给对象增强其他的功能</p><h2 id="2">2.代理长什么样？</h2><p>  代理里面就是对象要被代理的方法</p><h2 id="3java">3.java通过什么来保证代理的样子？</h2><p>  通过接口来保证，后面的对象和代理需要实现同一个接口，接口中就是被代理的所有方法。</p><h1 id="">代码例子</h1><blockquote><p>说白了，动态代理就是用于<strong>功能增强</strong>，且避免了侵入式的修改</p></blockquote>
<ul><li><p>情景：来自黑马的鸡哥与经济公司
  <img src="https://cdn.jsdelivr.net/gh/CivilightEterna/img_bed@main/img01/%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202025-12-26%20221059.png" alt="截图2025-12-26 221059"/></p><h2 id="star">接口Star</h2><pre class="language-java lang-java"><code class="language-java lang-java">public interface Star {
  public  abstract String sing(String name);
  public abstract void dance (String  name);
}</code></pre><h2 id="bigstar">实现类BigStar</h2><pre class="language-java lang-java"><code class="language-java lang-java">public class BigStar implements Star{
  private String name;
  public BigStar() {
  }
   public BigStar(String name) {
      this.name = name;
  }
  //唱歌 跳舞
  @Override
  public String sing(String name){
      System.out.println(name+&quot;正在唱歌&quot;);
      return &quot;谢谢&quot;;
  }
  @Override
  public void dance(String name){
      System.out.println(name+&quot;正在跳舞&quot;);
  }
  /**
   * 获取
   * @return name
   */
  public String getName() {
      return name;
  }
  /**
   * 设置
   * @param name
   */
  public void setName(String name) {
      this.name = name;
  }

  public String toString() {
      return &quot;BigStar{name = &quot; + name + &quot;}&quot;;
  }
}</code></pre></li></ul><h2 id="">代理类</h2><pre class="language-java lang-java"><code class="language-java lang-java">import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;

public class ProUtil {
    //public static Object newProxyInstance(ClassLoader loder, Class&lt;?&gt; interface, InvocationHandler h)
    /*
     *参数一:用于指定用哪个类加载器。去加载生成的代理类
     *参数二:指定接口，这些接口用于指定生成的代理长什么样，也就是有哪些方法
     *参数三：用来指定生成的代理对象要干什么事
     */
    public static Star createProxy(BigStar bigStar){
        Star star = (Star) Proxy.newProxyInstance(
                ProUtil.class.getClassLoader(),
                new Class[] {Star.class},
                new InvocationHandler() {
                    @Override
                    public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
                        /**
                         * proxy:代理对象
                         * method:正在调用的方法
                         * args:调用方法时传入的参数
                         */
                        if (method.getName().equals(&quot;sing&quot;)) {
                            System.out.println(&quot;开始代理，准备话筒&quot;);
                        }
                        if (method.getName().equals(&quot;dance&quot;)) {
                            System.out.println(&quot;开始代理，准备场地&quot;);
                        }
                        return method.invoke(bigStar, args);
                    }
                }
                );
        return star;
    }
}</code></pre><h2 id="">运行结果</h2><img src="https://cdn.jsdelivr.net/gh/CivilightEterna/img_bed@main/img01/%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202025-12-26%20220946.png" alt="截图2025-12-26 220946"/><h1 id="">为什么非要用代理而不是直接调用</h1><blockquote><p>来自d指导</p></blockquote>
<p>与直接调用相比，使用动态代理有以下几个重要原因：<br/>●1. 解耦业务逻辑与横切关注点：在企业应用中，像日志记录、事务管理、权限验证等功能会跨越多个业务模块，这些被称为横切关注点。动态代理允许将这些通用功能与核心业务逻辑分离，避免代码冗余。例如在你提供的代码中，ClientProxy类通过动态代理将远程方法调用的逻辑（如构建请求、与服务端通信等）与具体的业务逻辑分离，使得业务代码更专注于核心功能。<br/>● 2.非侵入式增强：动态代理可以在不修改目标对象代码的前提下，对其功能进行增强，这符合开闭原则。比如你要为现有系统中的多个服务添加日志记录功能，如果直接调用，就需要在每个服务的方法中添加日志代码，这会修改大量的原有代码。而使用动态代理，只需在InvocationHandler的invoke方法中添加日志记录逻辑，就可以为所有代理的服务添加日志功能，无需修改目标服务的代码。<br/>●3. 实现 AOP 编程：动态代理是 AOP（面向切面编程）的核心实现机制。通过动态代理，可以在方法调用前后插入特定的逻辑，如在方法调用前进行权限校验，在方法调用后进行事务提交等。在你的代码中，ClientProxy类的invoke方法就可以看作是一个切面，它在代理对象的方法调用前后执行了构建请求、发送请求和处理响应等逻辑。<br/></p><blockquote><p>AOP 全称 Aspect-Oriented Programming（面向切面编程），核心思想是 将与业务无关、但被多个业务模块共享的逻辑（比如日志、事务、RPC 通信）抽取出来，形成独立的 &quot;切面&quot;，在不修改&gt;业务代码的前提下，动态织入到目标方法的调用流程中。</p></blockquote>
<p>● 4.提高代码的灵活性和可维护性：动态代理在运行时生成代理对象，相比静态代理更加灵活。它可以根据条件动态选择代理策略，支持在运行时配置不同的增强逻辑。例如，在不同的环境下，可以选择不同的序列化方式或传输协议来发送请求，而这些只需要在invoke方法中进行简单的条件判断和配置即可，无需修改大量的代码。同时，由于增强逻辑集中在InvocationHandler中，所以当需要修改或扩展增强逻辑时，只需要在一个地方进行修改，便于维护。<br/></p></div><p style="text-align:right"><a href="https://www.civilighteterna.top/posts/default/Java-Dynamic-Proxy#comments">看完了？说点什么呢</a></p></div>]]></description><link>https://www.civilighteterna.top/posts/default/Java-Dynamic-Proxy</link><guid isPermaLink="true">https://www.civilighteterna.top/posts/default/Java-Dynamic-Proxy</guid><dc:creator><![CDATA[ce]]></dc:creator><pubDate>Fri, 26 Dec 2025 15:56:27 GMT</pubDate></item><item><title><![CDATA[记录 2025 年第 359 天]]></title><description><![CDATA[<link rel="preload" as="image" href="https://cdn.jsdelivr.net/gh/CivilightEterna/img_bed@main/img01/%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202025-12-25%20193810.png"/><link rel="preload" as="image" href="https://cdn.jsdelivr.net/gh/CivilightEterna/img_bed@main/img01/18A557DF795F48B4809DCD0AF461B655.jpg"/><link rel="preload" as="image" href="https://cdn.jsdelivr.net/gh/CivilightEterna/img_bed@main/img01/B489E811DF34CD6B8CD8D0B27425DBCC.jpeg"/><div><blockquote>该渲染由 Shiro API 生成，可能存在排版问题，最佳体验请前往：<a href="https://www.civilighteterna.top/notes/10">https://www.civilighteterna.top/notes/10</a></blockquote><div><p>圣诞节快乐捏,Lo-Fi制作组有心了
<img src="https://cdn.jsdelivr.net/gh/CivilightEterna/img_bed@main/img01/%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202025-12-25%20193810.png"/></p><ul><li>今天看了下rppc的part1,强度还是没有，跟看着玩一样。</li><li>一方面没有做好时间安排，起床一直在打cs.</li><li>再就是没有利用好环境，晚上都在打游戏的时间很难置身事外</li><li>还有就是自己少了刚学cs的<strong>激情</strong>：
&gt;以下发恼骚时间
# 迷茫的学期末
看了不少大佬的路线，看学历现在都焦虑了，想到大概率还有沟槽的考研，自己偏偏就是沟槽的烂心态。再者就是ai的飞速进步吧，自己日常就在依赖ai,想不到自己怎么不被代替。
无力感涌了上来，像一脚踩进了泥沼，自己根本使不上劲。我一直说服自己去热爱这门专业，但是我毕竟不是什么富哥，没有能力去试错，也不敢失败。
设想一个情景：md辛苦学的所谓技术就是curd，简历投出去石沉大海，被迫考研，高考的失败历历在目，自己再一次成了软脚虾，辛苦一年寄了还搞坏了身体，备考也错过了秋招，最后加入失业大军啃老，最后勉强靠个本省还看得过去，出去像个笑话的双非找个跟本专业完全不相干的工作，再快三十岁的时候不得已找了个根本不熟的陌生人搭伙过日子，父母老了还要给我操心，这辈子就这样了，最后在日复一日的重复中麻木，子辈再次重复我的人生。这真的绝望啊。</li></ul><h1 id="">捡起那份少年心气</h1><h2 id="ai">关于ai和计算机的落寞</h2><p>  发了这么多牢骚，生活还得向前。关于ai和计算机落寞这方面，我昨晚在知乎上看到一篇回答
  <a href="https://www.zhihu.com/question/609504646">计算机专业现在真的已经日落西山了吗?</a>，
  里面有一句话很让人触动<strong>那个属于投机者的狂热时代结束了，但属于工程师的伟大时代，才刚刚拉开序幕</strong>，属于计算机的时代远远没有结束，自己只是在做重复的curd，我远远称不上一个cs学生，curd要学，真正的cs的灵魂，那些难啃的代码，让人眼前一亮的底层原理，远远没有被我触及。我或许在焦虑中走的太远，仍然没有逃出18岁的那个&quot;盛夏&quot;。</p>
<h2 id="">重新起航</h2><p>  马上20岁了，我也该走出来了。走好自己的道路，尽管双非真的是个什么沟槽的案底，也要拼一波，心中的那份少年意气不能死，不要在麻木自己了，先认真走下去，别去管那沟槽的未来。2026年，写点代码，做点项目，啃点底层，做点开源，找份实习，好好生活。
  在cs(这个是游戏)中有支我很喜欢的战队，今年一年都在挣扎，世界排名跌倒26名，却在年底最重要的赛事从第一阶段一路杀进决赛，一次次地狱归来，虽然最后战舰没有成功冲上云霄，但这个故事已经足够令人动容。评论区那句“我的青春是大表哥，30台专拍，12次起立，4次major亚军，2次15秒转点，1次安特卫普，0次放弃。”，更是触动人心。
<img src="https://cdn.jsdelivr.net/gh/CivilightEterna/img_bed@main/img01/18A557DF795F48B4809DCD0AF461B655.jpg"/> 
<img src="https://cdn.jsdelivr.net/gh/CivilightEterna/img_bed@main/img01/B489E811DF34CD6B8CD8D0B27425DBCC.jpeg"/>
  希望我也能不放弃自己，2026，地狱归来！
  矫情了这么久明天也该写篇博客了，别沟槽的只会矫情。</p></div><p style="text-align:right"><a href="https://www.civilighteterna.top/notes/10#comments">看完了？说点什么呢</a></p></div>]]></description><link>https://www.civilighteterna.top/notes/10</link><guid isPermaLink="true">https://www.civilighteterna.top/notes/10</guid><dc:creator><![CDATA[ce]]></dc:creator><pubDate>Thu, 25 Dec 2025 15:45:17 GMT</pubDate></item><item><title><![CDATA[记录 2025 年第 358 天]]></title><description><![CDATA[<div><blockquote>该渲染由 Shiro API 生成，可能存在排版问题，最佳体验请前往：<a href="https://www.civilighteterna.top/notes/9">https://www.civilighteterna.top/notes/9</a></blockquote><ul><li>今天沟槽的概率论速成完毕，明天redis重启了xd</li><li>还有rpc代码也要看</li></ul><p style="text-align:right"><a href="https://www.civilighteterna.top/notes/9#comments">看完了？说点什么呢</a></p></div>]]></description><link>https://www.civilighteterna.top/notes/9</link><guid isPermaLink="true">https://www.civilighteterna.top/notes/9</guid><dc:creator><![CDATA[ce]]></dc:creator><pubDate>Wed, 24 Dec 2025 15:03:42 GMT</pubDate></item><item><title><![CDATA[记录 2025 年第 357 天]]></title><description><![CDATA[<link rel="preload" as="image" href="https://cdn.jsdelivr.net/gh/CivilightEterna/img_bed@main/img01/%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202025-12-23%20200135.png"/><div><blockquote>该渲染由 Shiro API 生成，可能存在排版问题，最佳体验请前往：<a href="https://www.civilighteterna.top/notes/8">https://www.civilighteterna.top/notes/8</a></blockquote><div><p>今天依旧没有达到自己心中的核动力效率，还是太难了啊｡:.ﾟヽ(*´∀`)ﾉﾟ.:。
慢慢增强吧</p><ul><li>今天就看了下概率论速成课，看明天应该能看完了。</li><li>开了个小坑，希望明年能玩点开源
<img src="https://cdn.jsdelivr.net/gh/CivilightEterna/img_bed@main/img01/%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202025-12-23%20200135.png" alt="It&#x27;s mygo!!!!!(bushi)"/></li></ul></div><p style="text-align:right"><a href="https://www.civilighteterna.top/notes/8#comments">看完了？说点什么呢</a></p></div>]]></description><link>https://www.civilighteterna.top/notes/8</link><guid isPermaLink="true">https://www.civilighteterna.top/notes/8</guid><dc:creator><![CDATA[ce]]></dc:creator><pubDate>Tue, 23 Dec 2025 15:30:26 GMT</pubDate></item><item><title><![CDATA[记录 2025 年第 355 天]]></title><description><![CDATA[<link rel="preload" as="image" href="https://cdn.jsdelivr.net/gh/CivilightEterna/img_bed@main/img01/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20251221170404_23834_1.jpg"/><div><blockquote>该渲染由 Shiro API 生成，可能存在排版问题，最佳体验请前往：<a href="https://www.civilighteterna.top/notes/7">https://www.civilighteterna.top/notes/7</a></blockquote><ul><li>今天就配了下rpc的环境，还是不想开始学，慢慢有意识克服吧。</li><li>感觉可以开个新坑搞点新鲜感带动下啊。</li><li>今天看下信息天塌了，骑着金盾杯主办方的老冯子高调路过
<img src="https://cdn.jsdelivr.net/gh/CivilightEterna/img_bed@main/img01/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20251221170404_23834_1.jpg"/></li></ul><p style="text-align:right"><a href="https://www.civilighteterna.top/notes/7#comments">看完了？说点什么呢</a></p></div>]]></description><link>https://www.civilighteterna.top/notes/7</link><guid isPermaLink="true">https://www.civilighteterna.top/notes/7</guid><dc:creator><![CDATA[ce]]></dc:creator><pubDate>Sun, 21 Dec 2025 15:34:08 GMT</pubDate></item><item><title><![CDATA[记录 2025 年第 354 天]]></title><description><![CDATA[<link rel="preload" as="image" href="https://cdn.jsdelivr.net/gh/CivilightEterna/img_bed@main/img01/%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202025-12-20%20230120.png"/><div><blockquote>该渲染由 Shiro API 生成，可能存在排版问题，最佳体验请前往：<a href="https://www.civilighteterna.top/notes/6">https://www.civilighteterna.top/notes/6</a></blockquote><p>好几天没有规律学习了，今天金盾打完。
该开始规律学习了，不要老是纠结什么，喜欢cs就学下去吧。
vmp和java还有公开课都学一学，加油。
<img src="https://cdn.jsdelivr.net/gh/CivilightEterna/img_bed@main/img01/%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202025-12-20%20230120.png" alt="聪音可爱捏"/></p><p style="text-align:right"><a href="https://www.civilighteterna.top/notes/6#comments">看完了？说点什么呢</a></p></div>]]></description><link>https://www.civilighteterna.top/notes/6</link><guid isPermaLink="true">https://www.civilighteterna.top/notes/6</guid><dc:creator><![CDATA[ce]]></dc:creator><pubDate>Sat, 20 Dec 2025 14:52:09 GMT</pubDate></item><item><title><![CDATA[记录 2025 年第 346 天]]></title><description><![CDATA[<link rel="preload" as="image" href="https://cdn.jsdelivr.net/gh/CivilightEterna/img_bed@main/img01/354FB2DA20649114F854CAC52EF36D82.jpg"/><div><blockquote>该渲染由 Shiro API 生成，可能存在排版问题，最佳体验请前往：<a href="https://www.civilighteterna.top/notes/5">https://www.civilighteterna.top/notes/5</a></blockquote><div><h1 id="suisuinian">suisuinian</h1><p>歇了好几天，慢慢的学点吧
明天四级能过吗（），求点运气吧..................ε(*´･∀･｀)зﾞ</p><h1 id="">计划</h1><p>这个月学完点评，准备八股项目，刷完代码随想录，准备冲刺力</p><h1 id="">喜欢(*´∀`)~♥</h1><p>今天手办到了，小特可爱捏٩(๑•̀ω•́๑)۶
<img src="https://cdn.jsdelivr.net/gh/CivilightEterna/img_bed@main/img01/354FB2DA20649114F854CAC52EF36D82.jpg" alt="小特可爱捏"/></p></div><p style="text-align:right"><a href="https://www.civilighteterna.top/notes/5#comments">看完了？说点什么呢</a></p></div>]]></description><link>https://www.civilighteterna.top/notes/5</link><guid isPermaLink="true">https://www.civilighteterna.top/notes/5</guid><dc:creator><![CDATA[ce]]></dc:creator><pubDate>Fri, 12 Dec 2025 15:21:29 GMT</pubDate></item><item><title><![CDATA[记录 2025 年第 335 天]]></title><description><![CDATA[<div><blockquote>该渲染由 Shiro API 生成，可能存在排版问题，最佳体验请前往：<a href="https://www.civilighteterna.top/notes/4">https://www.civilighteterna.top/notes/4</a></blockquote><div><p>今天看了点英语语法，复建下能不能过四级随缘吧（）。
redis还是没怎么认真写，明天得速度点。</p><p>大部分时间在搭zmd私服，还好是成功了，这才是学cs的快乐啊（）</p><p>好想成为全栈高手😩😩😩</p></div><p style="text-align:right"><a href="https://www.civilighteterna.top/notes/4#comments">看完了？说点什么呢</a></p></div>]]></description><link>https://www.civilighteterna.top/notes/4</link><guid isPermaLink="true">https://www.civilighteterna.top/notes/4</guid><dc:creator><![CDATA[ce]]></dc:creator><pubDate>Mon, 01 Dec 2025 15:59:08 GMT</pubDate></item><item><title><![CDATA[记录 2025 年第 334 天]]></title><description><![CDATA[<div><blockquote>该渲染由 Shiro API 生成，可能存在排版问题，最佳体验请前往：<a href="https://www.civilighteterna.top/notes/3">https://www.civilighteterna.top/notes/3</a></blockquote><div><p>今天摆了，就在晚上看了下点评的登录实现</p><p>目前看四六级大抵是寄了，不用放在心上，过不了明年再拿下吧（）</p><p>就业焦虑，学历焦虑，路线焦虑一直困扰我（）
去tmd，慢慢学，失业就认了，反正工业时代饿不死人（焦虑个卵）
加快点进度吧，感觉一直很摆，很水的学习
加油吧</p></div><p style="text-align:right"><a href="https://www.civilighteterna.top/notes/3#comments">看完了？说点什么呢</a></p></div>]]></description><link>https://www.civilighteterna.top/notes/3</link><guid isPermaLink="true">https://www.civilighteterna.top/notes/3</guid><dc:creator><![CDATA[ce]]></dc:creator><pubDate>Sun, 30 Nov 2025 15:51:03 GMT</pubDate></item></channel></rss>