目录
prerequire:
- (如果之前装过,然后适用net start mysql出错,则需要重装,下载好安装包zip之后在文件夹下mysqld -install 会出现The service already exists! The current server installed: 就是没有卸载干净)重装mysql(卸载部分可用)
- 安装好mysql server(重装之后安装部分可用,注意初始化的时候mysqld --initialize --console 不要按部就班,否则很麻烦,重装mysql的时候要关闭服务net stop mysql,然后安装好了要开启服务,否则报错ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)问题解决)
- 安装(安装部分可用)、安装且破解好navicat(破解部分可用)
- navicat中的建库建表以及查询 如果可以顺利连接local 然后创建一个数据库new1就OJBK了
- JSP中调用数据库(此处需要按照上面这个连接创建一张表,people,内容如下,然后按照此教程的程序更改,特别注意的是,需要把mysql-connector-java-5.0.8-bin.jar放到WEB-INF的lib下)
结果:
开始!
上面教程按部就班可以完成环境的搭建和调通,下面介绍JDBC数据库应用模型以及利用JDBC在JSP中的增删改查(此处只介绍工程实现,具体原理不介绍)
首先新建一个web工程,可以看到,我完成之后的工程下有六个,jsp文件,这六个文件中add和addAction是负责数据库操作的增加操作,delete是删除、modify和modifyAction是改,而index负责了显示和查的操作。
index.jsp
首先先看index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page import="java.io.*, javax.servlet.*, java.sql.*" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<br>
<a href="add.jsp">添加</a>
<br>
<%
//加载驱动程序
String driver ="com.mysql.jdbc.Driver";
Class.forName(driver);
//连接数据库(打开)
String url="jdbc:mysql://localhost:3306/new1";//数据库名
String name="root"; //数据库用户名
String pwd="12341234";//密码
Connection conn=DriverManager.getConnection(url,name,pwd);
//执行查询操作
Statement stmt = conn.createStatement();
String sqlText = "SELECT * FROM movie";
ResultSet rs = stmt.executeQuery(sqlText);
%>
<%
out.print("<table>");
out.print("<tr>");
out.print("<td>电影名称</td>");
out.print("<td>电影类型</td>");
out.print("<td>电影描述</td>");
out.print("</tr>");
while (rs.next())
{
out.print("<tr>");
out.print("<td>");
out.print(rs.getString("Name"));
out.print("</td>");
out.pri