成员属性类:

public class Dog {private int number;private String name;private String strain;private String sex;private int age;private String matters;public int getNumber() {return number;}public void setNumber(int number) {this.number = number;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getStrain() {return strain;}public void setStrain(String strain) {this.strain = strain;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getMatters() {return matters;}public void setMatters(String matters) {this.matters = matters;}
}

逻辑方法类:

package com.zhidisoft.dao;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import com.zhidisoft.entity.Dog;//用来实现数据库的操作 连接、释放数据库 通用的增删改查
public class DatabaseAction {Connection conn = null;//连接数据库 public Connection getConnection(){String url = "jdbc:mysql://127.0.0.1:3306/test?" + "user=root&password=root&useUnicode=true&characterEncoding=UTF8";try {Class.forName("com.mysql.jdbc.Driver");//声明驱动的jar包conn = DriverManager.getConnection(url);//按照url提供的路径连接服务器} catch (ClassNotFoundException | SQLException e) {// TODO Auto-generated catch block
      e.printStackTrace();}// 动态加载mysql驱动return conn;}//向数据库插入信息public int zhuce(Dog dog){conn=this.getConnection();//调用连接数据库方法,连接服务器String sql="insert into Dog()
values("+dog.getNumber()+",'"+dog.getName()+"','"+dog.getStrain()+"','"+dog.getSex()+"',"+dog.getAge()+",'"+dog.getMatters()+"')";
    Statement st;int result=0;try {st = conn.createStatement();result=st.executeUpdate(sql);//执行sql语句,返回结果为int类型,受影响的行数conn.close();//关闭数据库连接} catch (SQLException e) {// TODO Auto-generated catch block
      e.printStackTrace();}return result;}public int shanchu(int number){conn=this.getConnection();String sql = "delete from Dog where number = "+number;Statement st;int result = 0;try {st = conn.createStatement();result = st.executeUpdate(sql);conn.close();} catch (SQLException e) {// TODO Auto-generated catch block
      e.printStackTrace();}return result;}public int genggai(String name,String matters){conn=this.getConnection();String sql = "update Dog set matters ='"+matters+"' where name = '"+name+"'";Statement st;int result = 0;try {st = conn.createStatement();result = st.executeUpdate(sql);conn.close();} catch (SQLException e) {// TODO Auto-generated catch block
      e.printStackTrace();}return result;}public void chazhao(Dog dog){conn=this.getConnection();String sql = "select * from Dog";Statement st;try {st = conn.createStatement();ResultSet rs = st.executeQuery(sql);while (rs.next()) {//遍历输出查询记录System.out.println("编号:"+rs.getInt("number")+"\t姓名 "+rs.getString("name")+"\t品种:"+rs.getString("strain")+"\t性
别:"+rs.getString("sex")+"\t年龄:"+rs.getInt("age")+"\t病情:"+rs.getString("matters"));
      }conn.close();} catch (SQLException e) {// TODO Auto-generated catch block
      e.printStackTrace();}}}

测试类:控制器:根据不同的功能调用不同的方法

import java.sql.SQLException;
import java.util.Scanner;import com.zhidisoft.dao.DatabaseAction;
import com.zhidisoft.entity.Dog;public class Test {public static void main(String[] args) throws SQLException {DatabaseAction dz=new DatabaseAction();//实例化方法类//专注于业务逻辑System.out.println("欢迎来到宠物医院,请选择操作:1.注册 2.删除 3.更改 4.查询");@SuppressWarnings("resource")Scanner input=new Scanner(System.in);Dog dog = new Dog();String choice=input.next();if(choice.equals("1")){//进行注册操作 //收集数据 调用数据库的插入方法实现注册System.out.println("输入宠物的编号:");dog.setNumber(Integer.valueOf(input.next()));System.out.println("输入宠物的名字:");dog.setName(input.next());System.out.println("输入宠物的品种:");dog.setStrain(input.next());System.out.println("输入宠物的性别:");dog.setSex(input.next());System.out.println("输入宠物的年龄:");dog.setAge(Integer.valueOf(input.next()));System.out.println("输入宠物的病情:");dog.setMatters(input.next());//调用dao层的代码实现数据的插入int result=dz.zhuce(dog);if (result == 1) {//受影响行数为1,插入成功System.out.println("信息注册成功");}else{System.out.println("注册不成功,请检查输入信息是否完善");}}if (choice.equals("2")) {System.out.println("请输入要删除的编号:");dog.setNumber(Integer.valueOf(input.next()));int result = dz.shanchu(dog.getNumber());if (result != 0) {//有删除的记录,受影响行数不为零System.out.println("编号相对应狗信息删除成功");}else{System.out.println("未找到此编号的狗信息");}}if (choice.equals("3")) {System.out.println("请输入要更病情的狗的名字");dog.setName(input.next());System.out.println("请输入要更改的病情");dog.setMatters(input.next());int result = dz.genggai(dog.getName(), dog.getMatters());if (result == 0) {//修改成功,受影响条目不为零System.out.println("没有找到名字叫做"+dog.getName()+"的狗");}else{System.out.println("更改成功");}}if (choice.equals("4")) {//调用查询方法,遍历输出所有结果
      dz.chazhao(dog);    }}
}

转载于:https://www.cnblogs.com/Memory7/p/5735953.html

java-数据库连接,分层实现增删改查测试相关推荐

  1. java mysql分层_java-数据库连接,分层实现增删改查测试

    packagecom.zhidisoft.dao;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.Resul ...

  2. JDBC:JAVA连接Mysql实现增删改查

    总有特别赶的时候,小高叫你如何速通JAVA连接数据库Mysql实现增删改查.CV战士 一.前置准备工作 1. 安装IDEA,配置JAVA环境 2. 安装Mysql,配置Mysql环境变量 3. 安装S ...

  3. Java 实现Gbase数据库增删改查功能

    Java 实现Gbase数据库增删改查功能 具体代码如下 主要: 要记得在官网下载驱动包gbase-connector-java-8.3-bin.jar package com.advance.JDB ...

  4. Java连接Mysql数据库增删改查实现

    Java连接Mysql数据库增删改查实现 时间比较赶,我这里只实现查询,有时间再添加另外两个 难度 : ⭐⭐⭐(全星5颗星的情况下) 新建一个动态的网站工程, 把jar包全部复制进去,主要要那个mys ...

  5. 增删改查测试场景(菜市场的大妈都能看懂)

    前言 1.相同点 2.不同点 2.1.增加 2.2.删除 2.3.查询 2.4.修改 前言 1.本想在网上找一下资料,质量很差.要不然就是一些没太大实际作用的测试点(实际测试过程中,没人给你勇气提啊啊 ...

  6. java 对增删该查进行测试_java连接mysql增删改查测试通过

    把数据库连接作为一种方法调用实现增删改查 源码参考: import java.sql.*; public class JDBC_Test { // 创建静态全局变量 static Connection ...

  7. 【SpringBoot集成ElasticSearch 02】Java HTTP Rest client for ElasticSearch Jest 客户端集成(配置+增删改查测试源码)【推荐使用】

    1.简介 SpringBoot 项目初始化时就有 NoSQL 选项 Spring Data Elasticsearch(Access+Driver) 此时 pom 文件里引入的依赖是 spring-b ...

  8. 数据库连接,实现增删改查操作具体步骤(全)

    1.连接数据库必要的步骤: jdbc: driver=com.mysql.jdbc.Driver jdbcUrl=jdbc:mysql://localhost:3306/lxn user=root p ...

  9. java之简单的增删改查功能

    目录 前言 一.查询 二.增加 三.删除 四.修改 五.界面展示: 前言 用增删改查写的简单版学生管理系统 运用了JavaScript,El表达式,c标签,mvc模式,三层架构,MySQL. 数据库辅 ...

最新文章

  1. “重置”不是“清空”
  2. 55 岁中国芯片首富,捐出 200 亿:建一所理工大学
  3. OpenCL异构扩展
  4. Spring boot配置文件值注入
  5. CXF配置,ant文件说明及运行,运行cxf中带的项目
  6. Docker进阶-快速扩容
  7. 数据仓库在HDFS上存储数据的路径(持续更新中)
  8. 跟着8张思维导图学习javascript
  9. Python DearPyGui 多线程与异步
  10. PostgreSQL 优势,MySQL 数据库自身的特性并不十分丰富,触发器和存储过程的支持较弱,Greenplum、AWS 的 Redshift 等都是基于 PostgreSQL 开发的...
  11. IIC总线设计⑥——时钟模块DS1302
  12. 前端答题小游戏_前端知识小游戏
  13. Linux服务器监控性能测试
  14. 可以学习相关框架【转:https://testerhome.com/topics/6283】
  15. AIS(ACL,IJCAI,SIGIR)(2019)论文报告会,感受大佬的气息...
  16. clear:both在HTML页面中的用法
  17. Chrome 浏览器清除单张网页缓存
  18. 高薪就业面试题系列 人事篇三
  19. 南邮汇编语言程序设计实验二————用户登录验证程序的设计
  20. 【 安信可模组TG-12F/TG-01M②】搭建Linux开发环境,二次开发直连阿里飞燕/天猫精灵平台,实现天猫精灵语音控制

热门文章

  1. evernote使用推荐
  2. 我的CCIE实验考试
  3. Consumer is not subscribed to any topics
  4. 产生BFC环境的几种方式
  5. SQL中的Null值
  6. 3D显示Cell效果
  7. Robotium调用getActivity()导致程序挂起的方法
  8. 【Android】SlidingMenu属性详解
  9. Linux jogl配置
  10. Bourne Shell及shell编程