
java面试题求助
员工表(emp表)
EmpId EmpName EmpSal(员工薪水)
1 ABC 1200
2 BCD 2000
薪水级别表(sal表)
MinSal MaxSal SalClass(薪水级别)
1000 1500 1
1800 2200 2
----------------------------------------------------
请使用一条sql语句列车员工号位”1”的姓名,薪水,薪水级别,同级别人数,平均工资?
第二道:
请使用singletion模式编写一个数据库连接,查询帮助类? 展开
楼主可以试一下。我提供点思路。平均工资我没想明白。一个人的平均工资怎么求。。。
第二题就是一个设计模式只要满足它的要求就行比如:
public class Singleton {
private Singleton(){}
//在自己内部定义自己一个实例,是不是很奇怪?
//注意这是private 只供内部调用
private static Singleton instance = new Singleton();
//这里提供了一个供外部访问本class的静态方法,可以直接访问
public static Singleton getInstance() {
return instance;
}
}
select a.empname,a.empsal,b.salclass,count(c.empid).avg(c.empsal)
from emp a,sal b,emp c
where b.minsal<a.empsal and b.maxsal>a.empsal and a.empid=1(如果告诉你编号是字符串写成‘1’) and c.empsal>b.minsal and c.empsal<b.maxsal
这种题都是不要求你真写出来的,遇上这种题首先你要知道什么是单例模式。然后知道怎么连接数据库,剩下的就算写思路也能给你相当的分数。(进公司肯定是SSH没人让你用单例对付数据库)
public class Singleton {
ResultSet rs;
private Singleton(){
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");//这个是sqlserver连接用驱动,记得住就写,记不住就告诉他你写的是什么东西
conn = DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;databasename=master","sa","sa"); //这个是数据库的地址和你的用户名密码
Statement stmt;
String sql="select * from student"; //sql语句
stmt = conn.createStatement(); //启动数据库
rs = stmt.executeQuery(sql);//返回结果}
private static Singleton instance = new Singleton();
public static Singleton getInstance() {
return instance;
}
}