自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

鸟人的博客

分享优质内容

  • 博客(525)
  • 资源 (3)
  • 问答 (1)
  • 收藏
  • 关注

原创 在家里用千兆宽带和公网IP搭建支持视频的社交论坛服务器

摘要:本文提供了一套完整的家用服务器搭建指南,针对视频社交论坛需求,从硬件配置、网络设置到软件规划给出专业建议。硬件方面推荐AMD Ryzen 7/i7处理器、32GB内存、RAID1存储等配置;网络设置重点包括公网IP申请、端口映射和DDNS服务;软件架构建议采用Nginx+MySQL+FFmpeg+Redis的技术组合,并详细说明了视频转码和带宽计算等关键注意事项。整套方案预算约5000-10000元,适合个人爱好者分阶段实施。

2025-11-16 22:24:43 893

原创 Java实现多线程上传文件

本文介绍了四种实现多线程文件上传的方法:1)使用CompletableFuture异步执行上传任务;2)通过线程池配合CountDownLatch控制并发;3)利用Spring的@Async注解实现异步处理;4)带有进度监控的多线程上传方案。每种方法都提供了完整的代码示例,包含错误处理、超时控制和性能监控。推荐使用CompletableFuture或Spring异步方案,它们提供了更简洁的API和更好的异常处理机制,同时也能有效提升批量文件上传的效率。

2025-11-03 21:08:56 291

原创 Java类加载和对象实例化

Java类加载与对象实例化执行顺序解析: 静态内容优先执行(类加载阶段): 静态变量初始化(首次使用类时执行一次) 静态代码块执行(仅执行一次) 实例内容随后执行(对象创建阶段): 实例变量初始化(每次new时执行) 实例代码块执行(每次new时执行) 构造方法执行(每次new时执行) 方法调用规则: 静态方法可直接通过类名调用 实例方法需对象实例化后调用 关键特点: 静态内容只初始化一次 实例内容每次创建对象都会执行 执行顺序:静态→实例→方法调用

2025-11-03 11:32:00 129

原创 导出HTML内容为PDF并保留样式

本文介绍了将HTML内容转换为PDF并保留样式的完整实现方案,重点推荐使用iText + PDFHTML方法。摘要如下: 核心方案:使用iText7库配合PDFHTML插件实现HTML转PDF功能,支持完整样式保留和中文处理 关键技术: 添加itext7-core和html2pdf依赖 提供HTML转PDF文件和字节数组两种输出方式 支持中文显示(需配置中文字体) 增强功能: 自动包装完整HTML文档结构 预置常用CSS样式(表格、标题、段落等) 异常处理和日志记录 实现效果:可将包含复杂样式的HTML内容

2025-10-28 21:13:53 420

原创 SpringBoot中合MyBatis Plus和PageHelper实现分页

摘要:本文详细介绍了SpringBoot整合MyBatis Plus和PageHelper实现分页的方案。通过添加依赖、配置分页插件、定义实体类和Mapper接口,无需编写SQL即可实现基本CRUD和分页功能。Service层演示了简单分页、条件分页和复杂查询的实现方式,Controller层提供对应的REST接口。该方案结合MyBatis Plus的Wrapper条件和PageHelper的分页能力,简化了分页查询的开发流程,支持排序、多条件筛选等常见需求。

2025-10-27 18:53:34 217

原创 SpringBoot 整合 FFmpeg 实现 MP4 转 MKV 格式

本文介绍了一个完整的SpringBoot整合FFmpeg实现视频格式转换的项目。项目采用Maven构建,包含标准SpringBoot项目结构,主要功能是将MP4转换为MKV格式。核心配置包括FFmpeg路径、超时时间和线程数等参数,通过YAML文件进行管理。项目提供了视频转换请求DTO和统一API响应格式,支持自定义视频编解码参数。系统采用分层架构设计,包含配置层、控制层、服务层和工具类,为视频格式转换提供了完整的RESTful API解决方案。

2025-10-23 16:21:28 430

原创 SpringBoot 整合 FFmpeg 的工具类

SpringBoot整合FFmpeg工具类实现,包含配置类和功能实现。配置类通过@ConfigurationProperties读取FFmpeg路径、超时时间和最大线程数等参数。工具类提供执行FFmpeg命令、音频转WAV格式和视频转码功能,支持自定义参数配置。通过ProcessBuilder处理命令执行流程,包含超时控制和输出处理,使用日志记录执行状态和异常信息。该工具类封装了FFmpeg常用操作,简化了音视频处理集成流程。

2025-10-23 15:56:03 348

原创 Java中Stream API处理Map初始化

摘要: Java Stream API 提供了多种灵活的方式处理Map的构建与更新操作。主要包括:1)使用Collectors.toMap()通过合并函数处理重复键,支持覆盖、保留旧值或求和等策略;2)对复杂对象可按属性分组并聚合计算(如总价值);3)通过groupingBy实现高级分组统计(如分类汇总、求最值);4)支持自定义合并逻辑实现复杂业务规则(如计算平均值)。这些方法能简洁高效地实现"存在则更新,不存在则添加"的Map操作需求。

2025-08-22 17:16:41 429

原创 Java中Stream API简介

Java 新版 Stream API 详解(8-17版):函数式数据处理利器 摘要: 本文系统讲解 Java Stream API 的核心概念与使用,涵盖 Java 8-17 版本新特性。主要内容包括: Stream 基础:创建流的3种方式(集合、静态方法、数组)及操作分类(中间/终端操作) 核心中间操作:filter过滤、map转换、flatMap扁平化、distinct去重、sorted排序及分页控制 终端操作:forEach遍历、collect收集(转List/Set/Map/分组)、reduce归约

2025-08-22 16:22:06 451

原创 Java的Stream API异常处理

Stream API 错误处理技巧 本文介绍了在 Java Stream API 中处理异常的几种有效方法: Lambda 内部处理:在 map/filter 操作中直接使用 try-catch 捕获异常,返回 null 或默认值,后续过滤掉无效结果。 包装方法:对于受检异常,创建包装函数将异常转换为运行时异常,保持流式编程风格。 Optional 工具类:构建安全操作方法返回 Optional 类型,利用 flatMap 自动过滤异常情况。 电商案例实践:展示了如何在实际业务中统计订单数据时,安全处理可能

2025-08-22 16:17:37 532

原创 Java中Stream API的filter,Map,reduce操作综合案例

本文展示了使用Java Stream API的filter→map→reduce流水线处理电商订单数据的案例。通过创建Order和OrderStats类,对电子产品类别且状态为"已完成"的订单进行统计分析。代码演示了两种实现方式:1)使用mapToDouble和collect计算总销售额、平均金额等统计指标;2)通过map转换和reduce聚合实现相同功能。案例输出显示了4个符合条件的电子产品订单,总金额10,996元,平均2,749元,最高4,599元,最低899元。这个示例完整展示了

2025-08-22 16:16:30 283

原创 SpringBoot中接受复杂嵌套JSON参数并过滤多余字段

本文介绍了在Spring Boot中使用DTO接收JSON数据并自动过滤未定义字段的方法。关键步骤包括:1)定义DTO类时添加@JsonIgnoreProperties(ignoreUnknown=true)注解;2)在Controller中使用@RequestBody接收数据;3)通过嵌套类处理复杂JSON结构。该方法能自动忽略JSON中的多余字段,保证数据安全性和结构清晰性,同时支持通过@Valid注解进行字段校验。测试表明,即使JSON包含未定义字段,系统也能正确过滤并处理有效数据。这是Spring

2025-08-21 17:16:26 429

原创 Redis中Stream详解及应用

Redis Stream 是一个日志结构的消息队列,支持数据的顺序存储和消费。与传统的队列不同,Redis Stream 可以被多个消费者组并行消费,而且允许存储大量消息并且可以方便地管理消费进度。

2025-04-22 20:56:35 1429

原创 Redis中RedisSearch详解及应用场景

是 Redis 的一个强大扩展模块,提供了丰富的搜索功能,如全文搜索、过滤、排序、聚合等。它的高性能和实时查询能力使得它非常适合用于搜索引擎、电子商务、社交平台、日志分析等场景。然而,在处理大规模数据或需要高度复杂查询的场景时,可能需要结合其他专用。

2025-04-22 20:54:43 1719

原创 Redis中的分布式锁及应用场景

Redis的分布式锁是通过键值对操作(如SETNXSETDEL等)来实现的,可以确保同一时刻只有一个客户端能够访问共享资源。分布式锁广泛应用于任务调度、资源限流、数据一致性保障等场景。在使用Redis分布式锁时,开发者需要。

2025-04-22 20:53:15 1492

原创 Redis中的Lua脚本详解及应用场景

Lua脚本在Redis中的应用非常广泛,提供了一种高效、原子性强的方式来处理复杂的Redis命令。它特别适合用在需要原子操作的场景,如分布式锁、批量数据处理、复杂的业务逻辑执行等。通过Lua脚本,可以减少客户端和Redis之间的通信,提升性能,同时保证数据一致性和原子性。

2025-04-22 20:52:04 1086

原创 Redis中的事务详解及应用场景

Redis事务通过MULTIEXECWATCH等命令支持一定的原子性操作,但它并不具备传统数据库事务的完整特性,如回滚和ACID一致性。它非常适合用于确保多个命令在并发场景下的顺序执行和原子性,尤其在缓存、分布式锁、计数器等场景中有广泛应用。

2025-04-22 20:49:24 1038

原创 Redis中的列表详解及应用场景

Redis的列表是一个非常强大且灵活的数据结构,能够高效地处理队列、栈、实时数据流、任务队列等应用场景。它的高效性、简单易用和支持阻塞操作,使其在许多需要处理高并发和实时数据的应用中都表现出色。在使用时,需要合理设计数据结构,避免长列表引发性能瓶颈。

2025-04-22 20:47:47 725

原创 Redis缓存穿透、击穿和雪崩详解

缓存穿透是指查询一个根本不存在的数据,缓存层和存储层都不会命中,导致每次请求都要访问数据库。缓存击穿是指一个热点key突然过期,此时大量并发请求直接穿透到数据库。缓存雪崩是指大量缓存key同时失效,导致所有请求直接访问数据库。问题类型触发条件影响范围核心解决方案缓存穿透查询不存在的数据单个不存在的key1. 缓存空对象 2. 布隆过滤器缓存击穿热点key突然失效单个热点key1. 互斥锁 2. 永不过期策略缓存雪崩大量key同时失效多个甚至全部key1. 差异化过期时间 2. 多级缓存。

2025-04-22 20:44:41 448

原创 Redis中的并发问题及解决方案

对于简单原子操作:使用Redis的INCR/DECR等原子命令对于复杂操作:使用Lua脚本保证原子性对于分布式锁:使用Redlock算法或Redisson等成熟库缓存一致性:采用"先更新数据库,再删除缓存"策略热点数据:采用永不过期或互斥锁策略批量操作:使用pipeline减少网络往返时间Redis的并发问题主要源于其单线程模型与客户端多线程访问之间的交互,合理使用Redis提供的事务、Lua脚本和原子操作可以解决大多数并发问题。

2025-04-22 20:43:27 501

原创 Redis中的HyperLogLog详解

Redis 的 HyperLogLog 是一种,用于,比如你想知道一个网站有多少独立访问用户(UV)。,无论你添加多少数据,它通常只占用 12KB 的内存。

2025-04-22 20:41:00 660

原创 Redis中的有序集合详解

Redis 的有序集合(Sorted Set,类型标识是zset)是集合和有序结构的结合体。每个元素是唯一的(不能重复)。每个元素关联一个score(浮点数),通过它进行排序。元素按 score 自动排序,支持范围查找、排名查找等操作。

2025-04-22 20:38:37 373

原创 Redis中Set集合案例: 学生选课系统

当然可以!下面是一个完整的 RedisSet类型常用操作示例,包括添加、删除、查询、集合运算等,使用的是redis-cli命令行方式操作,也适合理解在编程语言(如 Python、Java)中使用 Redis 的基本思路。

2025-04-22 20:37:28 364

原创 MySQL中的覆盖索引和回表操作

覆盖索引通过将查询所需的所有字段都包含在索引中,避免了回表的需要,从而提高了查询性能。回表是指索引中没有查询的所有数据列时,需要通过回到数据表中取出剩余的列,回表会增加I/O开销。在设计索引时,尽量通过复合索引来覆盖常见查询所需的列,从而优化查询性能。希望这个解释清晰地帮助你理解覆盖索引和回表的概念及其优化方法!如果还有具体的细节或其他问题,随时可以继续交流。

2025-04-22 20:33:16 799

原创 MySQL 游标详解

游标(Cursor)是MySQL中一种用于遍历查询结果集的数据库对象,它允许你逐行处理查询结果,而不是一次性获取所有数据。

2025-04-16 05:35:32 657

原创 Redis中Set常用场景和命令

唯一标识存储(如黑名单、请求 token)社交关系(如好友、关注)集合运算(兴趣匹配、共同好友)抽奖/随机取值(用SPOP如果你有具体的业务需求(比如抽奖、签到、用户系统等),我可以帮你用 Redis Set 设计对应的数据模型和操作方案 🙌。

2025-04-13 02:43:13 506

原创 Redis中SCARD命令中的CARD代表什么?

(基数)是集合论中的术语,表示集合中元素的数量。集合 A = {1, 2, 3}

2025-04-13 02:42:30 459

原创 Redis中Pipline管道命令详解

Redis 的管道是指:一次性将多个 Redis 命令打包发送给 Redis 服务器,而不等待每个命令的响应,最后再统一读取这些响应。它是一种减少网络往返次数(RTT)的技术,而不是并发或多线程机制。Redis 的管道机制是一种优化批量操作网络性能的利器,能极大减少 RTTPing 次数,提升吞吐,但它不是事务、也不保证原子性。如果你希望我给出你项目里 Redis 管道的最佳实践代码,我也可以帮你写段示例,比如缓存预热、批量写、批量查询等都可以 👍。

2025-04-13 02:41:58 764

原创 Redis中Hash经典应用场景之Session

应用场景是否适合用 Hash用户登录状态存储✅ 非常适合临时授权信息✅ 可设置过期用户购物车、配置缓存✅ Hash 很适合结构化数据高并发会话控制✅ Redis 高性能支持单字段频繁修改✅ HSET 支持原子操作。

2025-04-13 02:32:30 456

原创 Redis中将日期序列化成UNIX时间戳格式

场景是否适合用时间戳任务队列调度✅ 需要排序活跃时间记录✅ 便于比较日志时间存储✅ 高效存储界面展示(格式化)❌ 需要转换回日期格式显示。

2025-04-13 02:31:45 424

原创 MySQL中索引失效的场景

MySQL 中索引对查询性能非常关键,但,导致查询变慢。以下是索引失效的,并附有示例说明,帮你快速定位和避免这些问题。

2025-04-13 00:52:54 469

原创 MySQL中自定义函数详解

MySQL 的自定义函数是一段可重用的 SQL 代码块,用于接收参数并返回一个单一结果值,类似于编程语言中的函数。你可以在SELECTWHEREORDER BY等语句中调用它。

2025-04-13 00:52:23 626

原创 MySQL中存储过程和函数的区别

函数 = 返回一个值,用于查询中;存储过程 = 封装逻辑流程,可传出多个结果。如果你告诉我你现在在做什么项目,我可以帮你判断是用函数合适,还是存储过程更好 👍你也可以说一下想封装什么样的逻辑,我可以直接写出来对比给你看。

2025-04-13 00:33:48 645

原创 MySQL中Trigger详解

在 MySQL 中,是一种特殊的存储程序,它会在对某张表执行 INSERTUPDATEDELETE操作时自动被触发执行。

2025-04-13 00:32:11 474

原创 MySQL 中的 CAST 函数详解

CAST 函数是 MySQL 中用于数据类型转换的重要函数,它允许你将一个值从一种数据类型转换为另一种数据类型。

2025-04-13 00:31:39 5369 1

原创 MySQL 控制流程函数详解

MySQL 提供了多种控制流程函数,用于在 SQL 查询中实现条件逻辑、循环和流程控制。这些函数可以极大地增强 SQL 的表达能力,使查询更加灵活和强大。

2025-04-12 01:01:33 450

原创 MySQL 日期和时间函数详解

SELECT。

2025-04-12 01:00:56 760

原创 MySQL 字符串函数详解

MySQL 提供了丰富的字符串处理函数,可以用于字符串的创建、修改、比较、搜索和格式化等操作。下面分类介绍常用的字符串函数。

2025-04-12 01:00:18 440

原创 MySQL 行级锁详解:SELECT FOR UPDATE 和 LOCK IN SHARE MODE

MySQL的InnoDB引擎支持行级锁定,主要通过(排他锁/X锁)和(共享锁/S锁)实现。这两种锁定机制为并发事务提供了精细的控制能力。

2025-04-12 00:59:45 1359

原创 MySQL 事务隔离级别详解

事务隔离级别是数据库管理系统用来控制事务间相互影响程度的重要机制。MySQL支持四种标准的事务隔离级别,每种级别在数据一致性和并发性能之间提供不同的平衡。

2025-04-12 00:59:12 1334

Maven项目整合Kafka

使用Maven整合Kafka 包括生产者,消费者 Kafka各种配置 //1.设置参数 Properties props = new Properties(); props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, "81.68.232.188:9092,81.68.232.188:9093,81.68.232.188:9094"); //把发送的key从字符串序列化为字节数组 props.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, StringSerializer.class.getName()); //把发送消息value从字符串序列化为字节数组 props.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, StringSerializ

2023-03-12

Storm整合Kafka

【Storm】整合Kafka storm集群整合kafka集群

2023-03-02

Storm综合案例二Storm集群向Kafka集群读取数据并写入MySQL远程模式

介绍 今天接上文,来实现一个Storm数据流处理综合案例的第二部分,Storm集群向Kafka集群源源不断读取数据,通过MyBatis写入到MySQL数据库,并部署为远程模式 准备工作 参考上文准备工作 代码编写 思路:Storm集群从Kafkatopic主题获取数据,解析后写入MySQL,注意我们使用MyBatis工具与数据库交互 项目结构 部署MySQL 我们在服务器上部署一台MySQL数据库 具体参考这篇文章 数据库表结构如下: WordCountDao 该类会获取SqlSessionConfig配置类的SqlSessionFactory和WordCountMapper的接口方法,生成具体与数据库交互的Session WordCountMapper.xml 该文件为MyBatis编写与数据库交互的具体SQL代码的地方 具体实现了全量查询和批量更新或插入的接口功能

2023-03-12

Storm综合案例一Storm集群向Kafka集群写入数据远程模式

介绍 今天来实现一个Storm数据流处理综合案例的第一部分,Storm集群向Kafka集群源源不断写入数据,并部署为远程模式 准备工作 搭建三台Kafka集群服务器 参考文档:Linux部署Kafka集群 搭建三台Storm集群服务器 参考文档:Linux部署Storm集群 启动Kafka集群 启动Zookeeper Zookeeper启动需要一定时间,建议等一分钟再操作其他命令 cd /usr/local/kafka/zookeeper ./bin/zkServer.sh start

2023-03-12

StormStorm集成Kafka 写数据到Kafka

Storm集成Kafka 一、整合说明 二、写入数据到Kafka 三、从Kafka中读取数据 整合说明 Storm 官方对 Kafka 的整合分为两个版本,官方说明文档分别如下: Storm Kafka Integration : 主要是针对 0.8.x 版本的 Kafka 提供整合支持; Storm Kafka Integration (0.10.x+) : 包含 Kafka 新版本的 consumer API,主要对 Kafka 0.10.x + 提供整合支持。 这里我服务端安装的 Kafka 版本为 2.2.0(Released Mar 22, 2019) ,按照官方 0.10.x+ 的整合文档进行整合,不适用于 0.8.x 版本的 Kafka。

2023-03-12

StormStorm集成Kafka 从Kafka中读取数据

Storm集成Kafka 一、整合说明 二、写入数据到Kafka 三、从Kafka中读取数据 从Kafka中读取数据 Storm从Kafka集群读取数据处理

2023-03-12

LinuxLinux部署kafka集群

【Linux】Linux部署kafka集群 包含:kafka,zookeeper,jdk压缩包

2023-03-01

基于Storm本地集群搭建实时统计CallLog实现可运行

基于Storm实时统计CallLog实现【可运行】 使用Maven创建项目,引入Storm依赖,编写Storm组件,调试运行 本地集群搭建

2023-02-25

Storm本地模式WordCount亲测可用

Storm本地模式【亲测可用】基于Java版本的Storm WordCount

2023-02-25

老男孩大数据storm视频

老男孩大数据storm视频

2023-02-25

springboot整合kafka

springboot整合kafka

2023-02-25

MyBatisPlus基础使用代码

MyBatisPlus基础使用代码

2023-02-25

Docker部署SpringBoot+Vue前后端分离项目

前后端项目和配置文件

2023-02-14

腾讯云服务器基于Docker容器发布SpringBoot项目

bbs资源和配置文件

2023-02-14

SpringCloudAlibaba七Canal广告微服务

# 背景 电商首页的内容也是需要做高并发的处理,Canal就可以很好的解决这个问题,下面我们实现Canal广告微服务,并进行高并发的测试

2022-10-23

SpringCloudAlibaba六微服务架构下的秒杀案例

背景 分布式微服务中的秒杀是怎么实现的呢?接着看下去吧 我们实现一个秒杀微服务,流程逻辑如下

2022-10-23

SpringCloudAlibaba四Nacos Config 多环境切换与公共配置

# 背景前面我们整合了Nacos Config,并验证了动态配置刷新的效果了,现在我们来进一步学习一下Nacos Config的多环境配置和通用环境配置相关的内容## 环境Windows10JDK1.8IDEA2021Maven2.6## 下载安装Nacos

2022-10-21

SpringCloudAlibaba五整合Sentinel

背景 Sentinel作为SpringCloudAlibaba服务监控的重要组件,在微服务开发中经常使用到,下面我们就来了解一下如何在SpringBoot中整合Sentinel以及Sentinel的基础用法

2022-10-21

SpringCloudAlibaba二整合Nacos

# 背景下面来看看,分布式服务怎么整合Nacos## 下载安装Nacos## 创建父模块 IDEA中新建一个Maven项目,起好名字,选好项目存放路径,作为父模块

2022-10-19

SpringCloudAlibaba一入门案例

订单流程说明:用户下单后,需要减库存和更新购物车,所以会需要用户,商品,库存,购物车服务## 环境> Windows10 > JDK1.8 > Maven3.6.0 > IDEA2021.2 > SpringBoot2.7.4

2022-10-19

毕业设计 高校排课系统 源码+数据库SQL脚本

需求分析 一般情况下,需求分析在整个软件开发过程中占的比例大约在70%左右,而代码编写则只占了30%左右,由此可见在开发项目之前,需求分析是十分重要且复杂的工作。对于高校排课系统,我们主要是要理清系统实体间的关系,排课业务的需求等。 1 排课需求分析 1.1 排课流程 对于普通高校的排序业务流程大致如下: 1.学期前安排并确定各个专业和班级 2.管理员为每个班级根据学校资源进行排课 3.排课结果公示 4.学期按照课表进行授课 系统设计的关键在于如何分配教学资源,做到合理科学。特别是多条件下课表的安排以及学生,教室,教师等资源的调度是本系统设计的重点。 文章地址 https://blog.csdn.net/weixin_41405524/article/details/124810080 代码附带SQL文件

2022-07-08

毕业设计 图书管理系统 源码+数据库SQL脚本

# 图书管理系统 ## 环境 开发环境:jdk1.8 开发工具:Idea 2020 后端技术:springboot,mybatis 前端技术:thymeleaf,semanticui,html,js,ajax 数据库:mysql 工具:md5,junit 主要功能:登录注册,权限,图书管理,人员管理,搜索,书籍详情,借阅归还,个人信息 文章地址 https://blog.csdn.net/weixin_41405524/article/details/113949123?spm=1001.2014.3001.5501

2022-07-08

Organic水果蔬菜商城

准备资料: 前端静态页面图片等 1.根据前端页面进行数据库分析设计 1.1设计实体类及其属性 1.2设计实体类间关系 2.搭建SSM开发环境 2.1导包 (包括springIOC,springAOP,springMVC,Mybatis,Junit等) 2.2spring配置文件 (包括Mybatis数据库配置,连接池技术,springMVC,springIOC等) 2.3项目包结构设计 3.项目具体业务代码设计 3.1Controller层(利用springMVC技术进行参数传递和任务处理转发) 3.2Service层(对于增删改进行事务处理) 3.3Dao层(包括MyBatis映射文件)

2020-10-26

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除