1.查询每科成绩都大于80分的学生名字(面试遇到)
table_name:score |
id name object score |
1 小强 语文 85 |
2 小强 数学 73 |
7 小强 美术 90 |
5 小狗 语文 80 |
6 小狗 数学 92 |
9 小狗 美术 95 |
3 小花 语文 70 |
4 小花 数学 79 |
8 小花 美术 85 |
* Constructs an empty list with an initial capacity of ten.
*/
public ArrayList() {
super();
this.elementData = EMPTY_ELEMENTDATA;
}
* Default initial capacity.
*/
private static final int DEFAULT_CAPACITY= 10;
/**
* @ProjectName:Test
* @ClassName:Singleton
* @Description:单例模式
* @date: 2015-3-9上午11:14:47
* @author: 徐凯强
* @version: V1.0
* @date:2015-3-9上午11:14:47
*/
public class Singleton {
// 声明该类私有的唯一静态全局变量实例
private static Singleton singleton;
// 私有的构造方法
private Singleton() {
}
// 公开的getInstance方法
public static Singleton getInstance() {
if (singleton == null) {
singleton = new Singleton();
}
return singleton;
}
}
8.servlet生命周期?(面试遇到)
1,初始化阶段 调用init()方法
2,响应客户请求阶段 调用service()方法
3,终止阶段 调用destroy()方法
9.String,StringBuilder ,StringBuffer区别?(面试遇到)String是不可变对象,频繁改变的字符串不要用String,因为没改变一次会创建一个对象,对系统性能产生影响。
StringBuilder非线程安全,效率高
StringBuffer线程安全,效率低。
使用优先级StringBuilder>StringBuffer>String
10.说一个设计模式?
23种设计模式随便说一个,工厂模式,观察者模式,迭代器模式,外观模式
11.说说常见的异常?
NullPointerException(空指针),ClassNotFoundException(类不存在),ClassCastException(类型强制转换异常),SQLException(SQL异常),IOException(输入输出异常)
12.http中get和post区别?(面试遇到)
1.get请求将参数拼接到url中传递,不安全,传输量少
2.post请求将参数放到http消息头传递,安全,传输量大
13.servlet转发重定向区别?(面试遇到)
1.转发地址栏不变,重定向地址改变。
2.转发只能是程序内部的页面,重定向可以是程序发布页面。
3.转发request存放的变量不会失效,重定向request存放的变量不会失效
14.jsp指令?
15.jsp标签?
<jsp:include/> <jsp:useBean/> <jsp:forward/><jsp:getProperty/><jsp:setProperty/>
16.ibatis中#和$的区别?(面试遇到)
#用于变量替换
select * from table where id = #id#
等效于
prepareStement =stmt.createPrepareStement("select * from table where id = ?")
prepareStement.setString(1,'abc');
$ 的作用实际上是字符串拼接
select * from $tableName$
等效于
StringBuffer sb = new StringBuffer(256);
sb.append("select * from").append(tableName);
sb.toString();
1.实现方式
一个是预编译方式,另一个是拼接,一个可以进行类型匹配,另一个不可以。
2.安全性
#可以防止sql注入,$不可以
3.使用场合
#用于引用变量,$用于引用数据库对象,例如表名。
17. Spring中Bean有几种作用域?(面试遇到) singlton,prototype,request,session,gloable session
Java中的方法重载发生在同一个类里面两个或者是多个方法的方法名相同但是参数不同的情况。与此相对,方法覆盖是说子类重新定义了父类的方法。方法覆盖必须有相同的方法名,参数列表和返回类型。覆盖者可能不会限制它所覆盖的方法的访问。
19.Java中,什么是构造函数?什么是构造函数重载?什么是复制构造函数?
当新对象被创建的时候,构造函数会被调用。每一个类都有构造函数。在程序员没有给类提供构造函数的情况下,Java编译器会为这个类创建一个默认的构造函数。Java中构造函数重载和方法重载很相似。可以为一个类创建多个构造函数。每一个构造函数必须有它自己唯一的参数列表。
20.Java支持多继承么?
不支持,Java不支持多继承。每个类都只能继承一个类,但是可以实现多个接口。
21.HashSet和TreeSet有什么区别?(面试遇到)
HashSet是由一个hash表来实现的,因此,它的元素是无序的。add(),remove(),contains()方法的时间复杂度是O(1)。
另一方面,TreeSet是由一个树形的结构来实现的,它里面的元素是有序的。因此,add(),remove(),contains()方法的时间复杂度是O(logn)。
垃圾收集器(Garbage Collectors)
垃圾回收的目的是识别并且丢弃应用不再使用的对象来释放和重用资源。
23.求每个学生的平均成绩
select name ,avg(score) from student group by name;
求每科的平均成绩?
select object,avg(score) from student group by object;
24.&和&&的区别?
电路问题总结:
对于:& -- > 不管怎样,都会执行"&"符号左右两边的程序
对于:&& -- > 只有当符号"&&"左边程序为真(true)后,才会执行符号"&&"右边的程序。