bootstrap操作mysql数据库_前后端连接(BootStrap_MySQL_MyEclipse)
今天学了前后台的连接。之前脑子一团浆糊,就连后端对数据库的操作都不熟。就一点点来写吧,会多少写多少,错了以后再改吧,可能进步比较慢,但肯定会慢慢好起来的。
以前一直对数据库连接就不太懂。先从数据库连接写起。
疑问点1:之前就是不明白为什么要有一个con,而且还是Connection类型的,
理解:你想对数据库操作,肯定的先连上数据库吧,那就得用一个变量来告诉别人,连接情况是啥,到底连没连 上,刚开始肯定是null的呀,连上了还写啥。至于Connection,还是不太清楚,可能只有这样的类型才能获取连接吧
疑问点2:Class.forName("com.mysql.jdbc.Driver");都说是加载驱动类,怎么加载的不太清楚。
理解:Class.forName动态加载指定的JDBC驱动,由DriverManager管理。DriverManager类用来管理数据库中的所有驱动程序,是JDBC的管理层,作用于用户和驱动程序之间,跟踪可用的驱动程序,并在数据库的驱动程序之间建立连接。(别人说的)
然后用这个con=(Connection)DriverManager.getConnection(url, user, password);就连上了呗。数据库连接就勉强过关吧,以后工作了也许会有更深的理解,暂时都能连上了,就先不考虑了。
然后就出现一个很大的误区,数据库里不是有张表格嘛是这样的
然后我在后台也写了个这个
这下好了,我一直以为我对这些类里属性操作的就是对后台操作,(我可能是个傻子)
UserDao里是这样(我一直不明白为什么加个这个玩意,别人说是为了简单方便,我先这么理解吧)
package com.user.dao;
import java.util.List;
import com.user.entity.User;
public interface UserDao {
public boolean isExist(String username,String password);//判断用户名和密码是否正确
public boolean add(User user);
public List selectAll();
public boolean delete(int uid);
public User selectByUid(int uid);
public boolean update (User user);
//List list=udi.mohuselect(namecondition);
public List mohunameselect(String namecondition);
public List mohuageselect(int minage,int maxage);
public List mohuadressselect(String adresscondition);
public List mohusexselect(String sexcondition);
}
UserDaoImp类是这样
DBCon db=new DBCon();
//4个数据库连接对象
Connection con=null;
Statement stmt=null;//为了发送Sql语句
PreparedStatement pstmt=null;//???
ResultSet rs=null;//存放集合
public void close()//这个方法跟理解没啥关系,就是为了关闭偷懒
{
try {
if(rs!=null){
rs.close();
}
if(pstmt!=null){
pstmt.close();
}
if(stmt!=null){
stmt.close();
}
if(con!=null){
con.close();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Override
public boolean isExist(String username, String password) {
System.out.println("正在执行DAO中isExist方法");
Boolean flag=false;
try {
con=db.getCon();
if(con==null)
{
System.out.println("DAO中selectByName方法连接失败");
return flag;
}
String sql="select * from tb_users where username=? AND password=?";//写了sql语句
pstmt=(PreparedStatement) con.prepareStatement(sql);//???
pstmt.setString(1, username);
pstmt.setString(2, password);
rs=pstmt.executeQuery();//这才是正八经将语句发给了mysql
if(rs.next())//开始找有没有符合的
{
flag=true;
}else{
System.out.println("不能找到该人");
}
this.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return flag;
}
//困了,睡觉,不明白的是找是找到了,找到了,没点显示吗?在flag=ture那写个 System.out.println("找到该人");???我自己看到了有啥用,我想给页面跳到别的页面才行啊,嗯,明天再写写。
bootstrap操作mysql数据库_前后端连接(BootStrap_MySQL_MyEclipse)相关推荐
- 阿里云怎样操作mysql数据库_阿里云主机如何操作mysql数据库
阿里云主机如何操作mysql数据库,阿里云上传mysql数据库. 在阿里云ecs云服务器上部署数据库后,在平常的操作中可能会遇到些问题,可以先做个大致的了解: 如果您想看更多的在ecs上的数据库的相关 ...
- sql操作mysql数据库_一些常用的操作MySQL数据库的sql语句
创建数据库:create database 数据库名; 删除数据库:drop datebase 数据库名; 查看数据库:show databases;(所有数据库) 使用数据库:use 数据库名;(之 ...
- c语言连接数据库例子,c语言操作mysql数据库小例子_互帮互助(C language MySQL database operation example _ mutual help).doc...
这是精心收集的精品经典资料,值得下载保存阅读! c语言操作mysql数据库小例子_互帮互助(C language MySQL database operation example _ mutual h ...
- go语言mysql操作_使用Go语言操作MySQL数据库的思路与步骤
最近在做注册登录服务时,学习用Go语言操作MySQL数据库实现用户数据的增删改查,现将个人学习心得总结如下,另外附有代码仓库地址,欢迎各位有兴趣的fork. 软件环境:Goland.Navicat f ...
- c 获取mysql列数据_转 用C API 操作MySQL数据库
用C API 操作MySQL数据库 参考MYSQL的帮助文档整理 这里归纳了C API可使用的函数,并在下一节详细介绍了它们.请参见25.2.3节,"C API函数描述". 函数 ...
- cmd如何刷新MySQL数据库_怎样在cmd中用命令操作MySQL数据库 需要技巧
用命令来操作MySQL是工作必备的,今天我就来分享一下cmd命令操作MySQL数据库的方法,希望有帮助. 工具/材料 电脑 xampp 操作方法 01 首先,启动MySQL服务才行哦.这里我是用xam ...
- 操作 mysql 不生成日志_利用Python操作MySQL数据库,以后不懂这些是要被鄙视的!...
前言 在工作中,我们需要经常对数据库进行操作,比如 Oracle.MySQL.SQL Sever 等,今天我们就学习如何利用Python来操作 MySQL 数据库. 本人环境:Python 3.7.0 ...
- python操作mysql中的表_带你了解什么是Python操作MySQL数据库
写这篇文章主要是为了介绍Python操作MySQL数据库,并结合相应的实例带你更加深入了解.文中的代码实例很详细,对大家有一定的参考学习价值. 1.什么是pymysql? PyMySQL是在Pytho ...
- java 读取mysql数据库_原生Java操作mysql数据库过程解析
这篇文章主要介绍了原生Java操作mysql数据库过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.引入数据库驱动的jar包 以通过mav ...
最新文章
- linux7安装pgsql数据库,在CentOS7系统上安装和配置PostgreSQL
- jfinal框架增加微信jsapi支持
- 干货总结:SPI总线详细要点
- 45.UITableView去除分割线
- docker容器详解(入门必看)(一)
- javascript释放对象_一文深入理解JavaScript如何运作
- kindle资源网址
- java扫雷具有win7_window自带扫雷|扫雷下载|经典扫雷_win7扫雷下载_多特软件站
- wordcloud----canvas 绘制标签云/词云web版wordle(一)
- android framework之priv-app,系统特权app权限那些坑
- 在K8s上部署Redis 集群
- 金融行业的数据分析怎么做?
- linux使用Quota配额之须配额目录为非独立文件系统并无可分配分区解决办法
- 老派道场普陀山 海天佛国的禅修氛围
- 通过抓包判断是否支持 802.11k and 11r
- docker批量删除镜像-条件删除(过滤条件筛选)
- 互联网日报 | iPhone 12系列手机正式发布;盒马入局火锅市场;东风汽车A股IPO申请获受理...
- git merge使用(--no-ff)
- 科技云报道:酷栈科技xView,不只是比肩传统PC的全能体验
- 大数据挖掘-使用频率top20中药材
热门文章
- ThinkPHP下隐藏index.php以及URL伪静态
- 程序员求职之道(《程序员面试笔试宝典》)之面试官箴言?
- Get Start from today
- 【转帖】dopod touch diamond 应用小常识:)
- Google Calendar API练习
- python 字典的值可以为集合吗_转:Python字典与集合操作总结
- windows redis 客户端_redis高并发的最佳解决方案
- 接触网怎么区分t线f线_这个形态是一种庄家线,它是完全由庄家控盘造成的,散户需重视...
- 【Paper】2007_Consensus control for a class of networks of dynamic agents 二阶静态一致性
- 1.11 双向循环神经网络-深度学习第五课《序列模型》-Stanford吴恩达教授