项目需求文档2025年 上学期
项目名称:电子仓鼠
项目负责人:冯贝纳
班级:196
一,引言1 目的在当今数字化社会中,电脑和手机等电子产品已经成为人们日常生活和工作的必需品。从学生的学习需求到专业人士的工作需求,从娱乐设备到家庭必备工具,电子产品扮演着不可或缺的角色。然而,市场上的电子产品种类繁多,品牌、配置、价格各异,消费者在选购时往往面临以下难题:
信息冗杂: 消费者需要花费大量时间在多个电商平台或实体店之间对比产品信息。
选择困难: 对于不了解技术参数的用户,难以根据自身需求选择合适的产品。
价格波动: 电子产品价格波动频繁,消费者可能错过优惠活动或无法判断价格的合理性。
售后保障: 不同商家提供的售后政策存在差异,消费者对产品质量和售后支持的信心不足。
为了解决这些问题,“电子仓鼠”项目应运而生。该项目旨在通过构建一个智能化、易用的电子产品选购平台,帮助用户快速、准确地找到适合自己的电脑、手机等电子产品。通过大数据分析与智能推荐技术,“电子仓鼠”将简化用户的决策过程,同时提供价格监控和售后服务建议,提升购物体验。
目标:
帮助用户根据需求和预算找到最合适的电子产品。
...
设计模式的六大原则1,开闭原则
2,里氏替换原则3,单一职责原则4,依赖倒置原则5,接口隔离原则6,迪米特法则7,合成复用原则
1,什么是设计模式设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性、程序的重用性。
2,设计模式的三大类别创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。
3,类和接口的区别是什么?类:类是对象的模板,包含属性(字段)和行为(方法),支持封装、继承和多态。
接口:接口是规范,定义了一组方法签名,实现类必须实现这些方法,支持多继承。
4,基本的Java编程设计应遵循的规则面向接口编程(提高扩展性);优先使用依赖、组合、聚合等方式,不用继承(降低耦合性)。
MybatisAPI方法使用Maven构建项目在pom.xml中导入
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --><dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.16</version></dependency>
在resources中配置数据库连接的配置
注意 XML 头部的声明,它用来验证 XML 文档的正确性。environment 元素体中包含了事务管理和连接池的配置
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0 ...
React列表渲染//创建react 元素//列表渲染const sorngs=[ {id: 1 , name:'老八' }, {id: 2 , name:'旱魃走' }, {id: 3 , name:'李东' }]const list=(<ul> {sorngs.map(item=><li className="titlle" key={item.id}>{item.name}</li>)} </ul>)ReactDOM.render(list,document.getElementById('root'))
函数组件函数组件(其一)
使用js中的函数创建的组件叫:函数组件
函数组件必须有返回值
组件名称必须大写字母开头,React据此区分组件和普通R ...
dbutils和连接池还有优化错误错误捕捉
dbutils 在中文中通常指数据库工具,它是用于与数据库进行交互和管理的工具集。这些工具可以包括连接数据库、执行 SQL 查询、获取数据以及执行各种数据库相关操作的功能。在数据分析、数据科学和数据库管理等领域,dbutils 非常常见,并且在不同的编程语言和环境中都可能有对应的实现。
如何调用dbutils
第一步肯定添加依赖,依赖就直接在pom.xml中就行了《 刷新pml文件!》
<dependency> <groupId>commons-dbutils</groupId> <artifactId>commons-dbutils</artifactId> <version>1.8.1</version> </dependency>
创建并且使用QueryRunner
这里我们创建 QueryRunner 的对象,我们在项目的整体结构中已经写了 ConnectionUtlil 的文件,这里我为什么要 ...
java类成员方法方法的格式如下
修饰符 返回类型 方法名(方法参数)
比如
public void add();public void add(int a);public void add(int a,int b);public int add(int a,int b);
可变长度的参数可变长度的参数其实可以当做数组使用,它的声明如下
public int add(int... data){}
使用方法如下
int r1= add(1,2);int r2= add(3,4,5);
还有一种用法是下面这样
int[] data = {5,6,99,112}int r3 = add(data);
构造函数构造函数是一个特殊的方法,它没有返回值,方法名默认就是类的名称
构造函数可以重载,通过不同的参数个数或类型来实现每次实例类的东西都会调用某一个构造函数
字段在类的全局声明的变量称之为字段,它是可以被此类的所有方法都能访问的
public class SomeClass{ //f1就是一个字段 private in ...
MVC框架核心逻辑1.请求进来,直接到DispatcherServlet2.遍历所有的HandlerMappings,直到有一个Mapping找到了一个Handler(),遍历了所有,还是找不到,交给Servlet容器的默认servlet处理3.要执行handler进行真正的请求处理,handler是由用户编写的,遍历所有的HandlerAdapter,直到找到一个能处理的Adapter(顺序重要,找不到Adapter就抛异常),4.handler的某一个方法是要执行,用来处理请求4.1方法所在类的时实例创建问题4.2方法的参数值的解析4.2.1交给参数解析器处理4.3方法的返回值的后续处理5.handler实例实例的创建:每次请求过来都创建一个全新的对象这和servlet是不一样的servlet的实例是只创建有一次
List List;//这里是尖括号的类型
Java 泛型是 JDK 5 中引入的一个新特性,它提供了编译时类型安全检测机制,允许程序员在编译时检测到非法的类型。泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数1。
不能是基本类型
Consumer(消费者)
Consumer 是一个函数式接口,它接收一个参数并且没有返回值。
在 Java 中,你可以使用 Consumer 来执行一些操作,例如遍历集合并对每个元素执行某些操作。下面是一个示例:
import java.util.ArrayList;import java.util.List;import java.util.function.Consumer;public class ConsumerExample { public static void main(String[] args) { List<String> names = new ArrayList<>(); names.add("Ali ...
























