JDBC操作数据库,第一:jsp插入mysql数据库,坎坷摸索分享
JSP连接数据库,坎坷摸索了好久,现在终于做好了,分享一下,希望对更多热爱编程学习的人有所帮助!!!谢谢
第一:首先准备的就是已经安装好Mysql,这里不做多叙述,百度可以做到。
然后在mysql数据库中做如下操作:
需要注意的是自己创建的数据库的名字,和数据表的名字,这两个和后面写的程序息息相关,所以必须引起重视






第二步:就可以开始写程序了。
首先是Book类,这里最需要注意的是起的包名,真的很重要,真的很重要,真的很重要,重要的事情说三遍
package com.ningmeng; /**
* 1:book类用于封装图书对象信息
* @author biexiansheng
*
*/
public class Book { private int id;//编号
private String name;//图书名称
private double price;//价格
private int bookCount;//数量
private String author;//作者
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public int getBookCount() {
return bookCount;
}
public void setBookCount(int bookCount) {
this.bookCount = bookCount;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
} }
然后,就是index.jsp页面,这是主界面。这点没啥重点,都是基础的。
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="AddBook.jsp" method="post" onsubmit="return check(this);">
<table align="center" width="450">
<tr>
<td align="center" colspan="2">
<h2>添加图书信息</h2>
<hr>
</td>
</tr>
<tr>
<td align="right">图书名称:</td>
<td><input type="text" name="name"/></td>
</tr>
<tr>
<td align="right">价格:</td>
<td><input type="text" name="price"/></td>
</tr>
<tr>
<td align="right">数量:</td>
<td><input type="text" name="bookCount"/></td>
</tr>
<tr>
<td align="right">作者:</td>
<td><input type="text" name="author"/></td>
</tr>
<tr>
<td align="center" colspan="2">
<input type="submit" value="添加">
</td>
</tr>
</table>
</form>
</body>
</html>
最后,就是逻辑代码的程序,注意的重点很多很多
第一:一定要把包到对了,不然一直报错,真的很头疼的一件事情。
第二:<jsp:useBean id="book" class="com.ningmeng.Book"></jsp:useBean>这点就是前面强调的,class="自己的包名和上面定义的类名";
第三:String url="jdbc:mysql://localhost:3306/test";//数据库连接字符串,这点是这个test是自己创建的数据表的名字,一定要写对了。
第四:int row=ps.executeUpdate();//执行更新操作,返回所影响的行数,不然数据不能写入到数据库
然后就没啥然后了,一切大功告成。
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!-- 导入的三个包真的很重要,切记不要忘记 -->
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@page import="java.sql.PreparedStatement" %> <!-- 解决中文乱码的问题 -->
<%request.setCharacterEncoding("UTF-8"); %>
<!-- 实例化javabean对象的Book类 -->
<jsp:useBean id="book" class="com.ningmeng.Book"></jsp:useBean>
<!-- 自动匹配同名称属性的元素 -->
<jsp:setProperty property="*" name="book"/> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
try{
Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动,注册到驱动管理器
out.print("加载数据库驱动成功!!!"+"<br/>");
String url="jdbc:mysql://localhost:3306/test";//数据库连接字符串
String name="root";//
String password="123456";
Connection conn=DriverManager.getConnection(url,name,password);
//创建connection连接,
out.print("创建connection连接成功!!!"+"<br/>");
String sql="insert into tb_books(name,price,bookCount,author) values(?,?,?,?)";
//添加图书信息的sql语句
PreparedStatement ps=conn.prepareStatement(sql);
//获取PreparedStatement
ps.setString(1,book.getName());//对sql语句中的第1个参数赋值
ps.setDouble(2,book.getPrice());//对sql语句中的第2个参数赋值
ps.setInt(3,book.getBookCount());//对sql语句中的第3个参数赋值
ps.setString(4,book.getAuthor());//对sql语句中的第4个参数赋值
int row=ps.executeUpdate();//执行更新操作,返回所影响的行数
if(row>0){
out.print("成功添加了 "+row+" 条数据!!!");
}
ps.close();
conn.close();
}catch(Exception e){
out.print("图书信息添加失败!!!");
e.printStackTrace();
}
%>
<br>
<a href="index.jsp">返回</a> </body>
</html>
最后验证效果即可,如下所示


成功完成jsp插入到mysql数据库的数据,特此分享。
JDBC操作数据库,第一:jsp插入mysql数据库,坎坷摸索分享的更多相关文章
- JDBC操作之连接和关闭mysql数据库
首先导入jdbc所用的jar包 然后分别调用getCon()和closeCon方法 import java.sql.DriverManager; import java.sql.SQLExceptio ...
- JSP连接MySQL数据库问题
之前写了一大段,还说了一下具体JDBC连接数据库API的具体包的基本知识,哪知道自己手残不小心按了删除按钮.结果去看自动保存记录时,就只剩下下面这段了.好吧,其实最主要最核心的也就是下面这点了.具体如 ...
- Jsp连接Mysql数据库取数方法
我将Jsp连接Mysql数据库方法整理如下,供大家学习交流! 1.首先在myslq数据库中新建mldn数据库,并新建emp表.(方法不展开介绍) 插入数据如下: create table `emp` ...
- Python datatime 格式转换,插入MySQL数据库
Python datatime 格式转换,插入MySQL数据库 zoerywzhou@163.com http://www.cnblogs.com/swje/ 作者:Zhouwan 2017-11-2 ...
- Mybatis插入MySQL数据库中文乱码
Mybatis插入MySQL数据库中文乱码 在dataSource.properties配置文件中设置useUnicode=true&characterEncoding=utf-8编码即可. ...
- java web 程序---jsp连接mysql数据库的实例基础+表格显示
<%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="g ...
- 如何使用JSP访问MySQL数据库
<%@page import="java.sql.*" import ="java.util.*" import ="java.io.*&quo ...
- python 从csv文件插入mysql数据库
一个工作遇到的问题,将excel文件的内容插入到mysql数据库中. 总体思路是 excel文件-->转换成csv文件-->csv文件读取-->读取数据插入mysql数据库 用到py ...
- PHP Apache Access Log 分析工具 拆分字段成CSV文件并插入Mysql数据库分析
现在需要分析访问日志,怎么办? 比如分析D:\Servers\Apache2.2\logs\access2014-05-22.log http://my.oschina.net/cart/针对这个问题 ...
随机推荐
- 页面超慢,zabbix却没报警
故障背景:网站页面打开速度非常慢 排查过程: 1.一开始用vmstat 看到procs下的r值稳定在5.6,由于这台服务器是12核24线程,并且cpu的wa很大,说明系统很轻松, 肯定不会报警了,那为 ...
- 汇总常用的jQuery操作Table tr td方法
虽然现在DIV+CSS进行页的布局大行其道,但是很多地方使用table还是有很多优势,用table展示数据是比较方便的,下面汇总了jQuery操作Table tr td常用的方法,熟记这些操作技巧,下 ...
- 大数据组件原理总结-Hadoop、Hbase、Kafka、Zookeeper、Spark
Hadoop原理 分为HDFS与Yarn两个部分.HDFS有Namenode和Datanode两个部分.每个节点占用一个电脑.Datanode定时向Namenode发送心跳包,心跳包中包含Datano ...
- new的原罪
一直以为在开发阶段能够直接调用的,速度而言一定是最优秀的,因为总比后期通过反射之类来调用来得快吧. 下面请看一个SB的例子,重新编译以后,这个类在创建100,000,000实体时居然耗费了16秒的时间 ...
- *关于httl开源Java模板的使用心得
1.简介 HTTL (Hyper-Text Template Language) 是一个高性能的开源JAVA模板引擎, 适用于动态HTML页面输出, 可替代JSP页面, 指令和Velocity相似. ...
- SSH框架的简单示例(执行流程)
本文转自一篇博文,感觉通俗易懂,适用于初学j2ee者,与大家一起分享 (一)struts框架部分 1.打开Myeclipse,创建一个web project,项目名称为TestSSH. 2.在web的 ...
- 基于java代码的Spring-mvc框架配置
Spring 版本 4.3.2 maven项目 1.首先上项目目录图,主要用到的配置文件,略去css和js的文件 引包: 2.主要代码: (1)NetpageWebAppInitializer类 ...
- DBCC 命令2
状态查询:收集和显示各类信息,状态检查. 如cachestats.pss.sqlmgrstats.memorystatus.proccache.freeproccache.freesystemcach ...
- Android 自定义View 三板斧之三——重写View来实现全新控件
通常情况下,Android实现自定义控件无非三种方式. Ⅰ.继承现有控件,对其控件的功能进行拓展. Ⅱ.将现有控件进行组合,实现功能更加强大控件. Ⅲ.重写View实现全新的控件 本文来讨论最难的一种 ...
- 【Bugly干货分享】微信文件微起底Ⅰ
Bugly 技术干货系列内容主要涉及移动开发方向,是由Bugly邀请腾讯内部各位技术大咖,通过日常工作经验的总结以及感悟撰写而成,内容均属原创,转载请标明出处 微信大家都在用,但微信的本地文件到底隐藏 ...