JAVA笔记 JDBC初探和小练习

2 篇文章 0 订阅

C/S结构的关系数据库系统

  C/S结构的关系数据库系统具有数据集中、功能分布的特点。

  服务器:数据集中存储于DB服务器上,服务器完成DBMS的核心功能,DB的建立维护由DBA完成。

  客户端:完成数据处理、表示、用户接口等功能。

  C客户端 提出请求————————>S客户端 响应请求


数据库举例

  Oracle、Sybase、DB2、SQL Server、MySQL


ODBC(略)


JDBC——以MySQL为例

  MySQL配置

  首先安装MySQL,默认设置3306端口提供服务;

  默认初始用户是root,密码可更改;

  服务为自动启动(MySQL服务);

  数据库客户端管理工具

  这里使用Webyog的SQLyog,下载地址 http://www.webyog.com,有试用版本;

  将表建立好,建立过程明了易用;

  JDBC驱动类型

  ①JDBC-ODBC桥

  ②本地库Java实现驱动

  ③网络协议驱动

  ④数据库协议驱动

 

 

  安装JDBC驱动

  JDBC-ODBC桥驱动由JDK默认安装,其他三种驱动需要自己手动安装;

  Eclipse添加MySQL JDBC驱动包

  方法一:在项目的Properties选项中,选择Java BuildPath,在右边的Libraries中添加JAR驱动包

  方法二:将JAR驱动包放到Tomcat服务器的lib文件夹中(或者两种方法都用,本人都用了才好用,具体为什么还不知道)

连接数据库

  练习的小例子(同时练习了在JSP中根据数据表动态生成下拉列表)

 

<body>
	
<% 	
	List list=new ArrayList();
	Class.forName("com.mysql.jdbc.Driver");
	Connection conn=null;
	String url="jdbc:mysql://localhost:3306/db_dept";
	try{
		conn = DriverManager.getConnection(url,"root","root");
	}
	catch(SQLException e){
		e.printStackTrace();
	}
	String sql="select dName from tb_deptname";
	Statement statement;
	try{
		statement=conn.createStatement();
		ResultSet rest=statement.executeQuery(sql);
		while(rest.next()){
			String id = rest.getString(1);
			list.add(id);
		}
	}
	catch(SQLException e){
		e.printStackTrace();
	}
	
%>
<select>
	<%
		for(int i=0;i<list.size();i++){
	%>
	<option value="<%= list.get(i) %>"><%=list.get(i) %></option>
	<%} %>
</select>
</body>

*Class.forName("com.mysql.jdbc.Driver");// 返回 与带有给定字符串名的类或接口相关联的 class对象

**rest.next() //ResultSet类方法,将光标从当前位置向前移一行(boolean型)

***rest.getString(1) //以Java编程语言中String的形式获取Resultset对象的当前行中指定列的值

****JDBC的URL格式   jdbc:子协议:数据源

*****连接字符串rul的格式    ①String url=“jdbc:mysql://localhost:3306/student?user=root&password=root";

                                                 ②String url="jdbc:mysql://localhost:3306/student";

                                                     String user="root";

                                                     String password="root";

                                                     Connection conn=DriverManager.getConnection(url,user,password);

******Connection、Statement抛出异常,需要在下面使用时进行异常捕获处理



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值