java tcp网络编程、jdbc、流的关闭(close()封装)

JAVA服务器、客户端编程


一、 TCP编程

  • #### 服务器端
/*1 创建服务器*/
ServerSocket server  = new ServerSocket("8080");     
/*2 监听 等待客户端连接 */
Socket client = server.accept();
/*3 服务器接收客户端发来的数据 */

    /*a 创建输入管道 */
    InputStream is = client.getInputStream();     
    /*b 创建接收buffer */
    byte[ ] buffer = new byte[ 1024];    
    /*c 接收数据 */
    int len = is.read(buffer);
    【打印数据:System.out.println(new String(buffer,0,len,“gbk”)));】
/*4 服务器发送数据到客户端 */   
    /*a 创建输出管道 */
    OutputStream os = client.getOutputStream();

    /*b发送数据 */
    os.write("发送数据内容".getBytes("gbk"));   
  • #### 客户端
/*1 创建客户端*/
 Socket client = new Socket(“localhost”,8080);
/*2 发送数据到客户端*/
    /*a 创建输出管道*/
    OutputSream os = client.getOutputStream();
    /*b 发送数据*/
    os.write("发送数据内容".getBytes("gbk"));//解决乱码
/*3 客户端接收服务器数据*/
     /*a 创建输入管道 */
    InputStream is = client.getInputStream();     
    /*b 创建接收buffer */
    byte[ ] buffer = new byte[ 1024];    
    /*c 接收数据 */
    int len = is.read(buffer);
    【打印数据:System.out.println(new String(buffer,0,len,“gbk”)));】

二、JDBC连接数据库

/* ****没有写异常处理**** */
    /*加载驱动类*/
    Class.forName("com.mysql.jdbc.Driver");
    Connection c = null;
    PreparedStatement ps = null;
    ResultSet rs =null;//处理结果集
    /*获取连接*/
     c = DriverManager.getConnection(""jdbc:mysql://localhost:3306//test","用户名","密码");
    /*3)通过获取的连接拿到sql语句处理者 解决sql注入问题*/
    String sql = "select * from emp e where e.ename like ?";/sql语句
    ps = c.preparedStatement(sql);
    ps.setString(1,"%"+searchName+"%");//计数从1开始
    rs = ps.executeQuery();//executeUpate()
    /*4 处理结果集*/
    while(rs.next()){
        String str = rs.getString("name");
        .........
        ........
        处理程序
    }

三 、 流的close封装,用反射

public static void close(Object ...object){
    for(Object obj:object){
        if(null != obj){
            try{
                Class clazz = obj.getClass();//获取class对象
                Method close = clazz.getMethod("close");//获取对应的close方法
                close.invoke();//执行close()方法
            }catch(Excepting e){
            e.printStackTrace();
            }
        }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值