首页 > 其他分享 >4.11每日总结

4.11每日总结

时间:2023-04-11 22:01:56浏览次数:32  
标签:4.11 总结 rows return String int 每日 currentPage public

昨天的河北省科技政策查询系统需求项目没有整出来总记录,老师没让通过。

今天又修改了一下

 

 

 

 

package cn.itcase.dao.impl;

import cn.itcase.dao.UserDao;
import cn.itcase.domain.User;
import cn.itcase.util.JDBCUtils;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;

import javax.xml.soap.Text;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;

public class UserDaoImpl implements UserDao {

    private JdbcTemplate template= new JdbcTemplate(JDBCUtils.getDataSource());
    @Override
    public List<User> findAll() {
        /*
        * 使用jdbc
        * */
        String sql="select * from policy";
        List<User> users=template.query(sql,new BeanPropertyRowMapper<User>(User.class));
        return users;
    }





    @Override
    public User findById(int id) {
        String sql="select * from policy where id=?";
        return template.queryForObject(sql,new BeanPropertyRowMapper<User>(User.class), id);
    }



    @Override
    public int findTotalCount(Map<String, String[]> condition) {
        //1.定义模板初始化sql;
        String sql="select count(*) from policy where 1 = 1 ";
        StringBuilder sb=new StringBuilder(sql);
        //2.遍历map
        Set<String> keySet = condition.keySet();
        //定义参数集合
        List<Object> params = new ArrayList<Object>();
        for (String key :keySet){
            //排除分页条件参数
            if ("currentPage".equals(key) || "rows".equals(key)){
                continue;
            }
            //获取value
            String value = condition.get(key)[0];
            //判断value是否有值
            if (value != null && !"".equals(value)){
                //有值
                sb.append(" and ").append(key).append(" like ?");
                params.add("%"+value+"%");//条件的值
            }
        }
        System.out.println(sb.toString());
        System.out.println(params);

        return template.queryForObject(sb.toString(),int.class,params.toArray());
    }

    @Override
    public List<User> findByPage(int start, int rows, Map<String, String[]> condition) {
        String sql="select * from policy where 1 = 1 ";
        StringBuilder sb=new StringBuilder(sql);
        //2.遍历map
        Set<String> keySet = condition.keySet();
        //定义参数集合
        List<Object> params = new ArrayList<Object>();
        for (String key :keySet){
            //排除分页条件参数
            if ("currentPage".equals(key) || "rows".equals(key)){
                continue;
            }
            //获取value
            String value = condition.get(key)[0];
            //判断value是否有值
            if (value != null && !"".equals(value)){
                //有值
                sb.append(" and ").append(key).append(" like ?");
                params.add("%"+value+"%");//条件的值
            }
        }
        //添加分页查询
        sb.append(" limit ?,? ");
        //添加分页查询参数
        params.add(start);
        params.add(rows);

        return template.query(sb.toString(),new BeanPropertyRowMapper<User>(User.class),params.toArray());
    }

//    @Override
//    public User findUserByUsernameAndPassword(String username, String password) {
//        try {
//            String sql="select * from user where username=? and password=?";
//            User user=template.queryForObject(sql,new BeanPropertyRowMapper<User>(User.class)),username,password;
//            return user;
//        }catch (Exception e){
//            e.printStackTrace();
//            return null;
//        }
//
//
//    }
}
package cn.itcase.domain;

import java.util.List;

/*
* 分页工具对象
* */
public class PageBean<T>{
    private int totalCount;//总记录数
    private int totalPage; //总页码
    private List <T> list;     //每页的数据
    private int currentPage;//当前页码
    private int rows;//每页显示的记录数

    public int getTotalCount() {
        return totalCount;
    }

    public void setTotalCount(int totalCount) {
        this.totalCount = totalCount;
    }

    public int getTotalPage() {
        return totalPage;
    }

    public void setTotalPage(int totalPage) {
        this.totalPage = totalPage;
    }

    public List<T> getList() {
        return list;
    }

    public void setList(List<T> list) {
        this.list = list;
    }

    public int getCurrentPage() {
        return currentPage;
    }

    public void setCurrentPage(int currentPage) {
        this.currentPage = currentPage;
    }

    public int getRows() {
        return rows;
    }

    public void setRows(int rows) {
        this.rows = rows;
    }

    @Override
    public String toString() {
        return "PageBean{" +
                "totalCount=" + totalCount +
                ", totalPage=" + totalPage +
                ", list=" + list +
                ", currentPage=" + currentPage +
                ", rows=" + rows +
                '}';
    }

    public PageBean(int totalCount, int totalPage, List<T> list, int currentPage, int rows) {
        this.totalCount = totalCount;
        this.totalPage = totalPage;
        this.list = list;
        this.currentPage = currentPage;
        this.rows = rows;
    }

    public PageBean() {
    }
}

 

标签:4.11,总结,rows,return,String,int,每日,currentPage,public
From: https://www.cnblogs.com/louwangshayu/p/17307914.html

相关文章

  • 4月11号总结
    --删除tb_user表DROPTABLEIFEXISTStb_user;--创建tb_user表CREATETABLEtb_user(idint,usernameVARCHAR(20),passwordVARCHAR(32));--添加数据INSERTINTOtb_userVALUES(1,'zhangsan','123'),(2,'lisi','234......
  • day42(2023.4.11)
    1.数据库基本概念2.数据库中,各个概念之间的关系3.数据库分类4.MySQL简介、特点、以及分类 5.下载MySQL   6.MySQL的安装与卸载 7.连接MySQL  8.Navicat工具由于MySQL自带的客户端工具(就是那个黑窗口),有点小小的简陋,也不怎么好看。我们可以......
  • 2023.4.11——软件工程日报
    所花时间(包括上课):8h代码量(行):0行博客量(篇):1篇今天,上午学习,下午学习。我了解到的知识点:1.学习了python,并了解了一些关于python的知识;2.了解了一些数据库的知识;......
  • 面试4.11
    #1tcp三次握手和四次挥手#2osi七层协议,哪七层,每层有哪些#3tcp和udp的区别? udp用在哪里了?tcp三次握手和四次挥手tcp的三次握手和四次挥手实质就是tcp通信的连接和断开三次握手:为了对每次发送的数据量进行跟踪与协商,确保数据段的发送和接收同步,根据所接收到的数据量......
  • 4/11小组个人工作总结
    今天对教学管理系统的学生页面进行了初步的绘制,样子比较难看,功能也不齐全,日后慢慢改进。<%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPEhtml><html><head><metacharset="UTF-8"......
  • 4.11每日总结
    今天做了什么:完成了Python的安装和配置,并且可以在pycharm运行代码,学习了sqlserver数据库的调试器,完成了记账app的总金额传参遇到了哪些问题:python导入外部拓展库受到网速制约导入失败,更换网络后成功明天打算做什么:对记账app的图片识别返回结果进行优化,自动获取有用的信息,并且尝......
  • 每日打卡-2.2
    一.问题描述设计一个类people,有保护数据成员:age(年龄,整型),name(姓名,string),行为成员:两个构造函数(一个默认,另一个有参数);默认析构函数;voidsetValue(intm,stringstr)给age和name赋值;voiddisplay()输出age和name。设计一个学生类student,公有继承类people,有私有成员:ID(......
  • java arrays类方法parallelSort,学习总结
    Arrays.sort与Arrays.parallelSort区别Arrays.sort()Arrays.sort()方法对对象或原始数据类型的数组进行排序。此方法中使用的排序算法是Dual-Pivot Quicksort。 换句话说,它是快速排序算法的自定义实现,以实现更好的性能。此方法是单线程的 ,有两种变体:sort(array)–将整......
  • 【总结】一些已内置不用再下载的vscode插件
    使用vscode进行开发时,不要盲目下载插件。下面本篇文章就来给大家总结分享一些不要再下载的vscode插件,希望对大家有所帮助!vscode好多插件都已经内置了,但是还是有很多憨批不知道,还在傻傻的推荐这些插件来坑萌新。1、AutoRenameTag这个插件是在写html标签的时候可以重命名标签......
  • 4.11总结
    一、构造器定义在类中的,可以用于初始化一个类的对象,并返回对象地址。Carr=newCar();——即构造器构造器的格式:修饰符类名(形参列表){...}如:类变量名称=new构造器();二、this关键字1.作用:可以用于指定访问当前对象的成员变量、成员方法。三、封装封装的原则:对......