泛型
1.泛型類。泛型接口。泛型方法。
2.T和Object區(qū)別
- T是編譯時檢查,不用強轉;
- 運行時檢查,需要強轉。
- 通配符T(Type) ,E(element),K(key),V(value),名字上的意義,沒有差別;
- ?和T的區(qū)別
- class<T> 在實例化是要替換成具體的類;不可以public Class<T> clazz;
- class<?> 通配泛型,代表任何類;可以public Class<?> clazz;
Filter
1.作用:實現(xiàn)url級別的攔截
2.實現(xiàn):
- web.xml配置
<filter>
<filter-name>hap-enhance</filter-name>
<filter-class>com.hand.hap.core.web.HapEnhanceFilter</filter-class>
<async-supported>true</async-supported>
</filter>
<filter-mapping>
<filter-name>hap-enhance</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
- 實現(xiàn)filter接口
public abstract interface Filter{
public abstract void init(FilterConfig paramFilterConfig) throws ServletException;
public abstract void doFilter(ServletRequest paramServletRequest, ServletResponse paramServletResponse, FilterChain
paramFilterChain) throws IOException, ServletException;
public abstract void destroy();
}
- init方法,初始化filter對象,接收傳遞參數(shù)
- doFilter,實現(xiàn)攔截后的處理
PageHelper
1.如何使用分頁插件https://pagehelper.github.io/docs/howtouse/
2.包括不安全分頁,由ThreadLocal引起
3.QueryInterceptor 規(guī)范https://pagehelper.github.io/docs/interceptor/
- 攔截mybatis的query方法,獲取Mappedstatement,BoundSql等信息