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.         }

显示如下:

原文地址:https://www.cnblogs.com/zhuxuekui/p/4216746.html