zoukankan      html  css  js  c++  java
  • 建立第一个控制器

     

     

     

     

    public String hello(){
            return "hello word";
        }

     编译一下

     报错了

     前面选择了数据库,但是没有给数据库做相应的配置

    配置一下

     application.properties  上篇说过,这个文件放的是配置信息,类似netcore 的 appsettings.json 或者netframwork 的 webconfig

    比如程序启动端口

    server.port=8080 #端口号设置

    但是查看资料,大部分喜欢采用yml文件格式的,可能是大部分比较喜欢这种风格,下面说下

    1、删除application.properties 文件

    2、新建application.yml文件

    3、新建application-dev.yml   application-prod.yml   为什么要新建这两个,接下来或说到

    文件结构应该是这样的

    修改 application.yml文件内容

    #访问根路径
    spring:
      #应用名称
      application:
        name: demo
      #配置文件类型
      profiles:
        active: dev

    修改application-dev.yml文件内容:

    #访问根路径
    server:
      #访问端口
      port: 9638
      #编码格式
      tomcat:
        uri-encoding: utf-8
    spring:
      #应用名称
      application:
        name: demo
      #数据库配置
      datasource:
        db-type: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://192.168.31.222:3306/weh_ javatestdb?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false
        username: root
        password: jsxh123!@#

    修改application-prod.yml文件内容:

    #访问根路径
    server:
      #访问端口
      port: 9639
      #编码格式
      tomcat:
        uri-encoding: utf-8
    spring:
      #应用名称
      application:
        name: demo
      #数据库配置
      datasource:
        db-type: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://192.168.31.220:3308/scheduling?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false
        username: root
        password: 123456

    application-dev.yml   开发用配置文件

    application-prod.yml   生产环境配置文件

    通过application.yml中的profiles配置来决定现在使用哪个配置文件,这就方便了测试环境和生产环境的配置,发布生产环境只需要修改相应的配置就好

    profiles:
        active: dev

    到这一步,我们再次运行一下,nice,正常启动了

    浏览器访问一下

     我去,报错了,404没找到

    分析下原因:

    1、ip和端口

    ip没问题

    端口 

         

     端口也没问题,那就是路由的问题了,调整下代码:

    原来的:

    public class hellocontroller {
    
        public String hello(){
            return "hello word";
        }
    }

    调整后:

    @RestController
    public class hellocontroller {
    
        @RequestMapping("/hello")
        public String hello(){
            return "hello word";
        }
    }

    再看效果:

     good,出来了!

    解释下上面代码调整的原因:

    @RestController  注解class 或控制器
    @GetMapping         get请求       @RequestMapping(method = RequestMethod.GET)
    @PostMapping post请求 @RequestMapping(method = RequestMethod.POST)
    @PutMapping put请求 @RequestMapping(method = RequestMethod.PUT)
    @PatchMapping patch请求 @RequestMapping(method = RequestMethod.PATCH)
    @DeleteMapping delete请求 @RequestMapping(method = RequestMethod.DELETE)
    @RequestMapping 自适应

    @RequestMapping("/hello") 默认值 value

    @RequestMapping 的参数,可以查看资料看下:

    到这里,第一个控制器就建好了

    
    
    
  • 相关阅读:
    贪婪算法、递归计算、动态规划背包问题
    递归、动态规划计算斐波那契数列
    用于确定两个字符串最长公共子串的函数
    快速排序算法
    顺序、二分查找文本数据
    MyBatis面试题
    Spring面试题
    SpringMvc面试题
    jsp和servlet面试
    EJB的理解
  • 原文地址:https://www.cnblogs.com/fuyujian/p/13158859.html
Copyright © 2011-2022 走看看