-
Spring MVC @ModelAttribute说明
所属栏目:[语言] 日期:2022-07-19 热度:176
本文介绍在 Spring MVC 中非常重要的注解 @ModelAttribute,用来将请求参数绑定到 Model 对象。 以上示例,在请求 /model?name=%E7%BC%96%E7%A8%8B%E5%B8%AE 后,Spring MVC 会先执行 myModel 方法,将 name 的值存入到 Model 中。然后执行 model 方法,这[详细]
-
Spring MVC @Autowired和@Service解释
所属栏目:[语言] 日期:2022-07-19 热度:113
将依赖注入到 Spring MVC 控制器时需要用到 @Autowired 和 @Service 注解。 @Autowired 注解属于 org.springframework.beans.factory. annotation 包,可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。 @Service 注解属于 org.springframe[详细]
-
Spring MVC重定向及转发
所属栏目:[语言] 日期:2022-07-19 热度:61
Spring MVC 请求方式分为转发、重定向 2 种,分别使用 forward 和 redirect 关键字在 controller 层进行处理。 重定向是将用户从当前处理请求定向到另一个视图(例如 JSP)或处理请求,以前的请求(request)中存放的信息全部失效,并进入一个新的 request[详细]
-
Spring MVC传递数据
所属栏目:[语言] 日期:2022-07-19 热度:109
Spring MVC Controller 接收请求参数的方式有很多种,有的适合 get 请求方式,有的适合 post 请求方式,有的两者都适合。主要有以下几种方式: 通过实体 Bean 接收请求参数 通过处理方法的形参接收请求参数 通过 HttpServletRequest 接收请求参数 通过 @Pa[详细]
-
Spring MVC @Controller和@RequestMapping解析
所属栏目:[语言] 日期:2022-07-19 热度:194
Spring 2.5 版本新增了 Spring MVC 注解功能,用于替换传统的基于 XML 的 Spring MVC 配置。 在《第一个Spring MVC应用》一节中创建了两个传统风格的控制器,它们是实现 Controller 接口的类。传统风格的控制器不仅需要在配置文件中部署映射,而且只能编写[详细]
-
Spring MVC实行流程
所属栏目:[语言] 日期:2022-07-19 热度:87
在学习框架之前,首先来了解一下 Spring MVC 框架的整体请求流程和使用到的 API 类。 Spring MVC 涉及到的组件有 DispatcherServlet(前端控制器)、HandlerMapping(处理器映射器)、HandlerAdapter(处理器适配器)、Handler(处理器)、ViewResolver([详细]
-
装饰器模式 装饰设计模式 详解
所属栏目:[语言] 日期:2022-07-19 热度:60
上班族大多都有睡懒觉的习惯,每天早上上班时间都很紧张,于是很多人为了多睡一会,就会用方便的方式解决早餐问题。有些人早餐可能会吃煎饼,煎饼中可以加鸡蛋,也可以加香肠,但是不管怎么加码,都还是一个煎饼。在现实生活中,常常需要对现有产品增加新[详细]
-
适配器模式 Adapter模式 详解
所属栏目:[语言] 日期:2022-07-19 热度:174
在现实生活中,经常出现两个对象因接口不兼容而不能在一起工作的实例,这时需要第三者进行适配。例如,讲中文的人同讲英文的人对话时需要一个翻译,用直流电的笔记本电脑接交流电源时需要一个电源适配器,用计算机访问照相机的 SD 内存卡时需要一个读卡器[详细]
-
桥接模式 Bridge模式 详解
所属栏目:[语言] 日期:2022-07-19 热度:127
在现实生活中,某些类具有两个或多个维度的变化,如图形既可按形状分,又可按颜色分。如何设计类似于 Photoshop 这样的软件,能画不同形状和不同颜色的图形呢?如果用继承方式,m 种形状和 n 种颜色的图形就有 mn 种,不但对应的子类很多,而且扩展困难。[详细]
-
代理模式 代理设计模式 详解
所属栏目:[语言] 日期:2022-07-19 热度:93
在有些情况下,一个客户不能或者不想直接访问另一个对象,这时需要找一个中介帮忙完成某项任务,这个中介就是代理对象。例如,购买火车票不一定要去火车站买,可以通过 12306 网站或者去火车票代售点买。又如找女朋友、找保姆、找工作等都可以通过找中介完[详细]
-
结构型模式概述 结构型模式的分类
所属栏目:[语言] 日期:2022-07-19 热度:54
结构型模式描述如何将类或对象按某种布局组成更大的结构。它分为类结构型模式和对象结构型模式,前者采用继承机制来组织接口和类,后者釆用组合或聚合来组合对象。 由于组合关系或聚合关系比继承关系耦合度低,满足合成复用原则,所以对象结构型模式比类结[详细]
-
创建型模式应用实验
所属栏目:[语言] 日期:2022-07-19 热度:162
创建型模式(Creational Pattern)的主要特点是将对象的创建与使用分离,根据对象的创建与组合方式的不同,创建型模式可分为单例(Singleton)模式、原型(Prototype)模式、工厂方法(Factory Method)模式、抽象工厂(Abstract Factory)模式和建造者(B[详细]
-
建造者模式 Bulider模式 详解
所属栏目:[语言] 日期:2022-07-19 热度:100
在软件开发过程中有时需要创建一个复杂的对象,这个复杂对象通常由多个子部件按一定的步骤组合而成。例如,计算机是由 CPU、主板、内存、硬盘、显卡、机箱、显示器、键盘、鼠标等部件组装而成的,采购员不可能自己去组装计算机,而是将计算机的配置要求告[详细]
-
抽象工厂模式
所属栏目:[语言] 日期:2022-07-19 热度:72
前面介绍的工厂方法模式中考虑的是一类产品的生产,如畜牧场只养动物、电视机厂只生产电视机、计算机软件学院只培养计算机软件专业的学生等。 同种类称为同等级,也就是说:工厂方法模式只考虑生产同等级的产品,但是在现实生活中许多工厂是综合型的工厂,[详细]
-
工厂方法模式 详解版
所属栏目:[语言] 日期:2022-07-19 热度:94
在现实生活中社会分工越来越细,越来越专业化。各种产品有专门的工厂生产,彻底告别了自给自足的小农经济时代,这大大缩短了产品的生产周期,提高了生产效率。同样,在软件开发中能否做到软件对象的生产和使用相分离呢?能否在满足开闭原则的前提下,客户[详细]
-
UE4是什么 虚幻4引擎是啥
所属栏目:[语言] 日期:2022-07-17 热度:196
UE4 的全名是 Unreal Engine 4,中文译为虚幻引擎4。UE4 是一款由 Epic Games 公司开发的开源、商业收费、学习免费的游戏引擎。 从 1998 年发行至今,UE4 一共经历了 UE、UE2、UE2.5、UE3、UDK、UE4 多个版本,它的迭代速度极快,现在已经到了 4.22 预览版[详细]
-
UE4的下载和安置 UE4开发环境的搭建
所属栏目:[语言] 日期:2022-07-17 热度:66
使用 UE4 开发游戏之前,必须先搭建开发环境,具体包括: 1) 首先,打开任意一个浏览器输入 UE4 官方网站的网址 https://www.unrealengine.com/zh-CN/,点击右上角的下载按钮,如下图所示: 2) 官方要求必须登录后才能下载,所以大家需要先创建一个账户。[详细]
-
UE4使用哪种编译器
所属栏目:[语言] 日期:2022-07-17 热度:131
UE4 的底层虽然是用 C++ 实现的,但它又不仅仅是一个 C++ 库,它还实现了自己的编译机制。换句话说,UE4 对现有的 C++ 语法进行了改进,以适应游戏开发的场景。 当然,UE4 也不会疯狂到自己去开发一个 C++ 编译器,它还是需要依赖传统的 C++ 编译器以及相[详细]
-
Linux Qt cannot find -lGL错误完美解决方法
所属栏目:[语言] 日期:2022-07-17 热度:138
对于很多 Linux 发行版本,Qt 安装完成后如果直接编译或者运行项目,会出现cannot find -lGL错误, 这是因为 Qt 找不到 OpenGL 的动态链接库(libGL.so)。在《Linux Qt安装》一节中我们说过,OpenGL 在大部分 Linux 发行版中都是默认安装的,包括 Ubuntu[详细]
-
解密Qt安装目录的构架
所属栏目:[语言] 日期:2022-07-17 热度:190
了解 Qt 安装目录的结构虽然不是编程必须的,但是它能练就我们的内功,让我们对 Qt 的编程环境了如指掌。Windows 和 Linux 下 Qt 安装目录的结构非常相似,我们以 Windows 为例进行讲解,Linux 不再赘述。 不同版本 Qt 的安装目录结构大同小异,本节我们以[详细]
-
知晓一下Qt用到的开发工具
所属栏目:[语言] 日期:2022-07-17 热度:111
Qt 不是凭空产生的,它是基于现有工具链打造而成的,它所使用的编译器、链接器、调试器等都不是自己的,Qt 官方只是开发了上层工具。下面我们分几个部分讲解 Qt 使用到的工具链。 GNU 工具集 在上个世纪八十年代,计算机都是奢侈品,操作系统里最著名的是[详细]
-
Qt编程涉及的术语与名词
所属栏目:[语言] 日期:2022-07-17 热度:80
本节我们来介绍一下使用 Qt 编程过程中常用的术语和名字,它们不一定专属于 Qt,在其它的 C/C++ 开发过程中也会使用到。 Project Project 的中文翻译是项目或者工程,这里的项目是指为实现某个相对独立功能的程序代码合集,这些代码不单单是放在一块,而是[详细]
-
Qt Creator的初步利用
所属栏目:[语言] 日期:2022-07-17 热度:93
启动 Qt Creator, Qt Creator 的界面很简洁。上方是主菜单栏,左侧是主工具栏,窗口的中间部分是工作区。根据设计内容不同,工作区会显示不同的内容。 图 1 是在左侧主工具栏单击Welcome(欢迎)按钮后显示实例的界面。这时工作区的左侧有 Projects、Exam[详细]
-
编辑第一个Qt程序
所属栏目:[语言] 日期:2022-07-17 热度:110
学习一种编程语言或编程环境,通常会先编写一个Hello World程序。我们也用 Qt Creator 编写一个Hello World程序,以初步了解 Qt Creator 设计应用程序的基本过程,对使用 Qt Creator 编写 Qt C++ 应用程序建立初步的了解。 新建一个项目 单击 Qt Creator[详细]
-
解析第一个Qt程序
所属栏目:[语言] 日期:2022-07-17 热度:116
前面章节中,通过在 xxx.ui 文件中拖拽 Label 组件,设计出了一个显示 Hello,World! 的窗口 本节我们完全舍弃 xxx.ui 文件,亲手编写代码实现界面。 创建项目 首先,打开 Qt Creator 并创建一个 Qt Widgets Application 项目,创建过程可以参考 《编写第一[详细]