Springbootweb快速开发

1.简单的Springbootweb程序入门

1.创建工程,填写模块信息,勾选web开发

2.定义一个请求处理类

controller包下定义一个请求处理类,请求处理路径是/hello

当输入/hello请求路径时,执行hello方法,服务端会返回hello给浏览器

3. 选择主函数下启动类,启动Springboot工程

 4.效果展示

浏览器输入路径/hello时,服务器执行hello方法并返回hello给浏览器

 

2.请求参数的接收

1.原始web程序
原始web获取请求参数

需要创建HttpServletRequest对象,调用getParmeter接收,

并且如果参数不是int,需要进行类型转化

HttpServletRequest

 公共接口类HttpServletRequest继承自ServletRequest。客户端浏览器发出的请求被封装成为一个HttpServletRequest对象。对象包含了客户端请求信息包括请求的地址,请求的参数,提交的数据,上传的文件客户端的ip甚至客户端操作系统都包含在其内。HttpServletResponse继承了ServletResponse接口,并提供了与Http协议有关的方法  

HttpServletresponse

HttpServletResponse继承了ServletResponse。专门为基于HTTP协议的HTTPServlet 封装、提供响应信息,是响应的抽象。

2.sprintboot方式 直接定义形参接收

3.不同请求参数的接收

 

//参数为简单参数 请求参数名和变量名相同
    public int simpleParm(int id) {

        System.out.println(id);
        return id;
    }

    //参数为简单参数 请求参数名和变量名不同
    @RequestMapping("/simpleDifParam")

    public int simpleDifParm(@RequestParam(name = "id", required = false) int Stuid) {
//@RequestParam(name = " 请求参数名")  Stuid是接收参数名
        System.out.println(Stuid);
        return Stuid;
    }

    @RequestMapping("/simplePolo")
    //参数为实体对象,定义一个类,封装对象
    //传入的请求参数会自动填入形参的user对象属性里面去
    //比如user对象有2个属性,name和age 传入请求参数name="小明" age=20,会自动给Uesr对象属性赋值
    public String simplePolo(User user) {

        System.out.println(user);
        return "ok";
    }

    @RequestMapping("/arrayParam")
    //请求参数名相同,数组接收
    public String arrayParam(String[] task) {

        System.out.println(Arrays.toString(task));
        return "ok";
    }

    @RequestMapping("/listParam")
    // 请求参数名相同,集合接收加入注解@RequestParam
    // http://localhost:8080/listParam?task=java&task=web&task=mysql
    public String listParam(@RequestParam List<String> task) {
//RequestParam
        for (int i = 0; i < task.size(); i++) {
            System.out.println(task.get(i));
        }
        return "ok";
    }
    //参数是日期类型
    //需要使用@DateTimeFormat注解
    @RequestMapping("/dateParam")

    public String dateParam(@DateTimeFormat(pattern = "yyyy-MM-dd")LocalDateTime time) {
        System.out.println(time);
        return "ok";
    }
    @RequestMapping("/jsonParam")
    //请求参数是json格式时,使用注解@RequestBody,形参定义一个对象,json的key对应对象的属性
    public String jsonParam(@RequestBody User user) {
        System.out.println(user);
        return "ok";
    }

 需要注意参数是实体对象和json时形参都是对象接收,但json格式需要使用注解@RequestBody

4.响应数据

1.ResponseBody

ResponseBody把当前类下面的所有方法返回值返回,如果是实体对象或者集合,以json格式返回

我们定义Controller类时,上面添加的注解@RestController就是隐含Responsebody

@RestController=@Controller+@Responsebody

2.设置统一响应数据的格式

如果返回数据格式不一致,有的是字符串,有的是json格式,就会难以管理,需要按照统一格式返回,便于管理

定义使用Result类返回固定格式代码

Result除了设置属性还要有一些方法

5.统一响应数据格式案例

小项目

自动获取员工数据,以统一格式响应数据,在页面展示

1..导入Emp实体类 导入Emp.xml文件

Emp实体类就是员工类,有员工对应的属性已经构造方法,getset方法

Emp.xml文件提供员工具体数据

2.导入解析XML文件的工具类

工具类内部parse方法把文件(xml)中的数据解析 返回到对应类型的list集合中中

3.导入前端资源

放入static目录下

Springboot项目静态资源(html css js等前端资源)

默认存放目录是clsaapath:/static classpath:/public classpath:/resources

使用Springboot官方项目结构自动创建的resource的static

java目录下存放java

Resource目录存放其他类型的文件

4.编写empcontroller程序

作用:处理请求,响应数据

package com.itheima.controller;

import com.itheima.popo.Emp;
import com.itheima.popo.Result;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import until.XmlParserUtils;

import java.util.List;

@RestController
public class EmpController {
    @RequestMapping("/listEmp")
    public Result list() {
        //1.加载解析emp.xml
        String file = getClass().getClassLoader().getResource("emp.xml").getFile();
        List<Emp> emplist = XmlParserUtils.parse(file, Emp.class);
        //XmlParserUtils工具解析文件封装到Emp集合emplist中
        //2.对数据进行转化处理
        //比如把编号转为具体性别
        emplist.stream().forEach(emp -> {
            String gender = emp.getGender();
            if ("1".equals(gender)) {
                emp.setGender("男");
            } else if (
                    "2".equals(gender)
            ) {
                emp.setGender("女");
            }

            String job = emp.getJob();
            if ("1".equals(job)) {
                emp.setJob("班长");
            } else if ("2".equals(job)) {
                emp.setJob("支书");
            } else if ("3".equals(job)) {
                emp.setJob("生活委员");
            }
        });
        //3.响应数据  以Result固定的格式类返回
        return Result.success(emplist);
    }
}

5.结果展示

  • 25
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
Spring Boot 是一个快速构建基于 Spring 框架的应用程序的工具。它为 Spring 应用程序开发提供了一种简单的方法,无需繁琐地配置 XML,只需要使用注解即可实现常见的业务逻辑。 下面是一个基本的 Spring Boot Web 应用程序的步骤: 1. 创建一个 Maven 项目,并添加 Spring Boot 的依赖。 2. 创建一个 Controller 类,并添加处理请求的方法。 3. 配置应用程序的入口点,并启动应用程序。 以下是一个简单的示例: 1. 创建 Maven 项目 使用 Maven 创建一个新的项目,可以参考以下命令: ``` mvn archetype:generate -DgroupId=com.example -DartifactId=webapp -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false ``` 2. 添加 Spring Boot 依赖 在 pom.xml 文件中添加 Spring Boot Starter Web 依赖: ``` <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> ``` 3. 创建 Controller 类 创建一个 HomeController 类,并添加处理请求的方法: ``` @RestController public class HomeController { @GetMapping("/") public String home() { return "Hello, World!"; } } ``` 4. 配置应用程序的入口点 创建一个 SpringBootWebApplication 类,并使用 @SpringBootApplication 注解标记为应用程序的入口点: ``` @SpringBootApplication public class SpringBootWebApplication { public static void main(String[] args) { SpringApplication.run(SpringBootWebApplication.class, args); } } ``` 5. 启动应用程序 使用以下命令启动应用程序: ``` mvn spring-boot:run ``` 在浏览器中访问 http://localhost:8080/ ,即可看到 "Hello, World!"。 这就是一个简单的 Spring Boot Web 应用程序的开发过程。当然,除了以上步骤,还有很多其他的配置和实现方式,具体可以参考官方文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

山河清风悠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值