<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    夢(mèng)想飛翔

    自強(qiáng)不息
    posts - 111, comments - 30, trackbacks - 0, articles - 0
      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    代碼編程

    Posted on 2007-05-21 11:54 love1563 閱讀(175) 評(píng)論(0)  編輯  收藏

    138 Java 的通信編程,編程題 ( 或問(wèn)答 ) ,用 JAVA SOCKET 編程,讀服務(wù)器幾個(gè)字符,再寫(xiě)入本地顯示?
    : Server 端程序 :
    package test;
    import java.net.*;
    import java.io.*;

    public class Server
    {
    ?private ServerSocket ss;
    ?private Socket socket;
    ?private BufferedReader in;
    ?private PrintWriter out;
    ?public Server()
    ?{
    ??try
    ??{
    ???ss=new ServerSocket(10000);
    ???while(true)
    ???{
    ????socket = ss.accept();
    ????String RemoteIP = socket.getInetAddress().getHostAddress();
    ????String RemotePort = ":"+socket.getLocalPort();
    ????System.out.println("A client come in!IP:"+RemoteIP+RemotePort);
    ????in = new BufferedReader(new

    InputStreamReader(socket.getInputStream()));
    ????String line = in.readLine();
    ????System.out.println("Cleint send is :" + line);
    ????out = new PrintWriter(socket.getOutputStream(),true);
    ????out.println("Your Message Received!");
    ????out.close();
    ????in.close();
    ????socket.close();
    ???}
    ??}catch (IOException e)
    ??{
    ???out.println("wrong");
    ??}
    ?}
    ?public static void main(String[] args)
    ?{
    ??new Server();
    ?}
    };
    Client
    端程序 :
    package test;
    import java.io.*;
    import java.net.*;

    public class Client
    {
    ?Socket socket;
    ?BufferedReader in;
    ?PrintWriter out;
    ?public Client()
    ?{
    ??try
    ??{
    ???System.out.println("Try to Connect to 127.0.0.1:10000");
    ???socket = new Socket("127.0.0.1",10000);
    ???System.out.println("The Server Connected!");
    ???System.out.println("Please enter some Character:");
    ???BufferedReader line = new BufferedReader(new

    InputStreamReader(System.in));
    ???out = new PrintWriter(socket.getOutputStream(),true);
    ???out.println(line.readLine());
    ???in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
    ???System.out.println(in.readLine());
    ???out.close();
    ???in.close();
    ???socket.close();
    ??}catch(IOException e)
    ??{
    ???out.println("Wrong");
    ??}
    ?}
    ?public static void main(String[] args)
    ?{
    ??new Client();
    ?}
    };

    139 、用 JAVA 實(shí)現(xiàn)一種排序, JAVA 類(lèi)實(shí)現(xiàn)序列化的方法 ( 二種 ) 如在 COLLECTION 框架中,實(shí)現(xiàn)比較要實(shí)現(xiàn)什么樣的接口?
    : 用插入法進(jìn)行排序代碼如下
    package test;
    import java.util.*;
    class? InsertSort
    {
    ?ArrayList al;
    ?public InsertSort(int num,int mod)
    ?{
    ??al = new ArrayList(num);
    ??Random rand = new Random();
    ??System.out.println("The ArrayList Sort Before:");
    ??for (int i=0;i<num ;i++ )
    ??{
    ???al.add(new Integer(Math.abs(rand.nextInt()) % mod + 1));
    ???System.out.println("al["+i+"]="+al.get(i));
    ??}
    ?}
    ?public void SortIt()
    ?{
    ??Integer tempInt;
    ??int MaxSize=1;
    ??for(int i=1;i<al.size();i++)
    ??{
    ?????? tempInt = (Integer)al.remove(i);
    ????if(tempInt.intValue()>=((Integer)al.get(MaxSize-1)).intValue())
    ????{
    ?????al.add(MaxSize,tempInt);
    ?????MaxSize++;
    ?????System.out.println(al.toString());
    ????} else {
    ?????for (int j=0;j<MaxSize ;j++ )
    ?????{
    ??????if

    (((Integer)al.get(j)).intValue()>=tempInt.intValue())
    ??????{
    ???????al.add(j,tempInt);
    ???????MaxSize++;
    ???????System.out.println(al.toString());
    ???????break;
    ??????}
    ?????}
    ????}
    ??}
    ??System.out.println("The ArrayList Sort After:");
    ??for(int i=0;i<al.size();i++)
    ??{
    ???System.out.println("al["+i+"]="+al.get(i));
    ??}
    ?}
    ?public static void main(String[] args)
    ?{
    ??InsertSort is = new InsertSort(10,100);
    ??is.SortIt();
    ?}
    }
    140 、編程:編寫(xiě)一個(gè)截取字符串的函數(shù),輸入為一個(gè)字符串和字節(jié)數(shù),輸出為按字節(jié)截取的字符串。 但是要保證漢字不被截半個(gè),如 ABC”4 ,應(yīng)該截為 AB” ,輸入 ABC DEF” 6 ,應(yīng)該輸出為 ABC” 而不是 ABC+ 漢的半個(gè)
    答: 代碼如下:
    package test;

    class? SplitString
    {
    ?String SplitStr;
    ?int SplitByte;
    ?public SplitString(String str,int bytes)
    ?{
    ??SplitStr=str;
    ??SplitByte=bytes;
    ??System.out.println("The String is:'"+SplitStr+"';SplitBytes="+SplitByte);
    ?}
    ?public void SplitIt()
    ?{
    ??int loopCount;
    ??

    loopCount=(SplitStr.length()%SplitByte==0)?(SplitStr.length()/SplitByte):(SplitStr.length()/Split

    Byte+1);
    ??System.out.println("Will Split into "+loopCount);
    ??for (int i=1;i<=loopCount ;i++ )
    ??{
    ???if (i==loopCount){
    ????

    System.out.println(SplitStr.substring((i-1)*SplitByte,SplitStr.length()));
    ???} else {
    ????

    System.out.println(SplitStr.substring((i-1)*SplitByte,(i*SplitByte)));
    ???}
    ??}
    ?}
    ?public static void main(String[] args)
    ?{
    ??SplitString ss = new SplitString("test
    dd dsaf 中男大 3443n 中國(guó) 43 中國(guó)人

    0ewldfls=103",4);
    ??ss.SplitIt();
    ?}
    }

    141 JAVA 多線程編程。 JAVA 寫(xiě)一個(gè)多線程程序,如寫(xiě)四個(gè)線程,二個(gè)加 1 ,二個(gè)對(duì)一個(gè)變量減一,輸出。
    希望大家補(bǔ)上,謝謝

    142 、可能會(huì)讓你寫(xiě)一段 Jdbc Oracle 的程序 , 并實(shí)現(xiàn)數(shù)據(jù)查詢(xún) .
    : 程序如下:
    package hello.ant;
    import java.sql.*;
    public class? jdbc
    {
    ?String dbUrl="jdbc:oracle:thin:@127.0.0.1:1521:orcl";
    ?String theUser="admin";
    ?String thePw="manager";
    ?Connection c=null;
    ?Statement conn;
    ?ResultSet rs=null;
    ?public jdbc()
    ?{
    ??try{
    ??? Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
    ????????? c = DriverManager.getConnection(dbUrl,theUser,thePw);
    ??? conn=c.createStatement();
    ??}catch(Exception e){
    ???e.printStackTrace();
    ??}
    ?}
    ?public boolean executeUpdate(String sql)
    ?{
    ???try
    ???{
    ?????conn.executeUpdate(sql);
    ?????return true;
    ???}
    ???catch (SQLException e)
    ???{
    ?????e.printStackTrace();
    ?????return false;
    ???}
    ?}
    ?public ResultSet executeQuery(String sql)
    ?{
    ???rs=null;
    ???try
    ???{
    ?????rs=conn.executeQuery(sql);
    ???}
    ???catch (SQLException e)
    ???{
    ?????e.printStackTrace();
    ???}
    ???return rs;
    ?}
    ?public void close()
    ?{
    ???try
    ???{
    ?????conn.close();
    ?????c.close();
    ???}
    ???catch (Exception e)
    ???{
    ?????e.printStackTrace();
    ???}
    ?}
    ?public static void main(String[] args)
    ?{
    ??ResultSet rs;
    ??jdbc conn = new jdbc();
    ??rs=conn.executeQuery("select * from test");
    ??try{
    ??while (rs.next())
    ??{
    ???System.out.println(rs.getString("id"));
    ???System.out.println(rs.getString("name"));
    ??}
    ??}catch(Exception e)
    ??{
    ???e.printStackTrace();
    ??}
    ?}
    }

    143 ORACLE 大數(shù)據(jù)量下的分頁(yè)解決方法。一般用截取 ID 方法,還有是三層嵌套方法。
    : 一種分頁(yè)方法
    <%
    ? int i=1;
    ? int numPages=14;
    ? String pages = request.getParameter("page") ;
    ? int currentPage = 1;
    ? currentPage=(pages==null)?(1):{Integer.parseInt(pages)}
    ? sql = "select count(*) from tables";
    ? ResultSet rs = DBLink.executeQuery(sql) ;
    ? while(rs.next()) i = rs.getInt(1) ;
    ? int intPageCount=1;
    ? intPageCount=(i%numPages==0)?(i/numPages):(i/numPages+1);
    ? int nextPage ;
    ? int upPage;
    ? nextPage = currentPage+1;
    ? if (nextPage>=intPageCount) nextPage=intPageCount;
    ? upPage = currentPage-1;
    ? if (upPage<=1) upPage=1;
    ? rs.close();
    ? sql="select * from tables";
    ? rs=DBLink.executeQuery(sql);
    ? i=0;
    ? while((i<numPages*(currentPage-1))&&rs.next()){i++;}
    %>
    //
    輸出內(nèi)容
    // 輸出翻頁(yè)連接
    合計(jì) :<%=currentPage%>/<%=intPageCount%><a href="List.jsp?page=1"> 第一頁(yè) </a><a

    href="List.jsp?page=<%=upPage%>"> 上一頁(yè) </a>
    <%
    ? for(int j=1;j<=intPageCount;j++){
    ? if(currentPage!=j){
    %>
    ? <a href="list.jsp?page=<%=j%>">[<%=j%>]</a>
    <%
    ? }else{
    ? out.println(j);
    ? }
    ? }
    %>
    <a href="List.jsp?page=<%=nextPage%>">
    下一頁(yè) </a><a href="List.jsp?page=<%=intPageCount%>"> 最后頁(yè)

    </a>

    144 、用 jdom 解析 xml 文件時(shí)如何解決中文問(wèn)題 ? 如何解析 ?
    : 看如下代碼 , 用編碼方式加以解決
    package test;
    import java.io.*;
    public class DOMTest
    {
    ?private String inFile = "c:\\people.xml";
    ?private String outFile = "c:\\people.xml";?
    ?public static void main(String args[])
    ?{
    ??? ?new DOMTest();
    ??? }
    ?public DOMTest()
    ?{
    ??try
    ???? {?
    ???? ?javax.xml.parsers.DocumentBuilder builder =
    ???? ??

    javax.xml.parsers.DocumentBuilderFactory.newInstance().newDocumentBuilder();
    ???? ?org.w3c.dom.Document doc = builder.newDocument();
    ???? ?org.w3c.dom.Element root = doc.createElement("
    老師 ");
    ???? ?org.w3c.dom.Element wang = doc.createElement("
    ");
    ???org.w3c.dom.Element liu = doc.createElement("
    ");
    ???? ?wang.appendChild(doc.createTextNode("
    我是王老師 "));
    ???? ?root.appendChild(wang);
    ???? ?doc.appendChild(root);
    ???? ?javax.xml.transform.Transformer transformer =
    ???? ??javax.xml.transform.TransformerFactory.newInstance().newTransformer();
    ???? ?transformer.setOutputProperty(javax.xml.transform.OutputKeys.ENCODING, "gb2312");
    ???? ?transformer.setOutputProperty(javax.xml.transform.OutputKeys.INDENT, "yes");??

    ? ?
    ???? ?transformer.transform(new javax.xml.transform.dom.DOMSource(doc),
    ???? ???????new

    javax.xml.transform.stream.StreamResult(outFile));
    ???? }
    ???? catch (Exception e)
    ???? {
    ???? ?System.out.println (e.getMessage());
    ???? }
    ??? }
    }

    145 、編程用 JAVA 解析 XML 的方式 .
    :
    SAX 方式解析 XML XML 文件如下:
    <?xml version="1.0" encoding="gb2312"?>
    <person>
    ? <name>
    王小明 </name>
    ? <college>
    信息學(xué)院 </college>??
    ? <telephone>6258113</telephone>
    ? <notes>
    ,1955 年生 , 博士, 95 年調(diào)入海南大學(xué) </notes>
    ?</person>
    ?
    事件回調(diào)類(lèi) SAXHandler.java
    ?import java.io.*;
    import java.util.Hashtable;
    import org.xml.sax.*;
    public class SAXHandler extends HandlerBase
    ? {
    ? private Hashtable table = new Hashtable();
    ? private String currentElement = null;
    ? private String currentValue = null;
    ? public void setTable(Hashtable table)
    ??? {
    ??? this.table = table;
    ??? }
    ? public Hashtable getTable()
    ??? {
    ??? return table;
    ??? }
    ? public void startElement(String tag, AttributeList attrs)
    ? throws SAXException
    ??? {
    ??? currentElement = tag;
    ??? }
    ? public void characters(char[] ch, int start, int length)
    ? throws SAXException
    ??? {
    ??? currentValue = new String(ch, start, length);
    ??? }
    ? public void endElement(String name) throws SAXException
    ??? {
    ??? if (currentElement.equals(name))
    ????? table.put(currentElement, currentValue);
    ??? }
    ? }
    JSP
    內(nèi)容顯示源碼 ,SaxXml.jsp:
    <HTML>
    <HEAD>
    <TITLE>
    剖析 XML 文件 people.xml</TITLE>
    </HEAD>
    <BODY>
    <%@ page errorPage="ErrPage.jsp"
    contentType="text/html;charset=GB2312" %>
    <%@ page import="java.io.*" %>
    <%@ page import="java.util.Hashtable" %>
    <%@ page import="org.w3c.dom.*" %>
    <%@ page import="org.xml.sax.*" %>
    <%@ page import="javax.xml.parsers.SAXParserFactory" %>
    <%@ page import="javax.xml.parsers.SAXParser" %>
    <%@ page import="SAXHandler" %>
    <%
    File file = new File("c:\\people.xml");
    FileReader reader = new FileReader(file);
    Parser parser;
    SAXParserFactory spf = SAXParserFactory.newInstance();
    SAXParser sp = spf.newSAXParser();
    SAXHandler handler = new SAXHandler();
    sp.parse(new InputSource(reader), handler);
    Hashtable hashTable = handler.getTable();
    out.println("<TABLE BORDER=2><CAPTION>
    教師信息表 </CAPTION>");
    out.println("<TR><TD>
    姓名 </TD>" + "<TD>" +
    ? (String)hashTable.get(new String("name")) + "</TD></TR>");
    out.println("<TR><TD>
    學(xué)院 </TD>" + "<TD>" +
    ? (String)hashTable.get(new String("college"))+"</TD></TR>");
    out.println("<TR><TD>
    電話 </TD>" + "<TD>" +
    ? (String)hashTable.get(new String("telephone")) + "</TD></TR>");
    out.println("<TR><TD>
    備注 </TD>" + "<TD>" +
    ? (String)hashTable.get(new String("notes")) + "</TD></TR>");
    out.println("</TABLE>");
    %>
    </BODY>
    </HTML>

    只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 最近中文字幕mv手机免费高清| 狠狠久久永久免费观看| 国产精品无码免费视频二三区| 亚洲综合精品香蕉久久网| 777亚洲精品乱码久久久久久| 亚洲AV第一成肉网| a在线观看免费网址大全| 在人线av无码免费高潮喷水| 亚洲性久久久影院| 亚洲人成网站18禁止久久影院| 黄色免费网址在线观看| 95老司机免费福利| 亚洲国产成人精品无码久久久久久综合| 色婷婷亚洲十月十月色天| 最新亚洲人成网站在线观看| 免费国产黄网站在线观看 | 在线观看亚洲精品福利片| 亚洲丰满熟女一区二区v| 亚洲视频在线免费| 夜夜嘿视频免费看| 亚洲国产精品国自产拍电影| 美女黄频a美女大全免费皮| 国产高清免费视频| 亚洲乱亚洲乱妇无码麻豆| 亚洲成a人片在线观看天堂无码| 久操视频免费观看| 亚洲国产成人久久综合区| 国产成人精品日本亚洲专一区| 99久久婷婷免费国产综合精品| 日韩高清免费观看| 亚洲欧洲日产v特级毛片| 久久久WWW免费人成精品| 免费观看毛片视频| 亚洲欧洲校园自拍都市| 久久精品国产影库免费看| 亚洲国产成人精品91久久久| 亚洲日韩国产欧美一区二区三区 | 无码少妇一区二区浪潮免费| 亚洲国产精品高清久久久| 瑟瑟网站免费网站入口| 毛片A级毛片免费播放|