Java网络编程丶数据库编程丶XML解析技术。
Java网络编程
物理层。
数据链路层。
网络层。
传输层。
会话层。
表示层。
应用层。
TCP/IP分层接口包括用于协作层分别完成以下的功能:
网络接口层。
网络互联层。
传输层。
应用层。
套接字:
Socket。套接字。是一种抽象层。
// 创建客户端Socket向服务器发起连接请求 Socket socket = new Socket("127.0.0.1", 30001); /* 利用已建立的socket创建输入输出流,处理与服务器端的连接 */ // 向服务器写入数据 BufferedWriter writer = new BufferedWriter(new OutputStreamWriter( socket.getOutputStream())); writer.write("你好服务器!!!"); writer.flush(); // 从服务器读数据 BufferedReader reader = new BufferedReader(new InputStreamReader( socket.getInputStream())); char[] ch = new char[100]; int len = reader.read(ch); System.out.println("从服务器端接收到的信息:"); System.out.print(new String(ch, 0, len)); // 释放资源 reader.close(); writer.close(); socket.close();
数据库编程
JDBC是Java中提供的一套数据库编程API。
DriverManager类用于管理JDBC驱动的服务类。
Connection接口代表数据库连接。
Statement接口代表SQL语句。
ResultSet接口代表返回的结果集。
Connection conn = null; // 连接对象 Statement stmt = null; // Statement对象 ResultSet rs = null; // 查询结果集 /* 加载驱动 */ try { Class.forName("com.mysql.jdbc.Driver"); } catch (ClassNotFoundException e) { e.printStackTrace(); } /* 创建Connection对象 */ // 连接字符串 String url = "jdbc:mysql://localhost:3306/java"; // 用户名 String user = "root"; // 密码 String pwd = "5245"; try { // 创建连接 conn = DriverManager.getConnection(url, user, pwd); System.out.println("连接成功"); } catch (SQLException e) { e.printStackTrace(); } /* 创建Statement对象 */ try { stmt = conn.createStatement(); } catch (SQLException e) { e.printStackTrace(); } /* 发送SQL语句执行 */ // 添加 // String sql1 = // "INSERT INTO users(id,username,pwd) VALUES(4,‘HXS‘,‘1995‘)"; // int count = 0; // try { // count = stmt.executeUpdate(sql1); // } catch (SQLException e) { // // e.printStackTrace(); // } // /* 处理执行结果 */ // if (count == 1) { // System.out.println("添加成功"); // } else { // System.out.println("添加失败"); // } // 查询 String sql = "SELECT id, username, pwd FROM users"; try { // 获取查询结果集 rs = stmt.executeQuery(sql); } catch (SQLException e) { // e.printStackTrace(); } try { // 循环读取下一条记录 while (rs.next()) { // 获取行中某列值 System.out.println("id = " + rs.getInt("id") + ", username = " + rs.getString("username") + ", password = " + rs.getString("pwd")); } } catch (SQLException e) { // e.printStackTrace(); } /* 释放资源:必做 */ if (conn != null) try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } finally { if (rs != null) try { rs.close(); } catch (SQLException e) { e.printStackTrace(); } finally { if (stmt != null) try { stmt.close(); } catch (SQLException e) { e.printStackTrace(); } } } }
XML解析技术
XML:可扩展标记语言。
形式:
进行验证的处理器--检查XML文档的有效性和格式规范。
不进行验证的处理器--检查XML文档的格式规范。
XML解析器使用的两种基本API:
文档对象模型(DOM):一种基于树结构的API。
XML简单API(SAX):一种事件驱动的API。
<!-- 企鹅 --> <penguins> <penguin id="1"> <name>豆豆</name> <!-- 姓名 --> <close>100</close> <!-- 亲密值 --> <health>100</health> <!-- 健康值 --> <gender>男</gender><!-- 性别 --> </penguin>
<!ELEMENT pet (dogs,penguins)> <!ELEMENT dogs (dog*)> <!ELEMENT dog (name,close,health,breed)> <!ATTLIST dog id CDATA #REQUIRED> <!ELEMENT penguins (penguin*)> <!ELEMENT penguin (name,close,health,gender)> <!ATTLIST penguin id CDATA #REQUIRED> <!ELEMENT name (#PCDATA)> <!ELEMENT close (#PCDATA)> <!ELEMENT health (#PCDATA)> <!ELEMENT breed (#PCDATA)> <!ELEMENT gender (#PCDATA)>
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。