# 作业1
## HTTP请求包的结构包括哪些部分?请简介每部分所包含内容。
一个完整的HTTP请求包通常包含三部分:
- 请求行:包含请求方法Method、请求的URL和HTTP版本。
- 请求头:包含一系列键值对,提供了关于请求的额外信息,如客户端类型、接受的内容类型等。
- 请求体:请求体并不是所有HTTP请求都有的部分;主要用于包含要发送给服务器的数据,如表单数据、上传的文件内容等
## 实现一个计数器页面
使用html和js实现一个计数器,要求:
- 计数器的初始值为0,每次点击页面上的按钮时,计数器的值增加1。
- 在页面上显示计数器的值。
- 使用JavaScript实现按钮点击事件监听器。
```html
计数器
计数器: 0
```
# 作业2
## 什么是MVC设计模式?请简要说明其主要组成部分及其作用。
MVC(Model-View-Controller)设计模式是一种软件架构模式,用于将应用程序的逻辑、数据和用户界面分离,以提高代码的可维护性和可扩展性。
- 模型(Model):负责管理应用程序的数据和业务逻辑。
- 视图(View):负责显示数据,即用户界面。
- 控制器(Controller):负责处理用户输入,协调模型和视图之间的交互。
## 控制器类
现有RESTFul接口需求如下:
- 获取指定用户的信息: GET /api/users/{id}
- 新建用户: POST /api/users
完成对应的控制器类UserController.
```java
// 注解Restcontroller表明这个类是控制器类
@RestController
// 注解RequestMapping可设置父路径
@RequestMapping("/api/users")
public class UserController {
// GetMapping注解表示此方法对应的是Get请求. {id}表示从路径中获取用户id
@GetMapping("{id}")
public User getUser(@PathVariable Long id) {
// 根据用户ID获取用户信息的逻辑
}
//@PutMapping 注解表示对应Post请求
@PostMapping
public User create( @RequestBody User user) {
// 创建新用户的逻辑
}
}
```
# 作业 3
1、简要描述软件架构设计中的典型层次架构,并解释每一层的主要职责。
典型的层次架构包括四个主要层次:表现层、业务层、持久层和数据库层。这种分层架构有助于清晰地划分职责,提高代码的可读性和可维护性。
表现层: 是应用程序的前端部分,包含展示、处理HTTP请求等功能。
业务层: 包含所有的业务逻辑。
持久层:包含所有的数据库存储逻辑。
数据库层:包含所有类型的数据库。
2、简要描述JDBC
JDBC (Java Database Connectivity) 是Java中用于连接和操作关系型数据库的标准API。
JDBC允许Java应用程序与各种关系型数据库进行交互,包括执行SQL语句、处理查询结果等。
JDBC提供了一个统一的接口,使得开发者可以使用相同的API来操作不同的数
# 作业4
## 什么是ORM?ORM框架的主要目的是什么?
ORM (对象关系映射,Object-Relational Mapping) 是一种编程技术,用于将对象模型映射到关系型数据库模型。
ORM框架的主要目的是简化数据库操作,提高开发效率。
## 实现JPA实体类User
```java
// 使用注解Entity声明User类是一个实体类
@Entity
public class User{
// id是主键,需要添加注解id
@id
// 主键自增
@GeneratedValue(strategy = GenerationType.IDENTITY)
Long id;
//用户名,在数据库表中对应的字段名user_name,需要使用注解Column
@Column(name = "user_name")
String name;
// 密码
String password;
// 年龄
Integer age;
}
```
## 实现实体类User的数据库接口UserRepository
接口需求:
- 提供根据用户名查找用户的接口。
- 提供查找年龄大于指定年龄的用户的接口。
```java
public interface UserRepository extends JpaRepository {
// 根据用户名查找用户
User findByName(String name);
// 查找大于指定年龄的用户
List findByAgeGreaterThan(Integer age);
}
```