java中软填空面试题,今天去中软国际面试 他们的面试题,该如何处理

本文分享了一次在中软国际的面试经历,涉及两个技术问题:一是用Java编写一个生成四位数且每位数字不重复的程序,二是如何使用Servlet和JNDI获取数据库连接并输出结果到文本文件。文中给出了问题的解答,包括一个递归实现的随机数生成器和JNDI连接Oracle数据库的示例代码。
摘要由CSDN通过智能技术生成

当前位置:我的异常网» Java Web开发 » 今天去中软国际面试 他们的面试题,该如何处理

今天去中软国际面试 他们的面试题,该如何处理

www.myexceptions.net  网友分享于:2015-08-26  浏览:68次

今天去中软国际面试 他们的面试题

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

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.INITIAL_CONTEXT_FACTORY和Context.PROVIDER_URL(这不是必须的,如果没有则2)

* 2.如果没有设置系统属性,那么必须由相关的有这二个变量的HashTable构造Context对象 下面的演示采用第二种实现

*

* @param args

* @throws Exception

*/

public static void main(String[] args) throws Exception

文章评论

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值