springboot

创建springboot    

作用:

这个maven项目; 并且和spring框架进行无缝衔接(与spring框架进行连接直接使用)

 

 

在项目上new ---->moudle--->选择spring initializr---->nextgroupid(入下图进行配置修改) ;       

如果出现报错先点击刷新;如果还不行在点击maven 在点击clean  然后在install即可

springbootspringboot

 

此处只需勾选即可下载jar包且 会自动在pom.xml文件中写坐标代码;

 springboot

 

社区办使用springboot中没有spring initalizr; 那么需要先下载spring assistant在点击insatll

 

 

使用springboot的常见问题:8080端口冲突

Tomcat服务不会自动关闭,需要手动关闭,如不关闭,下次启动就会报下面错误:

port 8080 was already in use. 端口8080已经被占用。关闭服务,重新启动即可。

springboot

1),可能是因为电脑里安装过Oracle数据库:

 

第一步

springboot

 

第二步

springboot

 

 

第三步

springboot

 

第四步

springboot

 

 

第五步:先点击停止

springboot

第六步:在点击属性

 

springboot

 

第七步

 

springboot

 

即可关闭Oracle

 

如果还没有解决:使用dos命令进行查询看一下哪个程序没有关闭

C:\Users\lpx>netstat –ano  --查看所有端口号,找到8080端口对应的PID号
C:\Users\lpx>taskkill -pid 688 –f --杀死688进程号 

–2springboot的用法
–1,创建SpringBoot工程:File-New-Project-选择Spring Init…-next-输入groupId、项目id、选成jdk8-next-选择SpringWeb-ok
–2,配置Maven:File-Settings-选择Build…-Maven-修改三处(解压的位置、settings.xml位置-本地仓库位置)-ok
–3,找到自动生成的一个类,直接运行 ( 启动服务器 )

浏览器如何访问后台资源

先创建启动类;器主要的目的可就是启动服务器

package cn.tedu.springboot01;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
//这是springboot自动写的代码
@SpringBootApplication  //
public class Springboot01Application {

    public static void main(String[] args) {
        SpringApplication.run(Springboot01Application.class, args);
    }

}

 

写被访问的内容 : 这时后端的内容就会被访问到(但此时的内容不会再网页中展示,因为此时的方法的反悔值类型为void(空))要想中安网页中有内容. 那么此时 ;方法的返回值类型不能为空,且使用return进行返回;

package cn.tedu.springboot01;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController//这个类可以被浏览器 访问返回的值json串

public class HelloBoot {
    @RequestMapping("hi")//这个方法被访问

    public void hi(){
        System.out.println("嗨  springboot~~~~~   访问成功");
    }
}

 

 

springmvc的作用: 向浏览器法来的请求,给相应浏览器发来的请求

 

springmvc的工作原理

springboot

 

具体的实现过程

客户端发送请求-> 前端控制器 DispatcherServlet 接受客户端请求 -> 找到处理器映射 HandlerMapping 解析请求对应的 Handler-> HandlerAdapter 会根据 Handler 来调用真正的处理器开处理请求,并处理相应的业务逻辑 -> 处理器返回一个模型视图 ModelAndView -> 视图解析器进行解析 -> 返回一个视图对象->前端控制器 DispatcherServlet 渲染数据(Moder)->将得到视图对象返回给用户.
 

helloboot的案例的 实现具体的代码在上面的代码块中

–前端控制器DispatcherServlet:: 把请求进行分发,找到对应的类里的方法开始干活
–处理器映射器HandlerMapping::根据url来找到对应的类并找到对应的方法
http://localhost:8080/hello/hi 即将访问 HelloBoot类里的 hi()
–处理器适配器HandlerAdaptor::拿到要执行的类名和方法名,开始干活
–视图解析器ViewResolver::解析要在浏览器上展示的数据
–视图渲染:::真正的把数据在浏览器上展示
 

mvc模型中的M层

package cn.tedu;
//相当于mvc模型中的m层 用来封装数据
public class Car {
              private int id;
              private String name;
              private String type;
              private  String color;
              private int price ;
 /*get/set方法因为使用private进行封装  所以属性只能在本来中进行调用,
 想要在其他的类里面进行调用就要使用get/set方法*/
    public int getId() { return id; }

    public void setId(int id) { this.id = id; }

    public String getName() { return name; }

    public void setName(String name) { this.name = name; }

    public String getType() { return type; }

    public void setType(String type) { this.type = type; }

    public String getColor() { return color; }

    public void setColor(String color) { this.color = color; }

    public int getPrice() { return price; }

    public void setPrice(int price) { this.price = price; }
//重写tostring方法,目的:一个类默认继承object 所以想要查看父类里的具体的值就要使用tostring方法
    @Override
    public String toString() {
        return "Car{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", type='" + type + '\'' +
                ", color='" + color + '\'' +
                ", price=" + price +
                '}';
    }
}

mvc模型中的c层  : 想要返回数据就要数据就要使用return

package cn.tedu;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.sound.midi.Soundbank;

//接受请求+做出相应(并把数据返回变成json串)
要想在网页中返回数据就要使用return
@RestController
@RequestMapping("car")//跟url进行匹配
public class Controller {
    //此时数据不会返回给页面 , 在打印台进行输出数据
    @RequestMapping("get")
    public void get(){
        System.out.println("成功");
    }
    //将数据返回页面
    @RequestMapping("put")
    public String put(){
        return "德生科技和";
    }
    @RequestMapping("save")
  public  Car save(){
        Car car=new Car();
        car.setColor("和代课教师");
        car.setName("几点睡");
          car.setPrice(231);
          car.setType("哈市");
          car.setId(456);
        return car;
  }

}

 

上一篇:HTML中显示特殊字符,如尖括号 “<”,">"等等


下一篇:APP测试—性能测试