Java Web中如何访问数据库
2016-05-14 11:16
309 查看
1、 数据库是非常重要的数据管理软件系统,在这里我们进行一次Access数据库的访问操作,在正式介绍之前,我们先了解一下数据库访问的过程,在数据库访问中,根据最普遍的想法,需知道的构件主要有三层:分别为客户实体(
即软件的图形界面)、访问的中介(即连接数据库与实体的部分)、数据库后台。在了解这些之后,我们现在也清楚了实施这个访问过程我们该做哪些工作,那就是画一下用户使用的界面,部署一个存储数据的仓库,再找一个联系两者的链条。下面我们就分别去做这些工作。
2、数据库的建立,我们进行建立数据源,建立方式如下链接所示
数据库的建立过程(建立过程为第一部分,其余为访问过程)
3、对于数据库的访问,有很多方式,这里我们进行实现一个简单的示例访问,使用DAO和VO进行访问,下面是示例代码
首先,我们进行建立一个JavaBean类,命名为Student.java类,具体代码如下所示,其中注释如下:
然后进行编写DAO类,其代码如下所示:
注:DAO是指一种JavaBean类,用于对数据库的访问操作
在jsp中使用DAO与VO,进行对数据库的访问,然后将数据布局到jsp页面中,进行布局数据,具体代码如下所示:
效果如下所示:
![](http://img.blog.csdn.net/20160515122612461?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
图1 数据库文件内容,即T_STUDENT表
![](http://img.blog.csdn.net/20160515122913935?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
图2 查询结果,即jsp查寻结果
以上就是利用DAO和VO对数据库的访问。
即软件的图形界面)、访问的中介(即连接数据库与实体的部分)、数据库后台。在了解这些之后,我们现在也清楚了实施这个访问过程我们该做哪些工作,那就是画一下用户使用的界面,部署一个存储数据的仓库,再找一个联系两者的链条。下面我们就分别去做这些工作。
2、数据库的建立,我们进行建立数据源,建立方式如下链接所示
数据库的建立过程(建立过程为第一部分,其余为访问过程)
3、对于数据库的访问,有很多方式,这里我们进行实现一个简单的示例访问,使用DAO和VO进行访问,下面是示例代码
首先,我们进行建立一个JavaBean类,命名为Student.java类,具体代码如下所示,其中注释如下:
package com.lut.beans;//包名,命名自己定义的包 public class Student { private String stuno; private String stuname; private String stusex; private String stuaddr; public String getStuno() {//以下四个函数在NetBeans中可以使用:重构->封装字段进行封装,在eclipse中可以使用Getter and Setter进行封装 return stuno; } public void setStuno(String stuno) { this.stuno = stuno; } public String getStuname() { return stuname; } public void setStuname(String stuname) { this.stuname = stuname; } public void setStuname(String stuname) { this.stuname = stuname; } public String getStusex() { return stusex; } public void setStusex(String stusex) { this.stusex = stusex; } public String getStuaddr() { return stuaddr; } public void setStuaddr(String stuaddr) { this.stuaddr = stuaddr; } }
然后进行编写DAO类,其代码如下所示:
注:DAO是指一种JavaBean类,用于对数据库的访问操作
package dao;//建立一个dao类,可随意命名 import com.lut.beans.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 { //获取连接 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");//JDBC-ODBC数据源驱动 String url="jdbc:odbc:DDSchool"; conn = DriverManager.getConnection(url,"",""); //运行SQL语句 String sql = "select * from T_STUDENT";//SQL语句,选择数据表T_STUDENT中的所有数据 Statement stat = conn.createStatement(); ResultSet rs = stat.executeQuery(sql);//定义ResultSet类,用于接收获取的数据 while (rs.next()) { //实例化VO Student student=new Student(); student.setStuno(rs.getString("STUNO")); student.setStuname(rs.getString("STUNAME")); student.setStusex(rs.getString("STUSEX")); student.setStuaddr(rs.getString("STUADDR")); 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; } } }
在jsp中使用DAO与VO,进行对数据库的访问,然后将数据布局到jsp页面中,进行布局数据,具体代码如下所示:
<%@page contentType="text/html" import="java.util.*,java.sql.*" pageEncoding="UTF-8" language="java"%> <%@page import="com.lut.beans.Student" %> <%@page import="dao.StudentDao" %> <!DOCTYPE html> <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=(Student)students.get(i); %> <tr> <td><%=student.getStuno() %></td> <td><%=student.getStuname() %></td> <td><%=student.getStusex() %></td> <td><%=student.getStuaddr() %></td> </tr> <% } %> </table> </body> </html>
效果如下所示:
图1 数据库文件内容,即T_STUDENT表
图2 查询结果,即jsp查寻结果
以上就是利用DAO和VO对数据库的访问。
相关文章推荐
- Spring MVC静态资源处理<mvc:resources><mvc:default-servlet-handler>
- java获取当前日期是星期几
- JAVA EE7 Servlet 3.1新规范与中文乱码问题
- (一)Java虚拟机基础详解
- Spring框架AOP源码剖析
- Eclipse安装Maven插件
- java String.split()函数的用法分析
- Java Memory Model
- java多线程系列4-线程池
- 个人学习心得笔记之java中"=="
- java-反射初学(2)
- java中包及修饰符的研究与应用
- Eclipse 插件安装方法和插件加载失败解决办法
- Java 回调机制
- IDEA Java/Scala混合项目maven打包
- JAVA-反射学习(3)
- Java-split函数-分割字符串
- [开发工具]Java开发常用的在线工具
- Java设计模式(二)策略模式详解
- SpringMVC +Spring+ SpringJDBC 整合 教程