java 连接mysql增删改查
1、创建mysql测试表
2、按下图创建3个文件夹与3个类
3、三个类的代码
PersionDao :目录(Data Access Object), 数据访问对象是第一个面向对象的数据库接口
package com.test.dao; import com.test.entity.Person; import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException; /**
* Created by wdw on 2017/9/7.
*/
public class PersonDao { private final static String DRIVER = "com.mysql.jdbc.Driver";
private final static String URL = "jdbc:mysql://localhost:3306/wdw";
private final static String USERNAME = "root";
private final static String PASSWORD = "123456"; /**
* 添加一个人
*
* @param person
* @return boolean
*/
public boolean insert(Person person) {
boolean flag = false;//
try {
Class.forName(DRIVER);//加载数据库驱动
java.sql.Connection conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
// 使用jar包中的connection接口,并通过DriveManager类的静态方法getConnection()创建连接对象conn
String sql = "INSERT INTO sys_users(id,name,code) VALUES(?,?,?)";//编写sql语句
PreparedStatement ps = conn.prepareStatement(sql);////创建预处理对象ps
ps.setInt(1, person.getId());
ps.setString(2, person.getName());
ps.setString(3, person.getCode()); if (ps.executeUpdate() > 0) {
flag = true;
}
System.out.print(flag);
ps.close();
conn.close(); } catch (ClassNotFoundException e) { e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return flag;
} /**
* 添加一个人
*
* @param id
* @return boolean
*/
public Person selectById(String id) {
Person p = new Person();
try {
Class.forName(DRIVER);//加载数据库驱动
java.sql.Connection conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
String sql = "delete sys_users where id=" + id;//编写sql语句
PreparedStatement ps = conn.prepareStatement(sql);////创建预处理对象ps
ResultSet r = ps.executeQuery();
while (r.next()) {
p.setId(r.getInt("id"));
p.setName((r.getString("code")));
p.setCode(r.getString("name"));
} ps.close();
conn.close(); } catch (ClassNotFoundException e) { e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return p;
} }
entity:entity目录(实体),实体就是一个特定的软件模块。
package com.test.entity; /**
* Created by wdw on 2017/9/7.
*/
public class Person { private int id;
private String code;
private String name; public int getId() {
return id;
} public void setId(int id) {
this.id = id;
} public String getCode(){
return this.code; }
public void setCode(String code)
{
this.code=code; }
public String getName(){
return this.name; }
public void setName(String name)
{
this.name=name; }
}
test:test目录,最终的试行测试。
package com.test.test; import com.test.dao.PersonDao;
import com.test.entity.Person; /**
* Created by wdw on 2017/9/7.
*/
public class test {
public static void main(String[] args) {
Person ps = new Person();
ps.setId(1);
ps.setCode("编号");
ps.setName("张三");
PersonDao s = new PersonDao();
boolean aResult = s.insert(ps); //add a use
boolean uResult = s.insert(ps); //delete a use
boolean dResult = s.insert(ps); //delete a use
} }
4、运行测试,记得在main断点。
java 连接mysql增删改查的更多相关文章
- JDBC连接mysql增删改查整体代码
第一种比较low:用了statment,没有用preparedstatement.另外,插入时,不灵活,不能调用参数,但是如果直接给函数形参的话就会被SQL注入攻击,所以,最好在sql语句中使用?代表 ...
- MySQL—增删改查,分组,连表,limit,union,alter,排序,去重
MySQL增删改查 在表格的增删改查中,查的内容是最多的,包括group by ,join,limit,union,alter,排序都是服务于查的 #sql语句数据行操作补充 #增加: #insert ...
- mysql增删改查相关操作
mysql增删改查相关操作 以前用mysql用的少,对于数据库相关的操作不熟悉,现在开始要接触数据库了,记录一下相关的基础操作吧. 1.数据库的授权操作 # mysql -u root -p Ente ...
- 基于gin的golang web开发:mysql增删改查
Go语言访问mysql数据库需要用到标准库database/sql和mysql的驱动.标准库的Api使用比较繁琐这里再引入另一个库github.com/jmoiron/sqlx. go get git ...
- PHP MySql增删改查
mysql_connect()连接数据库 mysql_select_db选择数据库 mysql_fetch_assoc()获取结果集 mysql_query()执行sql语句 实例如下: <?p ...
- mysql增删改查练习
Mysql增删改查sql语句练习 关于数据库的一些操作: 进入mysql 命令行: mysql -uroot –p 查看所有数据库: show databases; 创建数据库: create dat ...
- Django学习之mysql增删改查
上节介绍了如何使用命令行操作mysql增删改查,现在介绍如何使用python管理mysql 使用pip 下载完mysql后,mysql会以pymysql模块的形式存储在pycharm的包文件里.我们通 ...
- MySQL增删改查的常用语句汇总
MySQL增删改查的常用语句汇总 以下是总结的mysql的常用语句,欢迎指正和补充~ 一.创建库,删除库,使用库 1.创建数据库:create database 库名; 2.删除数据库:drop da ...
- Node+Express+node-mysql 实战于演习 全套mysql(增删改查)
最近这段时间研究Node感觉不错,自己做了一个增删改查,虽然有些简陋,但是思想是想通的,其实所有项目都是增删改查,有助于初学者快速掌握Node 首先 本实例展示的是基于Node+Express+nod ...
随机推荐
- OpenCV Error: Assertion failed (scn == 3 || scn == 4) in cv::cvtColor
在python用cv2.imread()读取图片的时候一直报错,检查了图片的绝对路径是存在的. 报错的图片用skimage.io.imread()是可以读的. 查了一下,有可能是原图片文件有什么嵌入错 ...
- shentou mianshiti
给你一个网站你是如何来渗透测试的? 在获取书面授权的前提下.1)信息收集,1,获取域名的whois信息,获取注册者邮箱姓名电话等.2,查询服务器旁站以及子域名站点,因为主站一般比较难,所以先看看旁站有 ...
- 【LeetCode算法题库】Day4:Regular Expression Matching & Container With Most Water & Integer to Roman
[Q10] Given an input string (s) and a pattern (p), implement regular expression matching with suppor ...
- [Unity3D]MonoDeveloper快捷键(补全代码补全引用中文乱码tab转空格)
Hello亲爱的观众朋友们大家好,我是09. vs支持各种插件,一般推荐用vs.不过总有人(例如我)由于各种原因用MonoDeveloper.苦于每次上网找各种设置,此处集中写下我用MonoDevel ...
- 【Kubernetes】基于角色的权限控制:RBAC
Kubernetes中所有的API对象,都保存在Etcd里,对这些API对象的操作,一定都是通过访问kube-apiserver实现的,原因是需要APIServer来做授权工作. 在Kubernete ...
- openstack系列文章(四)
学习 openstack 的系列文章 - Nova Nova 基本概念 Nova 架构 openstack Log Nova 组件介绍 Nova 操作介绍 1. Nova 基本概念 Nova 是 op ...
- Final阶段版本控制报告
版本控制代码及文档要求 在coding.net版本控制; 公开项目,教师.专家.其他同学可以不注册源代码.在此公布git地址. 报告beta阶段2周中,项目的版本控制情况,不包括未在coding.ne ...
- Beta发布--PSP DAILY软件功能说明书2.0
一.开发背景 你在完成了一周的软件工程作业后,需要提交一个PSP图表,里面有4项,如下所示: 1.本周PSP表格,包含每项任务的开始.中断.结束.最终时间,格式如下: 2.本周进度条,包含从开始到现在 ...
- 第二阶段每日站立会议Fifth Day
昨天继续调试手机界面,解决了Tomcat服务可以打开,但是无法连接到数据库的问题 今天做最后的准备阶段,完善卖家后台管理界面
- 基于CORBA/WEB技术构建三层体系结构的应用
1 问题提出 在应用系统开发过程中,CLIENT/SERVER体系结构得到了广泛的应用 .其特点是,应用程序逻辑通常分布在客户和服务器两端,客户端发出数据资源访问请求,服务器端将结果返回客户端.但CL ...