亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? tiptestservlet.java

?? java的一些教程 大家看看,很有用的
?? JAVA
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
// TipTestServlet.java
// TipTestServlet sends Tip Test to clients.
package com.deitel.advjhtp1.wireless;

// Java core packages
import java.io.*;
import java.sql.*;
import java.util.*;

// Java extension packages
import javax.servlet.*;
import javax.servlet.http.*;
import javax.xml.parsers.*;
import javax.xml.transform.*;
import javax.xml.transform.dom.*;
import javax.xml.transform.stream.*;

// import third-party packages
import org.w3c.dom.*;
import org.xml.sax.SAXException;

public class TipTestServlet extends HttpServlet {

   private Connection connection; // database connection

   private DocumentBuilderFactory factory;
   private TransformerFactory transformerFactory;

   // initialize servlet
   public void init() throws ServletException
   {
      // load database driver and instantiate XML factories
      try {

         // get JDBC driver from servlet container
         String jdbcDriver = 
            getServletConfig().getInitParameter( 
               "JDBC_DRIVER" );

         Class.forName( jdbcDriver ); // load JDBC driver

         // get database URL from servlet container
         String databaseUrl = 
            getServletConfig().getInitParameter( 
               "DATABASE_URL" );

         connection = DriverManager.getConnection( databaseUrl );

         // create a Factory to build XML Documents
         factory = DocumentBuilderFactory.newInstance();

         // create new TransformerFactory
         transformerFactory = TransformerFactory.newInstance();

      } // end try

      // handle exception database driver class does not exist
      catch ( ClassNotFoundException classNotFoundException ) {
         classNotFoundException.printStackTrace();
      }

      // handle exception in making Connection
      catch ( SQLException sqlException ) {
         sqlException.printStackTrace();
      }

   } // end method init

   // respond to get requests
   protected void doGet( HttpServletRequest request,
      HttpServletResponse response )
      throws ServletException, IOException
   {
      // get Statement from database, then send Tip-Test Question
      try {

         // SQL query to database
         Statement statement = connection.createStatement();

         // get database information using SQL query
         ResultSet resultSet = 
            statement.executeQuery( "SELECT * FROM tipInfo" );

         // parse and send ResultSet to client
         if ( resultSet != null ) {

            // ensure that client does not cache questions
            response.setHeader( "Cache-Control", 
               "no-cache, must-revalidate" );
            response.setHeader( "Pragma", "no-cache" );

            sendTipTestQuestion( request, response, resultSet );
         }

         statement.close(); // close Statement
      }

      // handle exception in exectuting Statement
      catch ( SQLException sqlException ) {
         sqlException.printStackTrace();
      }

   } // end method doGet

   // respond to post requests
   protected void doPost( HttpServletRequest request,
      HttpServletResponse response )
      throws ServletException, IOException
   {
      // send ResultSet to appropriate client
      try {

         // determine User-Agent header
         String userAgent = request.getHeader( "User-Agent" );

         // if Internet Explorer is requesting client
         if ( userAgent.indexOf(
            ClientUserAgentHeaders.IE ) != -1 ) {

            Document document = 
               createXMLTipTestAnswer( request );

            // set appropriate Content-Type for client
            response.setContentType( "text/html" );

            // send XML content to client after XSLT
            applyXSLT( "XHTML/XHTMLTipAnswer.xsl", document, 
               response );
         }

         // if WAP client is requesting client
         else if ( userAgent.indexOf(
            ClientUserAgentHeaders.WAP ) != -1 ) {

            Document document = 
               createXMLTipTestAnswer( request );

            // set appropriate Content-Type for client
            response.setContentType( "text/vnd.wap.wml" );

            // send XML content to client after XSLT
            applyXSLT( "WAP/WAPTipAnswer.xsl", document, 
               response );
         }

         // if i-mode client is requesting client
         else if ( userAgent.indexOf(
            ClientUserAgentHeaders.IMODE ) != -1 ) {

            Document document = 
               createXMLTipTestAnswer( request );

            // set appropriate Content-Type for client
            response.setContentType( "text/html" );

            // send XML content to client after XSLT
            applyXSLT( "iMode/IMODETipAnswer.xsl", document, 
               response );
         }

         // if J2ME client is requesting client
         else if ( userAgent.indexOf(
            ClientUserAgentHeaders.J2ME ) != -1 )
            sendJ2MEAnswer( request, response );

      } // end try

      // handle exception if Document is null
      catch ( NullPointerException nullPointerException ) {
         nullPointerException.printStackTrace();
      }

   } // end method doPost

   // send Tip-Test data to client
   private void sendTipTestQuestion( 
      HttpServletRequest request, HttpServletResponse response, 
      ResultSet resultSet ) throws IOException
   {
      // send ResultSet to appropriate client
      try {

         // determine User-Agent header
         String userAgent = request.getHeader( "User-Agent" );

         // if Internet Explorer is requesting client
         if ( userAgent.indexOf(
            ClientUserAgentHeaders.IE ) != -1 ) {

            Document document = 
               createXMLTipTestQuestion( resultSet, request, 
                  request.getContextPath() + "/XHTML/images/", 
                     ".gif" );

            // set appropriate Content-Type for client
            response.setContentType( "text/html" );
            applyXSLT( "XHTML/XHTMLTipQuestion.xsl", document, 
               response );
         }

         // if WAP client is requesting client
         else if ( userAgent.indexOf(
            ClientUserAgentHeaders.WAP ) != -1 ) {

            Document document = 
               createXMLTipTestQuestion( resultSet, request,
                  request.getContextPath() + "/WAP/images/", 
                     ".wbmp" );

            // set appropriate Content-Type for client
            response.setContentType( "text/vnd.wap.wml" );
            applyXSLT( "WAP/WAPTipQuestion.xsl", document, 
               response );
         }

         // if i-mode client is requesting client
         else if ( userAgent.indexOf(
            ClientUserAgentHeaders.IMODE ) != -1 ) {

            Document document = 
               createXMLTipTestQuestion( resultSet, request,
                  request.getContextPath() + "/iMode/images/", 
                     ".gif" );

            // set appropriate Content-Type for client
            response.setContentType( "text/html" );
            applyXSLT( "iMode/IMODETipQuestion.xsl", document, 
               response );
         }

         // if J2ME client is requesting client
         else if ( userAgent.indexOf(
            ClientUserAgentHeaders.J2ME ) != -1 )
            sendJ2MEClientResponse( resultSet, request, 
               response );

      } // end try

      // handle exception if Document is null
      catch ( NullPointerException nullPointerException ) {
         nullPointerException.printStackTrace();
      }

   } // end method sendTipTestQuestion

   // send tip test to Internet Explorer client
   private Document createXMLTipTestQuestion( 
      ResultSet resultSet, HttpServletRequest request,
      String imagePrefix, String imageSuffix )
      throws IOException
   {
      // convert ResultSet to two-dimensional String array
      String resultTable[][] = getResultTable( resultSet );

      // create random-number generator
      Random random = new Random( System.currentTimeMillis() );

      // create 4 random tips
      int randomRow[] = getRandomIndices( random );

      // randomly determine correct index from 4 random indices
      int correctAnswer = Math.abs( random.nextInt() ) % 
         randomRow.length;

      int correctRow = randomRow[ correctAnswer ];

      // open new session
      HttpSession session = request.getSession();

      // store correct answer in session
      session.setAttribute( "correctAnswer", 
         new Integer( correctAnswer ) );

      // store correct tip name
      session.setAttribute( "correctTipName", new String( 
         resultTable[ correctRow ][ 1 ] ) );

      // store correct tip description
      session.setAttribute( "correctTipDescription", new String( 
         resultTable[ correctRow ][ 2 ] ) );

      // determine image to send client
      String imageName = imagePrefix  + 
         resultTable[ correctRow ][ 3 ] + imageSuffix;

      // create XML document based on randomly determined info
      try {

         // create document
         DocumentBuilder builder = factory.newDocumentBuilder();
         Document document = builder.newDocument();

         // create question root Element
         Element root = document.createElement( "question" );
         document.appendChild( root );

         // append Element image, which references image name
         Element image = document.createElement( "image" );
         image.appendChild( 
            document.createTextNode( imageName ) );
         root.appendChild( image );

         // create choices Element to hold 4 choice Elements
         Element choices = document.createElement( "choices" );

         // append 4 choice Elements that represent user choices
         for ( int i = 0; i < randomRow.length; i++ )
         {
            // determine choice Elements from resultTable
            Element choice = document.createElement( "choice" );
            choice.appendChild( document.createTextNode( 
               resultTable[ randomRow[ i ] ][ 4 ] ) );

            // set choice Element as correct or incorrect
            Attr attribute = 
               document.createAttribute( "correct" );

            if ( i == correctAnswer )
               attribute.setValue( "true" );
            else
               attribute.setValue( "false" );

            // append choice Element to choices Element
            choice.setAttributeNode( attribute );
            choices.appendChild( choice );
         }

         root.appendChild( choices );

         return document;

      } // end try

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91麻豆国产在线观看| 不卡av免费在线观看| 成人免费一区二区三区视频| 在线不卡一区二区| 国产成人av电影在线| 天天色综合天天| 亚洲精品日日夜夜| 国产欧美精品一区二区色综合 | 日本不卡123| 日韩**一区毛片| 国产精品进线69影院| 日韩免费福利电影在线观看| 欧美无乱码久久久免费午夜一区| 国产传媒欧美日韩成人| 久久精品国产久精国产| 亚洲综合色丁香婷婷六月图片| 欧美经典一区二区| 欧美精品一区二区三区四区 | 午夜精品免费在线观看| 国产精品午夜电影| 欧美v国产在线一区二区三区| 欧美欧美午夜aⅴ在线观看| 99久久久久久| 国产成人在线视频免费播放| 亚洲成a人在线观看| 亚洲精品欧美专区| 亚洲精品免费在线播放| 1000精品久久久久久久久| 欧美激情综合网| 中文av一区特黄| 久久久久九九视频| 久久久亚洲午夜电影| 久久亚洲一级片| 久久精品日韩一区二区三区| 欧美大胆人体bbbb| 日韩欧美国产一区在线观看| 5月丁香婷婷综合| 欧美一区二区三区视频在线| 欧美精品粉嫩高潮一区二区| 欧美日韩一级视频| 欧美日韩精品欧美日韩精品| 欧美三级资源在线| 欧美丰满嫩嫩电影| 久久综合九色综合久久久精品综合| 成人一区在线看| 亚洲一二三区在线观看| 中文字幕一区二区三区不卡在线 | 日韩一卡二卡三卡国产欧美| 欧美综合一区二区三区| 欧美三级在线看| 欧美日韩国产在线播放网站| 日韩三区在线观看| bt欧美亚洲午夜电影天堂| 亚洲婷婷在线视频| 夜夜嗨av一区二区三区四季av| 亚洲国产视频直播| 日韩精品一级二级 | 日日嗨av一区二区三区四区| 日韩高清国产一区在线| 在线免费av一区| 蜜臀精品一区二区三区在线观看 | 蜜臀av性久久久久蜜臀aⅴ流畅| 强制捆绑调教一区二区| 精品一区二区在线看| 国产成人激情av| 色综合久久88色综合天天 | 在线看一区二区| 欧美一区二区三区色| 亚洲精品一区二区三区99| 国产精品麻豆99久久久久久| 亚洲一线二线三线视频| 青青草伊人久久| 成人免费毛片aaaaa**| 91麻豆swag| 欧美大片在线观看一区二区| 久久久精品免费免费| 亚洲美女少妇撒尿| 精品一区二区三区的国产在线播放| 国产成人精品三级| 欧美日韩精品专区| 国产欧美精品一区| 亚洲成人精品一区二区| 国产成人免费视频一区| 欧美日本高清视频在线观看| 久久精品免视看| 午夜日韩在线观看| 不卡一区二区三区四区| 欧美一区二区美女| 亚洲美女免费在线| 国产精品白丝jk黑袜喷水| 欧美日本免费一区二区三区| 国产精品三级在线观看| 麻豆免费看一区二区三区| 99精品欧美一区二区三区综合在线| 正在播放一区二区| 亚洲精品大片www| 国产精品综合网| 欧美一区二区三区在| 艳妇臀荡乳欲伦亚洲一区| 国产精品综合av一区二区国产馆| 欧美日韩一区二区三区四区| 亚洲国产成人一区二区三区| 日本美女一区二区三区视频| 91欧美激情一区二区三区成人| 久久久久久久久久久久电影| 丝袜亚洲精品中文字幕一区| 91麻豆6部合集magnet| 欧美韩国日本不卡| 国产在线国偷精品产拍免费yy| 欧美日高清视频| 亚洲黄色免费网站| 99麻豆久久久国产精品免费优播| 精品国产123| 日日摸夜夜添夜夜添国产精品| 91国偷自产一区二区开放时间| 国产精品久久午夜| 国产91对白在线观看九色| 欧美精品一区男女天堂| 另类人妖一区二区av| 日韩午夜精品电影| 日本成人在线一区| 欧美精品一二三| 午夜精品福利在线| 精品视频一区二区三区免费| 亚洲精品免费在线| 91视频一区二区| 一区二区视频免费在线观看| 97久久人人超碰| 亚洲免费在线视频一区 二区| a级高清视频欧美日韩| 国产精品电影一区二区| 丰满亚洲少妇av| 国产精品污污网站在线观看| 成人性生交大合| 中文字幕一区二| 色www精品视频在线观看| 亚洲欧洲国产专区| a在线播放不卡| 亚洲女同一区二区| 欧洲亚洲精品在线| 亚洲不卡av一区二区三区| 欧美日韩不卡一区| 蜜桃在线一区二区三区| 日韩欧美国产综合一区 | 欧美日韩中文国产| 日本vs亚洲vs韩国一区三区二区| 日韩色在线观看| 国产精品自在在线| 国产精品久久久久久久午夜片| 91一区二区三区在线播放| 亚洲一区二区三区美女| 欧美日本高清视频在线观看| 精品一区二区三区视频在线观看| 2020国产精品自拍| 成人深夜在线观看| 一区二区三区鲁丝不卡| 在线电影欧美成精品| 国产自产视频一区二区三区| 国产目拍亚洲精品99久久精品| 成人听书哪个软件好| 亚洲精品免费在线| 日韩午夜三级在线| 丁香一区二区三区| 亚洲一区二区三区四区在线免费观看 | 国产福利91精品一区二区三区| 中文字幕成人av| 色猫猫国产区一区二在线视频| 亚洲aⅴ怡春院| 国产欧美日韩三级| 在线免费不卡电影| 国产一区二区三区精品欧美日韩一区二区三区 | www.亚洲精品| 五月天视频一区| 国产免费久久精品| 欧美日韩精品一区二区三区| 国产一区二区调教| 国产精品二区一区二区aⅴ污介绍| 欧美日韩视频第一区| 国产黄色成人av| 日韩综合小视频| 中文字幕不卡一区| 欧美丰满一区二区免费视频| 成人免费视频播放| 免费成人深夜小野草| 亚洲色图.com| 久久综合久久综合久久综合| 色综合久久六月婷婷中文字幕| 久久99久久久欧美国产| 亚洲精品videosex极品| 久久精品男人天堂av| 欧美蜜桃一区二区三区| www.在线成人| 国产一区 二区| 亚洲成a人片综合在线| 国产精品福利av| 久久嫩草精品久久久久| 欧美精品久久久久久久久老牛影院| 懂色av中文字幕一区二区三区| 久久精品国产精品亚洲精品| 一区二区三区在线视频播放|