java商城项目的实现更新

news/2024/7/7 19:03:20

先把需要修改的用户按id查询

1.接收参数,collection就是HashMap的values,这个values中只有id。因为查询需要把查询出的数据返回,这里对类作统一的写法,采用反射技术,传入参数是类的名称。

2.这里引用Java的范型T,需要定义类时加上范型T

public class JDBCUtils<T>

如果添加范型后。当前方法不能是静态方法。

实现查询,返回ResultSet的List当中的类型就是范型T。

3.接收的Collection是字符串,这需要参数转换,使用迭代器的方式。

4.int index=0;
Iterator<String> myiter=args.iterator();
while(myiter.hasNext()){
    String item=myiter.next();
    System.out.println(item);
    if(item.matches("^[0-9]+$") ){
        ps.setInt(index+1,Integer.parseInt(item));
    }else if(item.matches("^[0-9]+.[0-9]][0-9]$")){
        ps.setDouble(index+1,Integer.parseInt(item));
    }else{
        ps.setString(index+1,item);
    }
    //保证PreparedStatement能够进行每一个参数的对应
    index++;
}

5.执行查询后,把查询结果封装在泛型对应的类.

循环出的查询结果中把实例化的对象放在ArrayList集合中。反射的实例化newInstance。

根据不同的类型获取不同的数据,注意String输出的类型是class java.lang.String。

6.每个属性构建set方法

通过getDeclaredMethod执行方法,后面跟属性名称,还有parameterType参数类型。

Method mymethod=myclass.getDeclaredMethod("setId",int.class);

采用invoke执行方法,invoke的第一个参数是对象,第二个参数的值。

mymethod.invoke(my_instance_class,22);

 注意:使用范型T匹配任意一个类,一定类中加上范型T,在方法中引用范型T。

项目:

1.考虑把简单重复的形式用接口来实现.

比如数据库的增删改查(重复)

2.考虑应对场景:用户需求修改,程序员不断修改代码的需求.(开发模式)

3.考虑bug。修复出现的bug

代码在码云Gitee:实现更新 · 5373eb9 · zyt/麦当劳投资人 - Gitee.com


http://lihuaxi.xjx100.cn/news/1888244.html

相关文章

低代码开发:是提高效率的美味佳肴还是无法满足深度需求的垃圾食品?

文章目录 每日一句正能量前言什么是低代码低代码的优缺点低代码开发平台优点低代码开发平台缺点 低代码会替代传统编程吗&#xff1f;低代码定位 如何入门低代码&#xff1f;后记 每日一句正能量 有志者自有千计万计&#xff0c;无志者只感千难万难。 前言 随着技术的不断发展…

C++怎么快速提升实力?

C怎么快速提升实力&#xff1f; 在开始前我有一些资料&#xff0c;是我根据自己从业十年经验&#xff0c;熬夜搞了几个通宵&#xff0c;精心整理了一份「C的资料从专业入门到高级教程工具包」&#xff0c;点个关注&#xff0c;全部无偿共享给大家&#xff01;&#xff01;&…

【漏洞复现】华脉智联指挥调度平台/script_edit/fileread.php文件读取漏洞

Nx01 产品简介 深圳市华脉智联科技有限公司&#xff0c;融合通信系统将公网集群系统、专网宽带集群系统、不同制式、不同频段的短波/超短波对讲、模拟/数字集群系统、办公电话系统、广播系统、集群单兵视频、视频监控系统、视频会议系统等融为一体&#xff0c;集成了专业的有线…

汉诺塔(函数递归)

前言 汉诺塔问题是一个经典的数学谜题&#xff0c;也是函数递归的一个经典问题&#xff0c;起源于印度。问题的设定是有三个柱子&#xff0c;第一个柱子上有一组不同大小的圆盘&#xff0c;按照从上到下依次变大的顺序摆放。目标是将所有的圆盘从第一个柱子移动到第三个柱子上&…

Android 动画 Lottie 如何使用

Android 动画 Lottie 如何使用 一、简介 Lottie 是Airbnb开源的一个面向 iOS、Android、React Native 的动画库&#xff0c;能分析 Adobe After Effects 导出的动画&#xff0c;并且能让原生 App 像使用静态素材一样使用这些动画&#xff0c;完美实现动画效果。 二、Lottie动…

logback日志打印操作人

logback日志打印操作人 自定义拦截器 package com.demo.dv.net.config;import com.demo.dv.net.common.domain.UserInfo; import com.demo.dv.net.common.utils.CurrentUserUtil; import org.slf4j.MDC; import org.springframework.stereotype.Component; import org.spring…

第十四届蓝桥杯省赛 Python B 组 D 题——管道(AC)

目录 1. 管道1. 问题描述2. 输入格式3. 输出格式4. 样例输入5. 样例输出6. 评测用例规模与约定 2. 解题思路3. AC_Code 1. 管道 1. 问题描述 有一根长度为 len \text{len} len 的横向的管道&#xff0c;该管道按照单位长度分为 len \text{len} len 段&#xff0c;每一段的中…

mysql的负向条件查询会不会使用索引

mysql的负向条件查询&#xff0c;例如not in&#xff0c;会不会使用索引&#xff1f; 其实&#xff0c;mysql还是会尽量利用索引。如果查询的列上有索引&#xff0c;并且索引能够覆盖查询所需的列&#xff0c;那么mysql可能会使用索引来获取结果&#xff0c;而不是进行全表扫描…