Johuer's Blog

多学知识,精简代码

0%

<? extends T> 与 <? super T>

<? extends T>是Get First,适用于消费集合元素为主的场景;<? super T>是Put First,适用于生产集合元素为主的场景

例如:Object > 动物 > 猫 > 咖啡猫

1
2
3
List<Animal> animal = new ArrayList<>();
List<Cat> cat = new ArrayList<>();
List<Garfield> garfield = new ArrayList<>();
阅读全文 »

数据结构与集合

数据结构分类

类型 备注
线性结构 0至1个直接前继和直接后继;顺序表、链表、栈、队列 。note:栈、队列访问受限
树结构 0至1个直接前继和0至n个直接后继(n大于或等于2)
图结构 简单图、多重图、有向图、无向图
哈希结构 索引和值存储,查找效率高
阅读全文 »

场景:项目A作为主项目,业务实现完整,项目B需要调用项目A中的部分服务,那么项目A就需要提供出服务出来。实现分布式调用的方法有很多,Spring Http Invoker 是其中一种来实现的服务提供和调用。

Spring HTTP Invoker有两种实现方式

  1. 基于Url映射方式,远程系统处理请求的方式同SpringMVC的controller类似,所有的请求通过在web.xml中的 org.springframework.web.servlet.DispatcherServlet统一处理,根据url映射,去对应的 【servlet名称-servlet.xml】文件中,查询跟请求的url匹配的bean配置
阅读全文 »

foreach简介

foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合。foreach元素的属性主要有 item,index,collection,open,separator,close,网上解释比较多,使用时注意collection,这个是关键,容易错误,下面分别介绍5种情况。

阅读全文 »