`
hongzhguan
  • 浏览: 272782 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

java题目

阅读更多

1.httpSession 作用,可以列举他的方法。
HttpSession 中可以跟踪并储存用户信息,把值设置到属性中,有2 个方法:
setAttribute(),getAttrribute();
例如:在一个方法中用session.setAttribute(“student”,student);在
session 中设置一个属性名为student,值为一个名为student 的对象。而后可在
同一session 范围内用getAttribute(“student”)取出该属性,得到student
对象。
(原理)
ServletContext 更倾向于一个Web应用的全局范围,而session则只是在于保存用户和服务器之间交互的一个来回完整性。
一个Web服务只有一个ServeltContext,一般都是存放一些全局信息,或者获取一些全局信息.
1 新客户端向服务器第一次发送请求的时候,request中并无sessionID .
2 此时server端会创建一个session对象,并分配一个sessionID,serssion对象会保存在服务器端。此时session的状态处于new state状态,如果调用session.isNew(),则返回true
3 当服务器段处理完毕后,将此sessionID,同response一同传回到客户段,并将其存入到cookie中。
4 当客户段再次发送请求时,会将sessionID 同request一起发送,传递给服务器端。
5 服务器端可以根据传递过来的sessionID将这次请求(request)与保存在服务器端的session对象联系起来,此时的session
  已不处于new state状态,如果调用session.isNew(),则返回false.
6 循环3-5 ,直到session超时或销毁。

注意:一个具有上亿的访问用户的系统,要在服务端数据库中检索出用户的偏好信息显然是低效的,
Session管理器不管用什么数据结构和算法都要耗费大量内存和CPU时间;而用cookie,则根本不用检索和维护session数据,服务器可以做成无状态的,当然高效);

2.get和post 区别
1、get是从服务器上获取数据,post则是向服务器传送数据;
2、get将表单中数据的按照variable=value的 形式,添加到action所指向的URL后面,并且两者使用“?”连接,而各个变量之间使用“&”连接。Post是将表单中的数据放在form的 数据体中,按照变量和值相对应的方式,传递到action所指向URL

所以从上述也可以得到另外两个结论:
1、get传送的数据量较小,不能大于2KB,这主要是因为受URL长度限制。post传送的数据量较大,所以在上传文件只能使用Post。一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB;

2、get安全性非常低(因为用户可以通过URL看到),post安全性较高(其所有操作对用户来说都是不可见的)。但是执行效率却比post方法好;

3.说说连接池 的优点以及原理
作用:提高程序的运行效率,能够支持更多的用户。方便监视连接的数量和使用情况。
原理:先初始化一定的数据库连接对象,并且把这些连接保存在连接池中。当程序需要访问数据库的时候,从连接池中取出一个连接,数据库操作结束后,再把这个用完的连接重新放回连接池。

4.获得登录页面上传过的用户登录信息,包含用户名和密码。怎样将用户名和密码显示输出页面post.jsp上 。写出对应的post.jsp页面。
<%
   String userName = request.getParameter("userName");
   String pwd = request.getParameter("pwd");
   -----如果是中文
   String userName = new String(request.getParameter("userName").getBytes("ISO-8859-1"));
%>

5. 现在编码方式有多种多样ISO-8859-1,GBK,有没有其它的编码方式,请说明。
常用的字符编码方式:ISO8859-1、GB2312、GBK、UTF-8/UTF-16/UTF-32.
ISO-8859-1:用来编码拉丁文;
GB2312、GBK:用来编码简体中文;
UTF-8/UTF-16/UTF-32:是国际标准UNICODE的编码方式,用得最多的是UTF-8,主要是因为它对拉丁文编码时节约空间。

6.有n个整数,需要将n个整数从m位置之前的整数,插入到第m个位置。
public class InsertNum {

      public void insertNum(int [] a,int index)
      {
    int [] c = new int[a.length+index];
          for (int i = 0; i < c.length; i++)
          {
            if(i<index)
            {
                c[i] = a[i];
            }
            else
            {
                c[i] = a[i-index];
            }
         }
          for(int j=0;j<c.length;j++)
             {
                 System.out.println(j+"="+c[j]);
             }
      }
      public static void main(String[] args)
      {
        InsertNum t = new InsertNum();
        int[] a = {1,10,14,21,3,43,54};
        t.insertNum(a,3);
      }
}

7.编写socket客户端代码。
socket客户端的响应的格式为:报文ID(三位数)+用户名+密码。
socket服务端的响应的格式为:
对应服务IP为:192.168.0.1 端口:9999
当输入“END”程序退出
public Class Client{
  public static void main(String[] args){
     Socket socket = null;
         try
        {
            socket = new Socket("192.168.0.1",9999);
            BufferedReader in = new BufferedReader(new InputStreamReader(server.getInputStream()));
            PrintWriter out = new PrintWriter(server.getOutputStream());
            BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
        while(true)
        {
            String str = bf.readLine();
            out.println(str);
            out.flush();
            if("end".equals(str))
            {
                break;
            }
            System.out.println(in.readLine());
        }
         server.close();
         in.close();
         out.close();
         bf.close();
        }catch(IOException e)
        {
            e.printStackTrace();
        }
  }
}

8. 写连接oracle程序并执行查询语句,写出关键代码即可,查询语句为 select * from table where name = “111111”
public class DBHelper {
    
    private static final String DRIVER="oracle.jdbc.driver.OracleDriver";
    private static final String URL="jdbc:oracle:thin:@localhost:1521:ORCL";
    private static final String USER = "";
    private static final String PWD = "";
    private static Connection con=null;
    private static PreparedStatement pst = null;
    private static ResultSet rst=null;
     
    /**
     * 创建数据库的链接
     * @return
     */
    public static Connection getConnection()
    {
        Connection con=null;
        try {
            Class.forName(DRIVER);
            con=DriverManager.getConnection(URL,"scott","tiger");
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
        return con;
    }
    
     /**
      * 关闭数据库的连接
      * @param con
      * @param pst
      * @param rst
      */
    
    public static void getClose(Connection con,PreparedStatement pst,ResultSet rst)
    {
        try
        {
            if(con!=null)
                con.close();
            if(pst!=null)
                pst.close();
            if(rst!=null)
                rst.close();
        }
        catch (SQLException e)
        {
            e.printStackTrace();
        }
    }
    
    public static void getData()
    {  
        String sql = "select * from table where name = '111111'";
        try
        {
            con = getConnection();
            pst = con.prepareStatement(sql);
            rst = pst.executeQuery();
            while(rst.next())
            {    //获取查询到的值
                //rst.getString(0);
                //rst.getInt(1);
            }
        }
        catch (SQLException e)
        {
           e.printStackTrace();
        }
        finally
        {
            getClose(con, pst, rst);
        }
    }
}

9.判断字符串是否有空值,写junit测试
public class Space{
  public boolean isSpace(String str){
     boolean flag=false;
     int index = str.indexOf(" ");
     if(index == -1){
        System.out.println("no space!");
     }else{
        System.out.println("yes space!");
        flag=true;
     }
     return flag;
  }
}
---Junit测试类(继承TestCase时,setUp和tearDown方法不能为静态的)
public class TestSpace extends TestCase{
    
    private Space s = null;
    
    @Before
    public void setUp() throws Exception {
        try {
            s = new Space();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    @After
    public void tearDown() throws Exception {
        super.tearDown();
    }

    @Test
    public void testIsSpace() {
       s.isSpace("hello world !");
    }
}

分享到:
评论

相关推荐

    JAVA题目&答案

    标题 "JAVA题目&答案" 暗示了这是一个与Java编程相关的学习资源,可能包含了各种Java编程题目及其解答。从描述中的“博文链接”可以看出,它可能来源于一位名为“zhuenwei”的博主在iteye博客平台上发布的内容。标签...

    软考软件设计师下午卷java题目02-22年

    【软考软件设计师下午卷Java题目02-22年】是针对全国计算机技术与软件专业技术资格(水平)考试(简称“软考”)中级层次的软件设计师科目所整理的一系列Java试题集。这个试题库涵盖了从2009年至2022年历年的考试...

    华为机试过的java题目

    这份压缩包中的资源,"华为机试过的java题目",显然提供了丰富的实践题目,旨在帮助求职者提升Java编程技能和应对面试的能力。以下将对可能涉及的Java知识点进行详细解析: 1. **基础语法**:包括类、对象、变量、...

    Java 题目1.pdf

    Java题目1.pdf涵盖了Java语言的多个方面,包括数据库连接、系统配置、图书管理、电子词典、多线程、图像处理、日历记事本、网上书店、学生成绩管理系统、个人通讯录管理程序、汽车出租管理系统、ATM柜员机模拟程序、...

    java题目以及答案.rar_java

    这份“java题目以及答案.rar_java”压缩包包含了针对Java基础知识的练习题目和解答,旨在帮助学习者巩固对Java核心概念的理解。以下是根据这些题目和答案整理出的一些关键知识点: 1. **Java基础语法**:Java的基础...

    经典的java题目----奉献了!!!!!!!!!!!

    这个压缩包文件“java题目.doc”似乎包含了与Java编程相关的经典问题,这对于学习和提升Java技能非常有价值。以下是一些可能涵盖的知识点,以及它们在实际编程中的重要性: 1. **基础语法**:Java的基础语法包括...

    JAVA题目

    【JAVA题目】北大清鸟JAVA笔记题目 在深入探讨这些JAVA题目之前,首先我们要了解JAVA作为一门编程语言的重要性。JAVA以其“一次编写,到处运行”的跨平台特性,以及其强大的面向对象编程能力,广泛应用于软件开发、...

    io流java题目.docx

    综上所述,这个Java题目主要涵盖了Java I/O流的使用,尤其是字符流的读写操作,同时要求良好的编程习惯,异常处理,日志记录,以及用户交互等功能。为了满足优秀标准,还需要考虑代码的设计和优化,以及测试和版本...

    历届蓝桥杯软件类真题+个人决赛+个人省赛+模拟赛+校内个人选拔赛+java题目+python题目+C语言

    历届蓝桥杯软件类真题+个人决赛+个人省赛+模拟赛+校内个人选拔赛+java题目+python题目+C语言 第八届蓝桥杯大赛个人赛决赛(软件类)真题 第八届蓝桥杯大赛个人赛省赛(软件类)真题 第九届蓝桥杯大赛个人赛决赛...

    SWUST Java题目期末练习题

    SWUST Java题目期末练习题

    Java题目及答案.wps

    Java题目及答案.wps

    500道JAVA面试大全,所有涉及笔试,面试的JAVA题目

    500道JAVA面试大全,所有涉及笔试,面试的JAVA题目,轻松入职软件公司

    13、Java题目带参考答案讲解44页.rar

    文件名:13、Java题目带参考答案讲解44页.rar文件类型:word格式使用方式:直接解压,无密码

    java题目(简)

    从给定的文件信息来看,这是一份关于Java编程的基础题目集合,主要聚焦于类的实例化、运算符的使用以及基本的数学计算在Java中的实现。以下是对这些知识点的详细解析: ### Java基础知识:类的实例化 在Java中,类...

    Java入门题目集合

    Java编程是IT领域中最基础且重要的技能之一,对于初学者来说,通过解决一系列的编程题目可以有效提升理解和应用能力。以下是一些基于给定题目所涵盖的Java知识点的详细解释: 1. **数字竖式计算**:这道题目涉及到...

    史上最全Java面试题目大集合

    整理了网上的一些java面试题目,很全很强大 面向对象的特征有哪些方面 1. 抽象:抽象就是忽略一个主题中与当前目标2. 无关的那些方面,3. 以便更充分地注意与当前目标4. 有关的方面。抽象并不5. 打算了解全部问题...

    PTA题目(L1)(Java).docx

    在这个题目中,学习者将了解到Java中的`System.out.println()`函数用于在控制台打印字符串。 2. **L1-004 计算摄氏温度** 该题要求将华氏温度转换为摄氏温度,利用公式`C = 5 * (F - 32) / 9`。参赛者需要了解...

    02.java题目及答案.docx

    Java 基础知识与Java编程题目 Java 是一种广泛使用的高级编程语言,由Sun Microsystems公司开发,广泛应用于Android应用开发、Web应用开发、桌面应用开发等领域。Java语言的设计目标是“write once, run anywhere”...

    最新java考试题目(找工作)

    "Java面试题目" 从给定的文件信息中,我们可以生成以下知识点: 1. 抽象(Abstraction):抽象是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象包括两个方面,一是过程抽象...

    常用的Java面试题目汇总

    Java作为一门广泛使用的编程语言,其面试题目涵盖了基础语法、面向对象、集合框架、多线程、异常处理、IO流、网络编程、JVM优化、设计模式等多个方面。以下是一些基于给定文件名的常见Java面试知识点: 1. **Java ...

Global site tag (gtag.js) - Google Analytics