java与数据库的交互功能 java与数据库连接的web文件_javaweb连接mysql教程

声明:一直以来都以为javaweb程序连接数据库是一个很高大上很难的问题,结果今天学习了一下,不到两个小时就解决了,所以总结一篇博客。

JavaWeb程序连接SQLserver数据库分为一下步骤:

1:在http://www.microsoft.com/en-us/download/details.aspx?id=21599下载sqljdbc.jar的压缩包

2:解压之后,将sqljdbc4.jar复制粘贴到你项目的WEB-INF的lib目录下

java与数据库的交互功能 java与数据库连接的web文件_bc_02

3:需要知道一些数据库方面的技术知识:

先举个例子:下面是驱动程序建立连接所需要的步骤:

try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String URL = "jdbc:sqlserver://localhost:1433;DatabaseName=user";
Connection conn = DriverManager.getConnection(URL, userName, userPwd);//userName是你数据库的用户名如sa,
conn.println("连接数据库成功");
conn.close();
}catch (Exception e){
out.println("数据库连接失败");
}

1>:Driver接口:java.sql.Driver是所有JDBC驱动程序需要实现的接口,这个接口提供给不同的数据库厂商,他们使用的接口名不同。

-:SQLserver的JDBC驱动的类名:"com.microsoft.sqlserver.jdbc.SQLServerDriver"

-:Oracle的JDBC驱动的类名:"oracle.jdbc.driver.OracleDriver"

-:MySQL的JDBC驱动的类名:"com.mysql.jdbc.Driver"

2>加载与注册JDBC驱动

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");该语句用于加载

3>JDBC连接数据库的URL表现形式通常分为三个部分(通常用:分开):

1:协议:在JDBC中唯一允许的协议只能为jdbc.

2:子协议:子协议用于标识一个数据库驱动程序

3:子名称:具体看下面

-:连接SQLserver: "jdbc:sqlserver://localhost:1433;DatabaseName=user"

-:连接Oracle: "jdbc:thin:@localhost:1521:ORCL"

-:连接MySQL: "jdbc:mysql://localhost:3306/databasename"

4>执行SQL语句接口Statement对象,该对象的常用方法:

-:void close() 关闭释放资源

-:ResultSet executeQuery(String sql):执行某条查询语句并返回结果

-:int execulteUpdate(String sql):可以执行insert,undate或者delete语句

4:看下我第一次写的操作数据库的程序:

1>先创建一个Student类package com.ll;

public class Student {
private String name;
private String time;
private String banji;
public String getBanji() {
return banji;
}
public void setBanji(String banji) {
this.banji = banji;
}
private String sex;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getTime() {
return time;
}
public void setTime(String time) {
this.time = time;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}

2>写dao层与数据库连接的部分,package dao;

import com.ll.Student;//本行及以下是导入SQL以及所需的包
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;
public class Studentdao
{
public ArrayList queryAllStudents() throws Exception
{//实现对数据库的访问
Connection conn = null;
ArrayList students = new ArrayList();//定义与初始化ArrayList数组,相当于定义数组,但是容量比数组大
StringBuffer str= new StringBuffer();
try {
//获取连接
String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //加载JDBC驱动
String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=StudentManagement"; //连接服务器和数据库sample
//运行SQL语句
String userName = "sa"; //默认用户名
String userPwd = "zongjin123";
Class.forName(driverName);
conn = DriverManager.getConnection(dbURL, userName, userPwd);
if(conn!=null)
{
System.out.println("Connection Successful!"); //如果连接成功 控制台输出
}
else{
System.out.println("Connection fail!");
return students;
}
//密码
String sql = "select * from student";//SQL语句,选择数据表student中的所有数据
Statement stat = conn.createStatement();
ResultSet rs = stat.executeQuery(sql);//定义ResultSet类,用于接收获取的数据
while (rs.next())
{
//实例化VO
Student student=new Student();
student.setName(rs.getString("姓名"));
student.setBanji(rs.getString("班级"));
student.setSex(rs.getString("性别"));
student.setTime(rs.getString("年龄"));
students.add(student);
}
rs.close();
stat.close();
}
catch (Exception e1)
{
e1.printStackTrace();
}
finally
{
try
{//关闭连接
if(conn!=null)
{
conn.close();
conn=null;
}
}
catch(Exception ex)
{
}
return students;
}
}
}

3>创建index.jsp文件

pageEncoding="GB18030"%>
#body {
background-color: #FFD2BD;
}
JSP Page



学生信息如下所示:

Studentdao studentDao=new Studentdao();
ArrayList students=studentDao.queryAllStudents();
%>

年龄

姓名

性别

班级

for(int i=0;i
{
Student student=(Student)students.get(i);
%>
}
%>

4>前提是你在你的SQLserver数据库上创建了一个表,并且有数据.

5.结果为:

java与数据库的交互功能 java与数据库连接的web文件_bc_03