JavaWeb程序连接SQLserver数据库
声明:⼀直以来都以为javaweb程序连接数据库是⼀个很⾼⼤上很难的问题,结果今天学习了⼀下,不到两个⼩时就解决了,所以总结⼀篇博客。
JavaWeb程序连接SQLserver数据库分为⼀下步骤:
1:在下载sqljdbc.jar的压缩包
2:解压之后,将sqljdbc4.jar复制粘贴到你项⽬的WEB-INF的lib⽬录下
3:需要知道⼀些数据库⽅⾯的技术知识:
先举个例⼦:下⾯是驱动程序建⽴连接所需要的步骤:
1try{
2 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
3
4 String URL = "jdbc:sqlserver://localhost:1433;DatabaseName=user";
5
6 Connection conn = Connection(URL, userName, userPwd);//userName是你数据库的⽤户名如sa,
7 conn.println("连接数据库成功");
8 conn.close();
9
10 }catch (Exception e){
11
12 out.println("数据库连接失败");
13
14 }
View Code
1>:Driver接⼝:java.sql.Driver是所有JDBC驱动程序需要实现的接⼝,这个接⼝提供给不同的数据库⼚商,他们使⽤的接⼝名不同。
-:SQLserver的JDBC驱动的类名:"com.microsoft.sqlserver.jdbc.SQLServerDriver"
-:Oracle的JDBC驱动的类名:"oracle.jdbc.driver.OracleDriver"
-:MySQL的JDBC驱动的类名:"sql.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类
1package com.ll;
2
3public class Student {
4private String name;
5private String time;
6private String banji;
7public String getBanji() {
8return banji;
9 }
10public void setBanji(String banji) {
11this.banji = banji;
12 }
13private String sex;
14public String getName() {
15return name;
16 }
17public void setName(String name) {
18this.name = name;
19 }
20public String getTime() {
21return time;
22 }
23public void setTime(String time) {
24this.time = time;
25 }
26
27public String getSex() {
28return sex;
29 }
30public void setSex(String sex) {
31this.sex = sex;
32 }
33
34
35 }
2>写dao层与数据库连接的部分,
1package dao;
2import com.ll.Student;//本⾏及以下是导⼊SQL以及所需的包
3import java.sql.Connection;
4import java.sql.DriverManager;
5import java.sql.PreparedStatement;
6import java.sql.ResultSet;
7import java.sql.Statement;
8import java.util.ArrayList;
9public class Studentdao
10 {
11public ArrayList queryAllStudents() throws Exception
12 {//实现对数据库的访问
13 Connection conn = null;
14 ArrayList students = new ArrayList();//定义与初始化ArrayList数组,相当于定义数组,但是容量⽐数组⼤
15 StringBuffer str= new StringBuffer();
16try {
17//获取连接
18 String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //加载JDBC驱动
19 String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=StudentManagement"; //连接服务器和数据库sample 20//运⾏SQL语句
21 String userName = "sa"; //默认⽤户名
22 String userPwd = "zongjin123";
23 Class.forName(driverName);
24 conn = Connection(dbURL, userName, userPwd);
25if(conn!=null)
26 {
27 System.out.println("Connection Successful!"); //如果连接成功控制台输出
28 }
29else{
30
31 System.out.println("Connection fail!");
32return students;
33 }
34
35//密码
36 String sql = "select * from student";//SQL语句,选择数据表student中的所有数据
37 Statement stat = ateStatement();
38 ResultSet rs = uteQuery(sql);//定义ResultSet类,⽤于接收获取的数据
39while (rs.next())
sql连接不上服务器40 {
41//实例化VO
42 Student student=new Student();
43 student.String("姓名"));
44 student.String("班级"));
45 student.String("性别"));
46 student.String("年龄"));
47 students.add(student);
48 }
49 rs.close();
50 stat.close();
51 }
52catch (Exception e1)
53 {
54 e1.printStackTrace();
55 }
56finally
57 {
58try
59 {//关闭连接
60if(conn!=null)
61 {
62 conn.close();
63 conn=null;
64 }
65 }
66catch(Exception ex)
67 {
68 }
69return students;
70 }
71 }
72 }
3>创建index.jsp⽂件
<%@ page language="java" contentType="text/html; charset=GB18030"
pageEncoding="GB18030"%>
<%@page import = "java.util.*" %>
<%@page import = "java.sql.*" %>
<%@page import="com.ll.Student" %>
<%@page import="dao.Studentdao" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "/TR/html4/loose.dtd"> <html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style type="text/css">
#body {
background-color: #FFD2BD;
}
</style>
<title>JSP Page</title>
</head>
<body id="body">
<h1>学⽣信息如下所⽰:</h1><br>
<%
Studentdao studentDao=new Studentdao();
ArrayList students=studentDao.queryAllStudents();
%>
<table border="1" >
<tr >
<td >年龄</td>
<td>姓名</td>
<td>性别</td>
<td>班级</td>
</tr>
<%
for(int i=0;i<students.size();i++)
{
Student student=((i);
%>
<tr>
<td><%=Sex() %></td>
<td><%=Name() %></td>
<td><%=Sex() %></td>
<td><%=Banji() %></td>
</tr>
<%
}
%>
</table>
</body>
</html>
4>前提是你在你的SQLserver数据库上创建了⼀个表,并且有数据.
5.结果为:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论