Java的一份笔试题

题目如下:

1、给一个java.util.Date值你 要求按字符串”yyyy-MM-dd HH:mm:ss”形式打印出来
2、写一个oracle的sequence 从100开始 到99999结束 每次增长为2
3、从字符串”ABCDEFGH”里找出”DEF”来
4、Hibernate 的主键生成机制
5、Java实现快速排序
6、
class A{
static void main(){
System.out.print("1");
}
public A(){
System.out.print("2");
}
}
class B extends A{
static void main(){
System.out.print("a");
}
public B(){
System.out.print("b");
}
}
public class C{
public static void main(String args[]){
A ab = new A();
ab = new A();
}
}
输出什么?
7、
var str = "abcdefgdafoadfjladsf";
var strmp = str.split("f");
var c = strmp[4]+"5*10"+5*10;
C是多少?c=5*1050
8、
Var a =[[0,1],[2,3]]
Var b = a[0][1];
Var c = a[0,1]
Var d = [0]
b/c/d是多少?取不到值,Var 改成 var 后b/c/d=NaN

9、
var str = new Array(0,1,2,3,4,5,6,7,8,9,10)
var b = str[5]%str[1]
b是多少?

10、描叙Web Service?

11、一个网站有很多人网站产生大量的session 如果你是程序员 你将如何解决

1:使用spring来管理,很不错。(DBCP。PROXOOL。C3P0)
  建议使用PROXOOL,性能最优。
2:HIBERNATE中也有,自己代码中要释放。

12、线程同步的几种方法


以下是网友的解答方法:

1:SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
sd.format(new Date());  
2:create sequence SEQ_TEST  
minvalue 100  
maxvalue 99999  
start with 100  
increment by 2  
3:
String str=”ABCDEFGH”;  
String str1=str.subString(3,6);
4:Hibernate 的主键生成机制 
 1、 native
对于 oracle 采用 Sequence 方式,对于MySQL 和 SQL Server 采用identity(自增主键生成机制),native就是将主键的生成工作交由数据库完成,hibernate不管(很常用)
2、Assigned
在插入数据的时候主键由用户自己添加,hibernate也不管(很常用)
3、increment
插入数据的时候hibernate会给主键添加一个自增的主键,但是一个hibernate实例就维护一个计数器,所以在多个实例运行的时候不能使用这个方法
4、sequence
调用数据库的sequence来生成主键,要设定序列名,不然hibernate无法找到:
<param name="sequence">NAME_SEQ</param>(Oracle中很常用)
5、identity
使用SQL Server 和 MySQL 的自增字段,这个方法不能放到 Oracle 中,Oracle 不支持自增字段,要设定sequence(MySQL 和 SQL Server 中很常用)
6、hilo
使用hilo生成策略,要在数据库中建立一张额外的表,默认表名为hibernate_unique_key,默认字段为integer类型,名称是next_hi(比较少用)
我们也可以自己设置自定义的表名和字段名
<id name="id" type="integer">
<column name="id"/>
<generator class="hilo">
<param name="my_unique_key"/>
<param column="next_hi"/>
</generator>
</id> 
7、sehilo
通过hilo算法实现,但是主键历史保存在Sequence中,适用于支持 Sequence 的数据库,如 Oracle(比较少用)
8、uuid.hex
hibernate会算出一个128位的唯一值插入
9、uuid.string
hibernate会算出一个16位的值插入
10、foreign
使用外部表的字段作为主键
11、select
使用触发器生成主键(主要用于早期的数据库主键生成机制,少用)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值