2.简述实现Servlet的方法和步骤

实现Servlet有三种方法

实现javax.servlet.Servlet接口

继承javax.servlet.GenericServlet类

继承javax.servlet.http.HttpServlet类

创建web项目

开发步骤:

1.创建web项目

2.导入jar包

3.创建Servlet类

4.注册Servlet类

5.部署项目

6.访问Servlet

7.重新部署

3.简述Servlet的生命周期

1.实例化阶段:服务器对Servlet进行实例化,调用Servlet的构造方法

2.初始化阶段:服务器调用Servlet的init方法进行初始化(只是在第一次请求时调用)。

3.请求处理阶段:服务器调用Servlet的service方法然后根据请求方式调用响应的doxxx方法

4.服务终止阶段:服务器调用Servlet的destroy方法销毁Servlet实例

4.简述MVC编程思想

MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑,数据,界面显示分离的犯法组织代码,将业务罗技聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。其中M层处理数据,业务逻辑等;V层处理界面显示结果;C层起到桥梁的作用,来控制V层和M层通信以此来大道分离视图显示View和业务逻辑层Model。MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同表现形式。

比如一批统计数据可以分别用柱状图,饼图表示C存在的目的则是确保M和V的同步,一旦M改变V一个同步更新。

10月18日考试简答题答案

5.简述JDBC链接数据库的过程,包括主要的类和方法的调用

创建一个以JDBC链接数据库的程序,包含7个步骤

1.加载JDBC驱动程序:

在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(java虚拟机),

这通过java.lang.Class类的静态方法forName(String className)实现。

例如:

try{

//加载MySql的驱动类

Class.forName("com.mysql.jdbc.Driver");

}catch(ClassNotFoundException e){

System.out.println("找不到驱动程序类,加载驱动失败!");

e.printStackTrace();

}

成功加载后,会将Driver类的实例注册到DriverManager类中。

2.提供JDBC连接的URL

连接URL定义了连接数据库时的协议,子协议,数据源标识。

书写形式:协议:子协议:数据源标识

协议:在JDBC中总以jdbc开始

子协议:是桥连接的驱动程序或是数据库管理系统名称

数据源标识:标记找到数据库来源的地址与连接端口

例如:(MySql的连接URL)

jdbc:mysql:

      //localhost:3306/test?useUnicode=true&characterEncoding=gbk;

useUnicode=true;标识使用Unicode字符集。如果characterEncoding设置为

gb2312或GBK,本参数必须设置为true.characterEncoding=gbk;字符编码方式

3.创建数据库的连接

要连接数据库,需要向java.sql.DriverManager请求并获得Connection对象,

该对象就代表一个数据库的连接

使用DriverManager的getConnection(String url , String usename, String password)方法传入指定的欲连接的数据库的路径,数据库的用户名和密码来获得

例如://连接MySql数据库,用户名和密码都是root

String url = "jdbc:mysql://localhost:3306/test";

String username = "root";

String password = "root";

try{

Connection con = 

                            DriverManager.getConnection(url , username ,password );

}catch(SQL Excepiton se){

System.out.pritln("数据库连接失败!");

se.printStackTrace();

}

4.创建一个Statement

要执行SQL语句,必须获得java.sql.Statement实例,Statement实例分为以下3  
     种类型:   
      1、执行静态SQL语句。通常通过Statement实例实现。   
      2、执行动态SQL语句。通常通过PreparedStatement实例实现。   
      3、执行数据库存储过程。通常通过CallableStatement实例实现。   
    具体的实现方式:   
        Statement stmt = con.createStatement() ;   
       PreparedStatement pstmt = con.prepareStatement(sql) ;   
       CallableStatement cstmt =    
                            con.prepareCall("{CALL demoSp(? , ?)}") ;  

5.执行SQL语句

Statement接口提供了三种执行SQL语句的方法:executeQuery 、executeUpdate   
   和execute   
    1、ResultSet executeQuery(String sqlString):执行查询数据库的SQL语句   
        ,返回一个结果集(ResultSet)对象。   
     2、int executeUpdate(String sqlString):用于执行INSERT、UPDATE或   
        DELETE语句以及SQL DDL语句,如:CREATE TABLE和DROP TABLE等   
     3、execute(sqlString):用于执行返回多个结果集、多个更新计数或二者组合的   
        语句。   
   具体实现的代码:   
          ResultSet rs = stmt.executeQuery("SELECT * FROM ...") ;   
    int rows = stmt.executeUpdate("INSERT INTO ...") ;   
    boolean flag = stmt.execute(String sql) ;

6.处理结果

 两种情况:   
     1、执行更新返回的是本次操作影响到的记录数。   
     2、执行查询返回的结果是一个ResultSet对象。   
    • ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了对这些   
      行中数据的访问。   
    • 使用结果集(ResultSet)对象的访问方法获取数据:   
     while(rs.next()){   
         String name = rs.getString("name") ;   
    String pass = rs.getString(1) ; // 此方法比较高效   
     }   
    (列是从左到右编号的,并且从列1开始)   

7.关闭JDBC对象

操作完成以后要把所用使用的JDBC 对象全部关闭,以释放JDBC资源,关闭顺序和声明顺序相反

1.关闭记录集

2.关闭声明

3.关闭连接对象

if(rs != null){   // 关闭记录集   
        try{   
            rs.close() ;   
        }catch(SQLException e){   
            e.printStackTrace() ;   
        }   
          }   
          if(stmt != null){   // 关闭声明   
        try{   
            stmt.close() ;   
        }catch(SQLException e){   
            e.printStackTrace() ;   
        }   
          }   
          if(conn != null){  // 关闭连接对象   
         try{   
            conn.close() ;   
         }catch(SQLException e){   
            e.printStackTrace() ;   
         }   
          }
6.简述jsp中内置对象以及含义

1.request对象:客户端的请求信息被封装到request对象中,通过request可以了解到客户的需求,然后做出响应。

2.response对象:response对象包含了响应客户请求的有关信息,但在JSP中很少直接用到它。

3.session对象:session对象指的是客户端与服务端的一次会话,从客户端到服务端的一个WebApplication开始,直到客户端与服务端断开连接为止。

4.out对象:out对象是JspWriter类的实例,是向客户端输出内容常用的对象。

5.page对象:page对象就是指向当前JSP页面本身。

6:application对象:application对象实现了用户间数据的共享,可存放全局变量。它开始服务器的启动,直到服务器的关闭,在此期间,此对象将一直存在。这样在用户的前后连接或不同用户之间的连接中,可以对此对象的同一属性进行操作;在任何地方对此对象属性的操作,都将影响到其他用户对此的方法。服务器的启动和关闭决定了application对象的生命。

7:exception对象:exception对象是一个例外对象,当一个页面在运行过程中发生了例外,就产生这个对象。如果一个JSP页面要应用此对象,必须把isErrorPage设为true,否则无法编译。

8.pageContext对象:pageContext对象提供了对JSP页面所有对象及名字空间的方法,也就是,它可以访问到本页的所有session,也可以取本页面所在application的某一属性值,它相当于页面中所有功能的集大成者,它的本类名也叫pageContext。

9.config对象:config对象是一个在Servlet初始化时,JSP引擎向它传递信息用的,此信息包括Servlet初始化时所要用到的参数(通过属性名和属性值构成)以及服务器的有关信息(通过传递一个ServletContext对象)。

 

 

 

 

 

 

相关文章:

  • 2022-12-23
  • 2021-07-17
  • 2021-10-24
  • 2021-08-18
  • 2022-12-23
  • 2021-06-13
  • 2021-12-31
  • 2021-08-13
猜你喜欢
  • 2021-12-25
  • 2022-01-22
  • 2022-12-23
  • 2021-04-01
  • 2021-12-15
  • 2021-07-28
相关资源
相似解决方案