IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> Dao编程模型(完善后) -> 正文阅读

[开发工具]Dao编程模型(完善后)

Dao编程模型(完善后)

说明

上一篇文章Dao编程模型中,最后的几个功能我只完成了相对较复杂的两个,其它由于时间原因未完善,这篇文章是对于上一篇文章的补充完善,并加了少量相关注释
其中做补充的只有两处代码:country的dao的实现-countryDaoImpl测试功能–daotest
其他部分代码请大家参考上一篇文章,请大家谅解浏览文章带来的不便,感谢!

代码展示

country的Dao的实现

package jdbc.impl;

import jdbc.dao.ICountryDao;
import jdbc.pojo.country;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import jdbc.util.jdbcSqlFactory;
public class CountryDaoImpl implements ICountryDao {
    private jdbcSqlFactory sqlFactory=new jdbcSqlFactory();

    //增加一条记录
    @Override
    public void save(country pojo) {
        String insertSql="insert into country values (null,?,?)";
        sqlFactory.prepareUpdate(insertSql,pojo.getCname(),pojo.getLocation());
    }

    //删除一条记录
    @Override
    public void cancel(Integer integer) {
        String cancelSql="delete from country where cid="+integer;
        sqlFactory.executeUpdate(cancelSql);
    }

    //修改记录
    @Override
    public void modify(country pojo) {
        String modifySql="update country set cname=?,location=? where cid=?";
        sqlFactory.prepareUpdate(modifySql,pojo.getCname(),pojo.getLocation(),pojo.getCid());
    }

    //按条件查询
    @Override
    public List<country> queryBycondition(country pojo) {
        List<country> countries=new ArrayList<>();

        String querySql="select * from country where 1=1 ";
        if (pojo!=null){
            if (pojo.getCid()!=0){
                querySql+="and cid="+pojo.getCid();
            }
            if (pojo.getCname()!=null&&!"".equals(pojo.getCname())){
                querySql+="and cname like '%"+pojo.getCname()+"%'";
            }
            if (pojo.getLocation()!=null&&!"".equals(pojo.getLocation())){
                querySql+="and location like '%"+pojo.getLocation()+"%'";
            }
        }
        List<Map<String,Object>> table=sqlFactory.executeQuery(querySql);

        for (Map<String,Object> row: table){
            country cou=new country();
            cou.setCid(Integer.valueOf(row.get("cid")+""));
            cou.setCname(String.valueOf(row.get("cname")));
            cou.setLocation(String.valueOf(row.get("location")));

            countries.add(cou);
        }

        return countries;
    }

    //查询一条记录
    @Override
    public country queryOne(Integer integer) {
        country coun=new country();
        String querySql="select * from country where cid="+integer;
        List<Map<String,Object>> table =new ArrayList<>();
        table= sqlFactory.executeQuery(querySql);
        for (Map<String,Object> row:table){
            coun.setCid(Integer.valueOf(row.get("cid")+""));
            coun.setCname(String.valueOf(row.get("cname")));
            coun.setLocation(String.valueOf(row.get("location")));
        }

        return coun;
    }
}

测试功能

import jdbc.util.jdbcSqlFactory;
import jdbc.pool.ConnectionPool;
import jdbc.pojo.country;
import jdbc.impl.CountryDaoImpl;
import jdbc.dao.ICountryDao;


public class daotest {
    public static void main(String[] args){
        country coun=new country();
        coun.setCname("song");  //数据库表设置了cid主键自增长,所以不用设置cid
        coun.setLocation("do not konw");
        country coun1=new country();
        coun1.setCid(5);
        coun1.setCname("modifysong");
        coun1.setLocation("newlocation");

        CountryDaoImpl countryDao=new CountryDaoImpl();

        //save
        countryDao.save(coun);
        //queryBycondition
        System.out.println(countryDao.queryBycondition(coun).toString());
        //queryOne
        System.out.println(countryDao.queryOne(5).toString());
        //cancel
        countryDao.cancel(6);
        System.out.println(countryDao.queryOne(6).toString());
        //modify
        countryDao.modify(coun1);
        System.out.println(countryDao.queryOne(5).toString());
    }
}

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-04-01 00:17:48  更:2022-04-01 00:19:11 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 5:52:41-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码