zoukankan      html  css  js  c++  java
  • Java数据库访问技术

    1、Java集合:

    Collection Map

    List: 位于 java.util包中。 Arraylist 顺序结构。Linkedlist 链表结构

    // List<NewsClassify> list = new ArrayList<NewsClassify>();

    // NewsClassify n1 = new NewsClassify();

    // n1.setCreator("zhuxuekui");

    // n1.setTitleName("i love you");

    // n1.setNewsTypeId(1);

    // n1.setCreateTime("11:20");

    // list.add(n1);

    //

    // NewsClassManage nc = new NewsClassManage();

    // nc.print(list);

    2、当我们想在static main(string argc[]) 里面调用方法的时候

    有两种实现方式:1、实例化,然后调用方法

    2、直接在另一个类中定义 static 方法。

    3、几个好用的快捷方式

    Shift+ctrl + c 注销,再按一次切回来。

    一些新建类的时候,我们完全可以通过eclipse工具化实现。

    要强制转换的时候,我们可以鼠标点到那个上面,然后 点击 add cast to xxx, 进行强制转换。

    4、典型的C/S模式

    客户端 --- 应用服务器 --- 数据库

    5、JDBC介绍

    不同的数据库需要不同的驱动接口。负责连接不同的数据库。

    Java应用程序

    JDBC API

    JDBC Driver Manager

    JDBC驱动 JDBC驱动

    Mysql access

    JDBC分类:桥接,纯java驱动。

    后面一种效率高,速度快。

    API 应用程序接口 与数据库建立连接 、 执行sql语句 、 处理结果

    (连接池 ,租赁的方式实现 , 只需要关闭一次)

    JDBC工作模板:

    先连接 connection

    然后创建语句 create statement

    然后调用语句 execute();

    返回一个结果集 , 返回的多条数据返回到 ResultSet中去。

     

    使用纯java驱动方式进行直连步骤

    1. 下载驱动
    2. 将驱动程序导入工程
    3. 编程实现

    6、数据库的访问链接设置

    需要确保客户端与服务器端的端口号一致,当修改完TCP/IP以后,需要重启服务,才会生效

    端口号查询:

    双击TCP/IP即可查询到,一般不用改,默认1433.

     

    Win7 64位下连接 sqlserver 2008 R2

    参考资料:

    http://wenku.baidu.com/link?url=u_u5ZBIK9TkvJwKrQVMS9PsHRWyNdMcnboIXqIUFHuDpLF9pk7ZGCuD2MgDtBJkXEFzFrItskgDGP-hYuOME1rTTzjZlb9Jr-_DPxnrXL6e

    务必保证:

    Sqlserver的服务开启,tcp/ip更改之后,需要重启sqlserver管理器。

    如下图所示:

    而且,务必保证sql server网络配置里面的SQLEXPRESS里面的ip端口号与下面的一致才行。

    将IP ALL的TCP动态端口(默认1163)改为1433,不改也行,因为大部分人的习惯是用默认的1433,

    在IP2已启用选择——是,确定。 

    同样的方法,开启客户端的TCP/IP,端口也为1433,如图:

    客户端协议:

    7、设置完之后,我们可通过JDBC代码链接数据库

    用下面的代码进行连接数据库:

    1. String dbName = "NewsSystem";
    2.         String passwrod = "123456";
    3.         String userName = "sa";
    4.         String url = "jdbc:sqlserver://localhost:1433;DatabaseName="+dbName;
    5.         String sql = "select * from userInfo";
    6.  
    7.         try {
    8.           // Class.forName(driver);
    9.             Connection conn = DriverManager.getConnection(url, userName,
    10.                     passwrod);
    11.             PreparedStatement ps = conn.prepareStatement(sql);//可提供运行效率
    12.             ResultSet rs = ps.executeQuery();
    13.             while (rs.next()) {
    14.                 System.out.println("id : " + rs.getInt(1) + " name : "
    15.                         + rs.getString(2) + " password : " + rs.getString(3));
    16.             }
    17.  
    18.             // 关闭记录集
    19.             if (rs != null) {
    20.                 try {
    21.                     rs.close();
    22.                 } catch (SQLException e) {
    23.                     e.printStackTrace();
    24.                 }
    25.             }
    26.  
    27.             // 关闭声明
    28.             if (ps != null) {
    29.                 try {
    30.                     ps.close();
    31.                 } catch (SQLException e) {
    32.                     e.printStackTrace();
    33.                 }
    34.             }
    35.  
    36.             // 关闭链接对象
    37.             if (conn != null) {
    38.                 try {
    39.                     conn.close();
    40.                 } catch (SQLException e) {
    41.                     e.printStackTrace();
    42.                 }
    43.             }
    44.  
    45.         } catch (Exception e) {
    46.             e.printStackTrace();
    47.         }

    显示如下:

  • 相关阅读:
    高二下期末考试
    LG月赛.7
    CF1187E
    P5440 【XR-2】奇迹
    P1084 疫情控制
    P1083 借教室
    P2680 运输计划
    P3128 [USACO15DEC]最大流Max Flow
    博弈入门
    HDU 1907
  • 原文地址:https://www.cnblogs.com/zhuxuekui/p/4216746.html
Copyright © 2011-2022 走看看