笔试题

 chain.doFilter()

1.数据库的触发器

2.枚举

3.多表的更新
 多表的删除

4.绑定机制;


5.forward 与 redirect的区别;

6.struts 机制

7.内部类的访问:

8.栈(stack)与堆(heap)区别以及Java的string变量赋值的内部工作机制(精典转载贴)


9.为什么java程序的运行不依赖与操作系统,类似的语言还有哪些
12.final的用法

9.包装类
--------------------------上海同邦软件笔试题----------

13.为什么java程序的运行不依赖于操作系统,类似的语言还有哪些?
   java编译产生的是字节码文件 在java虚拟机中执行 字节码文件不依赖于操作系统 但是虚拟机依赖于操作系统 所以是“一次编译 到处执行”
ava语言是通过JVM(java虚拟机)来进行编译和执行的,所以,不管是Windows还是Linux,只要是有相应的虚拟机就可以了,操作系统本身对java没什么影响。

标准C和标准C++都是源代码级跨平台的, 也就是说你用标准C/C++写的代码在windows下编译后就可以windows下运行, 在unix/linux下编译后就可以在unix/linux下运行.
14.j2ee中,web.xml的作用。
   j2ee中的web.xml充当的是一个“调度”的角色,它是web系统的一个载体。来处理类关系之间的映射,达到用户请求到服务器响应的一个转载过程。
WEB工程的描述文件,例如WEB工程所用到的Servlet、Filter、Tablib等等等等都在这个里面进行描述,WEB工程启动的时候会在这个里面找到具体所用到的类的路径,由此进行加载。
15.将一个字符串“abcd”反转输出为“dcba”
       1) String name="abcd";
       
        StringBuffer b = new StringBuffer(name);
        b.reverse();
        System.out.println("hou:"+b);
     2)String str = "abcd";
        StringBuffer strb = new StringBuffer();
        for(int i = str.length()-1; i >= 0; i--){
            strb.append(str.charAt(i));
        }
        System.out.println(strb.toString());
16.实现线程有哪些方式,写出程序说明
有两种实现方法,分别是继承Thread 类与实现Runnable 接口;
用synchronized 关键字修饰同步方法
1).
public class MyThread implements Runnable {

    @Override
    public void run() {
        for(int i = 0;i<10;i++){
            try {
                Thread.sleep(100);
            } catch (InterruptedException ex) {
                Logger.getLogger(MyThread.class.getName()).log(Level.SEVERE, null, ex);
            }
            System.out.println("anotherThread say hello!");
        }
    }

    public static void main(String[] args){

        new Thread(new MyThread()).start();
        for(int i=0;i<10;i++){
            try {
                Thread.sleep(100);
            } catch (InterruptedException ex) {
                Logger.getLogger(MyThread.class.getName()).log(Level.SEVERE, null, ex);
            }
            System.out.println("Main Thread doSM");
        }
        System.out.println("Main Thread end!!!");
    }

}
2)public class MyThread extends Thread{

    @Override
    public void run() {
        for(int i = 0;i<10;i++){
            try {
                Thread.sleep(100);
            } catch (InterruptedException ex) {
                Logger.getLogger(MyThread.class.getName()).log(Level.SEVERE, null, ex);
            }
            System.out.println("anotherThread say hello!");
        }
    }

    public static void main(String[] args){

        new MyThread().start();
        for(int i=0;i<10;i++){
            try {
                Thread.sleep(100);
            } catch (InterruptedException ex) {
                Logger.getLogger(MyThread.class.getName()).log(Level.SEVERE, null, ex);
            }
            System.out.println("Main Thread doSM");
        }
        System.out.println("Main Thread end!!!");
    }

}

17.用程序写出一种排序
1)选择:
   private static void sort() {
        int[] strs = new int[]{6,0,1,5,7};
       
        for(int i=0;i<strs.length-1;i++){
            int t = i;
            int temp = 0;
            for(int j = i; j< strs.length;j++){
                if(strs[j] < strs[t]){
                    t = j;
                }
            }

            temp = strs[i];
            strs[i] = strs[t];
            strs[t] = temp;
           
        }

        for(int s : strs){
            System.out.println(s);
        }
    }
2).冒泡:
private static void sort(int[] a) {
        int temp =0 ;

       for(int time=1;time<a.length;time++){
           boolean flg=true;
           for(int i=0;i<a.length-time;i++){
              
               if(a[i]>a[i+1]){
                   temp =a[i+1];
                   a[i+1]=a[i];
                   a[i]=temp;
                   flg = false;
               }
           }
           if(flg)break;
       }
    }
18.什么叫关系型数据库,什么叫事务,什么事死锁,如何避免死锁
   关系型数据库事支持关系模型的数据库系统,从用户的角度看,关系模型中数据库的逻辑结构是一张二维表,所有实体以及实体间的联系的集合构成一个关系型数据库,还有其他的一些完整性约束。
事务:原子性,不可分割的完整性单位,要么都做,要么都不做,;一致性:使数据库从一个一致性的状态变到另一个一致性的状态:隔离性:执行不能被其他事务干扰;持久性:
死锁的避免不严格地限制死锁的必要条件的存在,而是系统在系统运行过程中小心地避免死锁的最终发生。最著名的死锁避免算
法是银行家算法。死锁避免算法需要很大的系统开销。
19。你是否做过erp,是否有相关经验,试说明
   企业资源计划(Enterprise Resource Planning,简称ERP)系统是一种主要面向制造行业进行物质资源、资金资源和信息资源集成一体化管理的企业信息管理系统。通过运用ERP,企业能够利用计算机对企业的资金、货物、人员和信息等资源进行自动化管理,具有制造,办公操作,供应链管理,人力资源管理,项目管理,财务与管理,客户服务,销售与市场营销等商业功能。企业资源计划对于在企业高度普及计算机辅助管理,实现企业管理信息化和自动化,提高工作效率和增强快速反应能力,都具有十分重要的意义。
经验:ERP实施的艰难,相信每个过来人都有比较深刻的体会;实施过程中非常重要的一点就是,企业内部各部门之间,以及企业与软件提供与实施方之间的沟通协调。要有一个良好的机制,保证各方能够及时沟通讨论问题。当各方意见不统一的时候,必须能够迅速、客观地做出决定并推动执行。
20.用程序写出一个你知道的设计模式 
Singleton 模式主要作用是保证在Java 应用程序中,一个类Class 只有一
个实例存在。举例:定义一个类,它的构造函数为private 的,它有一个static
的private 的该类变量,在类初始化时实例话,通过一个public 的getInstance
方法获取对它的引用,继而调用其中的方法。
第一种形式:
public class Singleton {
private Singleton(){}
private static Singleton instance = new Singleton();
public static Singleton getInstance(){
return instance;
}
}
第二种形式:
public class Singleton {
private static Singleton instance = null;
public static synchronized Singleton getInstance(){
if (instance==null)
instance=new Singleton();
return instance;
}
}
其他形式: 定义一个类,它的构造函数为private 的,所有方法为static 的。
一般认为第一种形式要更加安全些。
21.sql查询和建表
CREATE TABLE `tb_student` (
  `sno` int(11) NOT NULL,
  `sname` varchar(16) NOT NULL,
  PRIMARY KEY  (`sno`)
);
CREATE TABLE `tb_course` (
  `cno` int(11) NOT NULL,
  `cname` varchar(16) NOT NULL,
  PRIMARY KEY  (`cno`)
) ;

CREATE TABLE `tb_grade` (
  `sno` int(11) NOT NULL,
  `cno` int(11) NOT NULL,
  `grade` int(2) NOT NULL,
  PRIMARY KEY  (`sno`,`cno`)
);

alter table tb_student add constraint s_pk primary key(sno);
alter table tb_course add constraint c_pk primary key(cno);
alter table tb_grade add constraint c_fk1 foreign key(sno) references tb_student(sno);
alter table tb_grade add constraint c_fk2 foreign key(cno) references tb_course(cno);
alter table tb_grade add constraint m_pk primary key(sno,cno);


   有3 个表(15 分钟):【基础】
Student 学生表(学号,姓名,性别,年龄,组织部门)
Course 课程表(编号,课程名称)
Sc 选课表(学号,课程编号,成绩)
表结构如下:
1)写一个SQL 语句,查询选修了’计算机原理’的学生学号和姓名(3 分钟)
2)写一个SQL 语句,查询’周星驰’同学选修了的课程名字(3 分钟)
3)写一个SQL 语句,查询选修了5 门课程的学生学号和姓名(9 分钟)
答:1)SQL 语句如下:
select stu.sno, stu.sname from Student stu
where (select count(*) from sc where sno=stu.sno and cno =
(select cno from Course where cname='计算机原理')) != 0;
2)SQL 语句如下:
select cname from Course
where cno in ( select cno from sc where sno =
(select sno from Student where sname='周星驰'));
3)SQL 语句如下:
select stu.sno, stu.sname from student stu
where (select count(*) from sc where sno=stu.sno) = 5;
107、有三张表,学生表S,课程C,学生课程表SC,学生可以选修多门课程,一门课
我爱 JAVA 网(
www.wajava.com) 面试题集 29
程可以被多个学生选修,通过SC 表关联。【基础】
1)写出建表语句;
2)写出SQL 语句,查询选修了所有选修课程的学生;
3)写出SQL 语句,查询选修了至少5 门以上的课程的学生。
答:1)建表语句如下(mysql 数据库):
create table s(id integer primary key, name varchar(20));
create table c(id integer primary key, name varchar(20));
create table sc(
sid integer references s(id),
cid integer references c(id),
primary key(sid,cid)
);
2)SQL 语句如下:
select stu.id, stu.name from s stu
where (select count(*) from sc where sid=stu.id)
= (select count(*) from c);
3)SQL 语句如下:
select stu.id, stu.name from s stu
where (select count(*) from sc where sid=stu.id)>=5;
108、数据库表(Test)结构如下:【基础】
ID NAME AGE MANAGER(所属主管人ID)
106 A 30 104
109 B 19 104
104 C 20 111
107 D 35 109
112 E 25 120
119 F 45 NULL
要求:列出所有年龄比所属主管年龄大的人的ID 和名字?
答:SQL 语句如下:
select employee.name from test employee
where employee.age > (select manager.age from test manager
where manager.id=employee.manager);
109、有如下两张表:【中等难度】
表city: 表state:
CityNo CityName StateNo
BJ 北京(Null)
SH 上海(Null)
GZ 广州GD
DL 大连LN
欲得
到如下结果: City
No City Name State No State Name BJ
北京(Null) (Null) DL
大连LN 辽宁GZ
我爱 JAVA 网(
www.wajava.com) 面试题集 30
广州GD 广东SH
上海(Null) (Null) 写相
应的SQL 语句。
答:SQL 语句为:
SELECT C.CITYNO, C.CITYNAME, C.STATENO, S.STATENAME
FROM CITY C, STATE S
WHERE C.STATENO=S.STATENO(+)
ORDER BY(C.CITYNO);


servlet与struts跳转方式:

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值