实验九 在JSP中使用数据库
实验性质:验证性 实验学时: 1学时 实验地点:
一 、实验目的与要求
1、 掌握在JSP中使用数据库的方法。
2、 掌握JSP对数据库的基本操作:增、删、改、查。
二、 实验内容
1、JSP访问数据库的准备工作
(1)创建数据库和数据表
启动Navicat for MySQL,建立和数据库服务器的连接,打开连接,创建一个名为"xsgl"的数据库,在其中建立名为"userinfo"的表,表结构如下图所示:

保存表,输入表名,确定。双击表名,输入表中的记录,如下图所示:

2、在JSP中实现对数据库的增、删、改、查
(1)编写一个JSP页面,显示userinfo表中的所有记录,如下图所示:

请写出相应的代码:
<%@ page import="java.sql.*" %><%--
Created by IntelliJ IDEA.
User: hasee
Date: 2018/6/21
Time: 19:21
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>SQL</title>
</head>
<body>
<%
//加载驱动
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
out.println("加载驱动失败"); } String url = "jdbc:mysql://localhost:3306/xxgl";
String user = "root"; String password = "不让你看"; try {
Connection conn = DriverManager.getConnection(url, user, password);
Statement stmt = conn.createStatement();
// String sql_update = "update userinfo set weight=78 where name='李振';";
// String sql_insert = "INSERT INTO userinfo (id,name,birthday,qq,height,weight)" +
// "VALUES" +
// "(5,'ZNN','19961121','20145468',1.78,50);";
// String sql_update = "update userinfo set weight=78 where name='李振';";
// String sql_insert = "INSERT INTO userinfo ()" +
// "VALUES" +
// "(5,'ZNN','123654','19961121','20145468',1.78,50,'1');";
// String sql_delete = "DELETE FROM userinfo where id=5;";
String sql = "SELECT * FROM userinfo WHERE height>1.66;";
// stmt.executeUpdate(sql_update);
// stmt.executeUpdate(sql_insert);
// stmt.executeUpdate(sql_delete);
ResultSet rs = stmt.executeQuery(sql); out.print("<table border=1><tr>");
out.println("<tr><th width=100>编号</th>" +
"<th width=100>姓名</th>" +
"<th width=100>出生日期</th>" +
"<th width=100>qq</th>" +
"<th width=100>身高</th>" +
"<th width=100>体重</th></tr>");
while (rs.next()) {
out.print("<tr>");
out.println(
"<td width=100>" + rs.getString("id")
+ "<td width=100>" + rs.getString("name") + "</td>"
+ "<td width=100>" + rs.getString("birthday") + "</td>"
+ "<td width=100>" + rs.getString("qq") + "</td>"
+ "<td width=100>" + rs.getString("height") + "</td>"
+ "<td width=100>" + rs.getString("weight") + "</td>"
); out.print("</tr>");
}
out.print("</table>");
rs.close();
conn.close();
stmt.close(); } catch (SQLException e) {
e.printStackTrace();
out.println("MYsql连接失败");
} %> </body>
</html>
三、实验内容中遇到的问题、解决方法和体会
实验九 在JSP中使用数据库的更多相关文章
- JSP中访问数据库
在JSP中访问数据库使用的是JSTL标签,本文不按照http://wiki.jikexueyuan.com/project/jsp/database-access.html此方法进行实践,而是采用之前 ...
- 应用DriverManager类创建sqlserver数据库连接实例 JSP中使用数据库
JSP中使用数据库 1.JDBC介绍 java数据库连接(java Database Connectivity ,JDBC)是一种用于执行SQL语句的JavaAPI ,由一组使用java编程语言编写的 ...
- 如何在jsp中显示数据库的内容
用Eclipse tomcat新建一个JSP页面(一)介绍了如何创建一个web程序和第一个jsp页面,以及Eclipse需要的一些必要配置.今天,我们重点说一下如何从数据库中查询数据,并且在JSP页面 ...
- JSP中的数据库操作,MySQL基础操作(一)
一.JDBC JDBC(java data base concectivity),是一种用于执行SQL语句的java API,可以为多种关系库提供统一访问. 通常使用JDBC完成以下操作: 1)同数据 ...
- JSP 中 pageEncoding 和 charset 区别以及中文乱码解决方案
一.JSP 中 pageEndcodeing 和 charset 的作用 <%@ page contentType="text/html;charset=GB2312"%&g ...
- JSP中pageEncoding和charset区别,中文乱码解决方案(转载)
转载自:JSP中pageEncoding和charset区别,中文乱码解决方案 JSP指令标签中<%@ page contentType="text/html;charset=GB23 ...
- jsp中pageEncoding、charset=UTF -8
jsp中pageEncoding.charset=UTF -8" 在JSP/Servlet 中主要有以下几个地方可以设置编码,pageEncoding="UTF-8". ...
- JSP中的九大隐式对象及四个作用域
在这篇博文中,我们将讨论和学习JSP中的隐式对象及四个作用域. 一.九大隐式对象 这些对象是JSP容器为每个页面中的开发人员提供的Java对象,开发人员可以直接调用它们而不用显式地声明它们再调用. J ...
- jsp中的四个作用域,九个内置对象分别是什么?
九大内置对象: 内置对象(又叫隐含对象),就是在jsp中,不需要创建(由服务器<容器>来创建),可以直接使用的对象. 对象 含义 类 作用域 request 请求对象 类型 javax.s ...
随机推荐
- 聊聊阿里社招面试,谈谈“野生”Java程序员学习的道路
引言 很尴尬的是,这个类型的文章其实之前笔者就写过,原文章里,笔者自称LZ(也就是楼主,有人说是老子的简写,笔者只想说,这位同学你站出来,保证不打死你,-_-),原文章名称叫做<回答阿里社招面试 ...
- elk之查询方式(4种)
es 在查询时, 可以指定搜索类型为下面四种: QUERY_THEN_FETCH QUERY_AND_FEATCH DFS_QUERY_THEN_FEATCH DFS_QUERY_AND_FEATCH ...
- Spring AOP详细介绍
AOP称为面向切面编程,在程序开发中主要用来解决一些系统层面上的问题,比如日志,事务,权限等待,Struts2的拦截器设计就是基于AOP的思想,是个比较经典的例子. 一 AOP的基本概念 (1)Asp ...
- Python中Celery 的基本用法以及Django 结合 Celery 的使用和实时监控进程
celery是什么 1 celery是一个简单,灵活且可靠的,处理大量消息的分布式系统 2 专注于实时处理的异步任务队列 3 同时也支持任务调度 执行流程 Celery 基本使用 tasks.py i ...
- Pyspider上手
pyspider安装: pip3 install Pyspider 启动服务操作 1.打开cmd:输入 pyspider --help 回车,可以查看帮助信息,pyspider all ...
- 05 Hadoop 设置块的大小
1.是在hdfs的配置文件中配置 2.是在app程序中设置 注意:假设配置文件的最大是 20K 最小是 10K 文件大小为72 块数就是 4 在程序中设置最大为15K 切割块数 ...
- Spring是如何校验XML的
首先来看下xml的一些概念: xml的schema里有namespace,可以给它起个别名.比如常见的spring的namespace: xmlns:mvc="http://www.spri ...
- 爬虫 之Requests库的详细使用
1.什么是Requests? Requests是用Python语言编写的,基于urllib3来改写的,采用Apache2 Licensed 来源协议的HTTP库. 它比urllib更加方便,可以节约我 ...
- pring @Configuration 和 @Component 区别
一句话概括就是 @Configuration 中所有带 @Bean 注解的方法都会被动态代理,因此调用该方法返回的都是同一个实例. 从定义来看, @Configuration 注解本质上还是 @Com ...
- Appscanner实验还原code2
import _pickle as pickle from sklearn import svm, ensemble import random from sklearn.metrics import ...