本文共 1724 字,大约阅读时间需要 5 分钟。
1. 输入一个整数,计算有多个二进制的【1】
public static long getCountUltimatePlus(long num){ int count = 0; int num1 = 0; while (num!=0){ ++count; num = (num-1) & num; num1++; } System.out.println(num1); return count;}
2. Spring加载bean的两种方式的区别(BeanFactory和ApplicationContext)
加载bean的方式一共有两种:
//ApplicationContextApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");User user = (User) context.getBean("user");//BeanFactoryResource resource = new ClassPathResource("applicationContext.xml");BeanFactory factory = new XmlBeanFactory(resource);UserService userservice = (UserService) factory.getBean("userservice");
BeanFactory: 提供一种延迟加载思想来创建对象。bean对象什么时候使用什么时候创建。
ApplicationContext: 提供一种立即加载思想来创建对象。只要解析完配置文件,就立马创建bean对象
3. 拦截器和过滤器的区别
- 过滤器: 过滤器过滤的是request请求,在实现上基于函数回调,依赖servlet容器。但是缺点是一个过滤器实例只能在容器初始化时调用一次。 使用过滤器的目的是用来做一些过滤操作,从而获得我们想要获取的数据。比如在过滤器中修改字符编码;在过滤器中修改request的一些参数,包括过滤低俗文字、危险字符等。
- 拦截器: 拦截器只能在访问controller 的方法时进行拦截,在SpringMVC中就是依赖SpringMVC框架,实现HandlerInterceptor接口。 拦截器针对于controller,并且能获取到所有的类,对类里面所有的方法实现拦截,粒度更小,拦截器中可以注入service,也可以调用业务逻辑
- 对比 两者都是AOP编程思想的实现,都能够实现权限控制和日志记录等问题的处理,但是两者粒度不同拦截对象不一样 适用范围不同:Filter是servlet的规范,只能用于web程序,但是拦截器可以用于application等程序。 规范不同:Filter是servlet的规范。但是Interceptor是spring容器支撑,有spring框架支持。 粒度不同:Filter只能在某一次请求的前后调用一次,而拦截器能在controller方法前后异常前后多次调用,更加灵活,粒度更小。 两者的本质区别:从灵活性上说拦截器功能更强大些,Filter能做的事情,他都能做,而且可以在请求前,请求后执行,比较灵活。Filter主要是针对URL地址做一个编码的事情、过滤掉没用的参数、安全校验(比较泛的,比如登录不登录之类)。
4. maven仓库的分类
本地仓库
远程仓库:中央仓库、公共库、私服
5. 解释maven的依赖冲突
同一款jar的不同版本。
maven在依赖传递时会发生依赖冲突。
解决办法:排除、限定版本号
6. ORM的概念?映射了什么?
对象关系映射Object Relationship Mapping
映射了对象的属性和表中的列属性
7. 缓存的作用
减少与数据库的通信次数
8. 事务并发中的安全问题
脏读、幻读、更新丢失
9. 两个shiro的过滤器anon authc perms roles logout
转载地址:http://xpgzi.baihongyu.com/