LinkNemo

  • Nemo

    Java写一个贴吧自动签到程序 + IT之家自动评论程序【转载自好盆友的博客:hanyz.cn】

    原文来自好盆友的博客:http://hanyz.cn程序其实很简单,用抓包工具抓到对应的请求就行了。抓包工具用的Charles,抓iPhone上百度贴吧的请求。手机抓包怎么配置就不详细说了。贴吧上登录自己的账号,进入到一键签到的页面,会显示你当前关注的贴吧,如下图:上面这个页面它对应的请求参数就是下面图中的这些参数  有参数了就可以直接访问签到的接口了http://c.tieba.baidu.com/c/c/forum/msign?+上图中所有的参数例:我这是因为已经签到了,所以会有这样的提示。然后源码还包含IT之家自动评论的代码,可以参考一下,这里就不多赘述了~原文地址:......
    2018/01/17 14:10:31发表 20赏阅 0点评
  • 随遇而安

    Java Proxy 和 CGLIB 动态代理原理(转载)

    原文出处:CarpenterLee动态代理在Java中有着广泛的应用,比如SpringAOP,Hibernate数据查询、测试框架的后端mock、RPC,Java注解对象获取等。静态代理的代理关系在编译时就确定了,而动态代理的代理关系是在编译期确定的。静态代理实现简单,适合于代理类较少且确定的情况,而动态代理则给我们提供了更大的灵活性。今天我们来探讨Java中两种常见的动态代理方式:JDK原生动态代理和CGLIB动态代理。JDK原生动态代理先从直观的示例说起,假设我们有一个接口Hello和一个简单实现HelloImp://接口interfaceHello{StringsayHello(Stri......
    2018/01/16 10:35:38发表 19赏阅 0点评
  • 随遇而安

    Java架构师必会的技能(你都会了吗?)

    我把它分为了五大专题工程化专题工程化专题 git git安装使用git日常使用:fetch/pull/push/revert/rebase git分支管理git flowJenkins多套环境(test/pre/production)系统自动化发布Jenkins自动发布到远程主机MavenMaven私服搭建setting.xml文件剖析pom.xml详解Maven实用插件教学(静态代码检查、生成可执行jar包)profile使用源码分析源码分析 Spring源码分析Spring IOC的实现原理Spring BeanFact......
    2018/01/12 19:14:13发表 20赏阅 0点评
  • 随遇而安

    技术贴!成为Java架构师必须要懂的知识

    Java架构师,应该算是一些Java程序员们的一个职业目标了吧。很多码农码了五六年的代码也没能成为架构师。那成为Java架构师要掌握哪些技术呢,总体来说呢,有两方面,一个是基础技术,另一个就是组织能力和提出解决方案能力了。小华君就跟大家来简要地说说吧。如果你是想成为Java架构师,那么你首先要是一个Java高级攻城狮。也就是说,基础必须牢固,对Java的了解全面而且深入。熟练使用各种框架,并知道它们实现的原理。Jvm虚拟机原理、调优操作,懂得jvm能让你写出性能更好的代码;池技术也是要掌握的,对象池、连接池、线程池都要会;Java反射技术,写框架必备的技术;Java各种集合对象的实现原理,了解......
    2018/01/12 19:08:25发表 18赏阅 0点评
  • 随遇而安

    Java线程面试题 Top 50(转载)

    不管你是新程序员还是老手,你一定在面试中遇到过有关线程的问题。Java语言一个重要的特点就是内置了对并发的支持,让Java大受企业和程序员的欢迎。大多数待遇丰厚的Java开发职位都要求开发者精通多线程技术并且有丰富的Java程序开发、调试、优化经验,所以线程相关的问题在面试中经常会被提到。在典型的Java面试中,面试官会从线程的基本概念问起,如:为什么你需要使用线程,如何创建线程,用什么方式创建线程比较好(比如:继承thread类还是调用Runnable接口),然后逐渐问到并发问题像在Java并发编程的过程中遇到了什么挑战,Java内存模型,JDK1.5引入了哪些更高阶的并发工具,并发编程常用......
    2018/01/12 16:52:02发表 20赏阅 0点评
  • Nemo

    简单模仿mongodb实现一个数据库

    源码寄存在GitHub,地址是:https://github.com/NemoMeng/NemoMiniDb这是一个简单模仿mongodb的数据库程序。该程序只用于学习用途。目前功能比较简单,不考虑多用户,不考虑多线程,不考虑效率,不考虑资源占用......只简单实现增删改查操作。后续如果有时间,需要继续完善,目前暂时先这样了。详细说明待添加,先占个位置,待续...
    2018/01/10 18:57:13发表 24赏阅 0点评
  • 随遇而安

    Spring IOC 容器源码分析(转载)

    原文出处:JavaDoopSpring最重要的概念是IOC和AOP,本篇文章其实就是要带领大家来分析下Spring的IOC容器。既然大家平时都要用到Spring,怎么可以不好好了解Spring呢?阅读本文并不能让你成为Spring专家,不过一定有助于大家理解Spring的很多概念,帮助大家排查应用中和Spring相关的一些问题。阅读建议:读者至少需要知道怎么配置Spring,了解Spring中的各种概念,少部分内容我还假设读者使用过SpringMVC。本文要说的IOC总体来说有两处地方最重要,一个是创建Bean容器,一个是初始化Bean,如果读者觉得一次性看完本文压力有点大,那么可以按这个思路......
    2018/01/09 10:02:21发表 19赏阅 0点评
  • 随遇而安

    Java String 对 null 对象的容错处理(转载)

    原文出处:肖汉松前言最近在读《ThinkinginJava》,看到这样一段话:Primitivesthatarefieldsinaclassareautomaticallyinitializedtozero,asnotedintheEverythingIsanObjectchapter.Buttheobjectreferencesareinitializedtonull,andifyoutrytocallmethodsforanyofthem,you’llgetanexception-aruntimeerror.Conveniently,youcanstillprintanullreferen......
    2018/01/09 09:49:14发表 18赏阅 0点评
  • 随遇而安

    大型网站系统与 Java 中间件实践(转载)

    原文出处:wanglizhi第一章分布式系统介绍分布式系统的定义:组件分布在网络计算机上,组件间仅仅通过消息传递来通信并协调行动。分布式系统的意义:升级单机处理能力的性价比越来越低单机处理能力存在瓶颈处于稳定性和可用性的考虑摩尔定律:当价格不变时,每隔18个月,集成电路上可容纳的晶体管数目会增加一倍,性能也将提升一倍。线程与进程的执行模式冯诺依曼结构:输入设备、输入设备、运算器、控制器、存储器。基于共享容器协同的多线程模式:经典如生产者消费者问题,对于存储数据的容器或对象,有线程安全和不安全之分,对于不安全的容器或对象,一般可以通过加锁或者通过CopyOnWrite的方式控制并发。通过事件协同......
    2018/01/08 19:24:20发表 14赏阅 0点评
  • Nemo

    JAVA-动态代理实现AOP原理简单探索

    假设这样一个场景:   当我们在调用某些方法的时候,需要在调用方法前后,记录执行日志。   简单的做法肯定是在原业务方法的前后作修改,添加记录日志的代码。不过这肯定存在一些问题,比如,当你要记录日志的方法很多,或者偶尔需要修改记录日志的方法,等等。所以需要考虑在不对原有的业务方法产生影响的情况下,加入日志记录。   举个栗子说明下好了:首先,定义一个业务接口类,一个业务实现类:/***业务接口类*CreatedbyNemoon2017/12/22.*/publicinterfaceIBusiness{bo......
    2017/12/22 15:18:33发表 48赏阅 0点评
  • Nemo

    JAVA简单实现一个类似apache的简易web容器

    最近在弄一些比较底层的东西,所以不可避免的要弄一下网络协议相关的内容。正好项目转测有些时间,所以就琢磨着写了这个简易的类似apache的容器。目前这个web容器只支持静态文件的请求处理,后续如果有时间,会加入动态请求的处理。这个项目的源码目前托管在github上,地址为:https://github.com/NemoMeng/NemoWebServer在开始之前,需要一些基础的知识:1、NIO。2、多线程。3、文件流处理。4、字符串处理。先来看一个比较正经的网络请求体:POST/aaa.html?a=1HTTP/1.1Host:localhost:8080User-Agent:Mozilla/......
    2017/12/14 18:57:14发表 177赏阅 1点评
  • 随遇而安

    Java虚拟机工作原理

    首先我想从宏观上介绍一下Java虚拟机的工作原理。从最初的我们编写的Java源文件(.java文件)是如何一步步执行的,如下图所示,首先Java源文件经过前端编译器(javac或ECJ)将.java文件编译为Java字节码文件,然后JRE加载Java字节码文件,载入系统分配给JVM的内存区,然后执行引擎解释或编译类文件,再由即时编译器将字节码转化为机器码。主要介绍下图中的类加载器和运行时数据区两个部分。类加载类加载指将类的字节码文件(.class)中的二进制数据读入内存,将其放在运行时数据区的方法区内,然后在堆上创建java.lang.Class对象,封装类在方法区内的数据结构。类加载的最终产......
    2017/12/07 19:02:56发表 30赏阅 0点评
  • 随遇而安

    Spring Aop世界的语言

    要熟悉一个新领域的,首先要学会该领域的语言,也就是所谓的术语!Spring Aop 自成体系,他也有自己的术语,如下:通知(Advicev):在Aop 世界中,切面的工作被称为通知;定义了切面是什么以及何时使用;也就是描述切面要完成的工作,以及何时执行这个工作。连接点(Join point):应用程序执行过程中,能够插入切面的一个点。调用方法时,抛出异常时,修改一个字段时。忉面程序可以利用这些点插入到应用的正常流程中,并添加新的行为。切点(Poincut):切点,有助于缩小忉面所通知的连接点的范围。如果通知定义了切面是"是什么"和"何时执行",切点就定义......
    2017/12/06 16:35:11发表 125赏阅 0点评
  • Nemo

    java 得到两个日期相差的天数

    /***得到两个日期之间相差的天数*@paramdate1*@paramdate2*@return*/privatestaticintdifferentDays(Datedate1,Datedate2){Calendarcal1=Calendar.getInstance();cal1.setTime(date1);Calendarcal2=Calendar.getInstance();cal2.setTime(date2);intday1=cal1.get(Calendar.DAY_OF_YEAR);intday2=cal2.get(Calendar.DAY_OF_YEAR);intyear1......
    2017/11/28 19:25:21发表 311赏阅 0点评
  • Nemo

    java 强制类型转换方法

    NemoMVC中用到的,先写一下。/***类型转换*@paramvalue需要转换的值*@paramtype需要转换的类型*@param<T>*@return*/@SuppressWarnings("unchecked")publicstatic<T>Tcast(Objectvalue,Class<T>type){if(value!=null&&!type.isAssignableFrom(value.getClass())){if(is(type,int.class,Integer.class)){value=Integer.parseIn......
    2017/11/27 11:03:49发表 317赏阅 0点评
  • Nemo

    spark与storm的对比

    对比点StormSparkStreaming实时计算模型纯实时,来一条数据,处理一条数据准实时,对一个时间段内的数据收集起来,作为一个RDD,再处理实时计算延迟度毫秒级秒级吞吐量低高事务机制支持完善支持,但不够完善健壮性/容错性ZooKeeper,Acker,非常强Checkpoint,WAL,一般动态调整并行度支持不支持 SparkStreaming与Storm的应用场景 对于Storm来说:1、建议在那种需要纯实时,不能忍受1秒以上延迟的场景下使用,比如实时金融系统,要求纯实时进行金融交易和分析2、此外,如果对于实时计算的功能中,要求可靠的事务机制和可靠性机制,即数据的......
    2017/11/23 15:15:14发表 109赏阅 0点评

最新点击

热门人物

热门标签

回到顶部