日期:2014-05-17  浏览次数:20694 次

今天去中软国际面试 他们的面试题
1. java写一个随机生成四位数的程序 每位数字不重复

 2. 写一个Servlet 使用JNDI = “jdbc/db2 DataSource” 获得数据库连接 执行SQL 把执行结果输出到文本
  文件 out.txt 中 将请求发送到 /application/test.jsp


这两个我都没答出来 答了 但感觉不对 请各位朋友看看 呵呵 请教喽 这是
我能给的最多分数了 就这些家底 都拿出来了 不要嫌少哦 以后又分再多给 嘿嘿

------解决方案--------------------
public class Test2 {
public int random(){
int number = 999+(int)(9000*Math.random());
return number;

}
public boolean quite(int number){
boolean flag = false;
if(number>1023){
String str =String.valueOf(number) ;
char c[] = str.toCharArray();
Set set = new HashSet();
for(int i=0;i<c.length;i++){
set.add(c[i]);
}
if(set.size()==4){
flag = true;
System.out.println(str);
}else{
this.quite(random());
}

}
return flag;
}
public static void main(String[] args) {
Test2 test = new Test2();
test.quite(test.random());
}

}

我写了半天才写出来。。好长时间没碰J2SE了忘的差不多了,我菜鸟啊。。
如果有高手希望指点下更简单的方法
------解决方案--------------------
第二个问题的回答:
新建类:OracleJNDI
JAVA 代码:
 
import java.sql.SQLException;
 
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
 
import oracle.jdbc.pool.OracleDataSource;
 
public class OracleJNDI
{
 
public OracleJNDI() throws SQLException
{
super();
}
/**
* 使用sun提供的com.sun.jndi.fscontext.RefFSContextFactory作为JNDI服务器,
* 其实这是使用文件系统来存储JNDI对象
* @param args
* @throws NamingException
* @throws SQLException
*/
public static void main(String[] args) throws NamingException, SQLException
{
 
//Properties ps = new Properties();
//为系统设置jndi工厂
System.setProperty(Context.INITIAL_CONTEXT_FACTORY,
"com.sun.jndi.fscontext.RefFSContextFactory");
//指定JNDI URL
System.setProperty(Context.PROVIDER_URL, "file:JNDI_REF");
Context ctx = new InitialContext();
 
//OracleDataSoruce对象,它已经实现了javax.naming.Referencable
OracleDataSource ojndi = new OracleDataSource();
 
//设置相关数据库属性
ojndi.setDatabaseName("DXS");
ojndi.setURL("jdbc:oracle:thin:@localhost:1521:dflcrm");
ojndi.setUser("smp_dba");
ojndi.setPassword("123");
ojndi.setDescription("JDBC Datasource connection.");
 
//重新绑定OJNDI对象
ctx.rebind("ojndi", ojndi);
System.out.println("bind successful");
//关闭
ctx.close();
}
 
}
 
测试类:
JAVA 代码:
 
import java.sql.Connection;
import java.util.Properties;
 
import javax.naming.Context;
import javax.naming.InitialContext;
 
import oracle.jdbc.pool.OracleDataSource;
 
public class Lookup
{
/**
* 这是一个演示了如果查找JNDI的方法,注意以下二点:
* 1.确保系统属性中存在Context