Q1:基本数据类型有哪几个,各有多少个字节
类型 | boolean | byte | char | short | int | long | float | double |
---|---|---|---|---|---|---|---|---|
字节数 | 1 | 1 | 2 | 2 | 4 | 8 | 4 | 8 |
范围/ | 0/1 | ±2^7 | ±2^15 | ±2^31 | ±2^64 |
Q2:web.xml配置了那些ssm框架相关的配置
Q3:mysql存储过程以及函数,游标
Q4:Exception的分类
1、运行时异常都是 RuntimeException 类及其子类异常,如NullPointerException、IndexOutOfBoundsException等,这些异常是不检查异常,程序中可以选择捕获处理,也可以不处理。这些异常一般由程序逻辑错误引起,程序应该从逻辑角度尽可能避免这类异常的发生。
2、非运行时异常是指 RuntimeException以外的异常,类型上都属于 Exception 类及其子类。程序就不能编译通过。IOException和ClassNotFoundException 等以及用户自定义的 Exception 异常,一般情况下不自定义检查异常。
3、异常的分类
(1)根据异常在编译时是否被检测来分,异常可以分为两类:受检异常(CheckedException)与非受检异常(UncheckedException)。
(2)非受检异常不能在编译时检测到。非受检异常包括运行时异常(RuntimeException)和错误(Error)。错误指的是致命性错误,常常无法处理。
(3)根据异常的严重性,可以分为可以处理的异常和错误异常。异常以类的形式封装。程序可以处理的异常对应的类是java.lang.Exception及其子类。
运行时异常对应的类是java.lang.RuntimeException。
错误异常对应的类是java.lang.Error
Q5:String StringBuffer StringBuilder的区别
- String 的底层是一个final char[] ,值是不可变的,每次对String操作都将会产生新的String对象
- StringBuffer和StringBuilder是字符串变量,可以动态的修改字符串,并不产生新的对象
- Stringbuffer和StringBuilder的区别是StringBuilder是线程不安全的,StringBuffer是线程安全的。
- (记:StringBuilder,biubiubiubiu的,就很快,线程就会不安全)
Q6:@Autowired
Autowired是根据类型进行自动装配的。@Resource是根据名字来自动装备的。如果当Spring上下文中存在多个同类型的bean时,就会抛出BeanCreationException异常;如果Spring上下文中不存在类型的bean,也会抛BeanCreationException异常。
例子:假如存在多个实现了BookServiceI接口的实例,(比如BookService接口有多个实现类BookServiceImpl,BookServiceImpl2,BookServiceImpl3等等,程序员只想使用名字为BookServiceImpl实例)
//构造器注入
@Autowired
@Qualifier("bookServiceImpl")
public BookService bookService;
//或者set函数注入
@Autowired
public void setBookService(@Qualifier("bookServicImpl") BookServic bookServic) {
this.bookServic = bookServic;
}
//假如实例不以一定要有的,可以用required = false
@Autowired(required = false)