zoukankan      html  css  js  c++  java
  • spring boot web项目搭建

      上官网选择需要加载的jar包:

      Rest Repositories :用于restful项目。

      mySQL : 连接mysql数据库的驱动。

      mybatis:使用mybatis框架。

      DevTools:热部署jar包(也可以在maven文件中引用)

      org.springframework.boot

      spring-boot-devtools

      true

      下载下来就是一个maven项目,使用开发工具打开此maven项目

      二:GET请求

      关键字:GerMapping

      GerMapping的一些用法:

      GerMapping(/index):在/index链接下访问此方法。

      GerMapping(/{id})

      public XXX getXXX(@PathVariable int id){}

      :在访问链接由传入的参数ID产生。

      获取get请求中的参数:

      @GetMapping("/getobj")

      public Object getObjByParam(@RequestParam("name") String name,@RequestParam("sex")String sex,@RequestParam("name")int age){

      String str = "test = " + age+" name = "+name +" sex = "+sex;

      logger.info(str);

      return age;

      }

      显然给代码维护和阅读带来不便,可以通过构造一个对象来简化参数的接收方式如下:

      @GetMapping("/getobj")

      public Object getObj(Test test){

      logger.info("test = " + test);

      return test;

      }

      三:POST请求

      关键字:postMapping

      postMapping可以通过对象接收参数

      @PostMapping("/getobj")

      public Object getObj(Test test){

      logger.info("test = " + test);

      return test;

      }

      四:上传文件:

      上传文件肯定用的是POST格式

      @PostMapping(value="/{id}/photos",consumes=MediaType.MULTIPART_FORM_DATA_VALUE)

      public void addPhoto(@PathVariable int id, @RequestParam("photo") MultipartFile imgFile) throws Exception{

      if (log.isTraceEnabled()){

      log.trace("接收到文件"+ id + “收到文件” + imgFile.getOriginalFilename());//.getOriginalFilename()获取文件名称

      }

      //保存文件

      FileOutputStream fos = new FileOutputStream("target/" + imgFile.getOriginalFilename());//定义文件的输出

      IOUtils.copy( imgFile.getInputStream(),fos);

      fos.close();

      }

      五:下载文件

      @GetMapping(value="/{id}/icon",produce=MediaType.IMAGE_JPEG_VALUE)

      public byte[] getIcon(@PathVariable int id) throws Exception{

      String iconFile = 'src/test/resources/icon.jpg';

      InputStream is new FileInputStream(iconFile);

      return IOUtils.toByteArray(is);

      }

      六:spring日志

      spring默认使用的log4j作为日志输出管理工具

      在yml文件中的配置:郑州人流手术费用 http://mobile.120csjlyy.com/

      #配置日志 logging: #配置日志文件路径 level: xatu.zsl: debug #不同目录下的日志可配置不同级别 org.springfromework.web: info org.hibernate: error #采用相对路径方式将日志文件输出到【logmyspringboot.log】 file: logmyspringboot.log

      #配置日志文件路径(绝对路径) path: G:work_spacestudy_spring2study_boot_demolog

      日志级别:trace

      七:集成mybatis

      1.修改pom.xml添加mybatis的jar包(包括相应数据库驱动)

      2.修改application.yml添加数据库连接(各个数据库格式不同)

      mysql(实例):

      spring:

      profiles:

      active: prod

      datasource:

      driver-class-name: com.mysql.jdbc.Driver

      url: jdbc:mysql://127.0.0.1:3306/test

      username: root

      password: root

      MariaDB和Oracle(实例):

      datasources:

      portal:

      datasource:

      url: jdbc:oracle:thin:@172.10.11.5:1521/orcl # jdbc:mariadb://127.0.0.1:3306/demo

      username: demo

      password: demo

      driverClassName: oracle.jdbc.OracleDriver # org.mariadb.jdbc.Driver #

      # 初始化大小,最小,最大

      initialSize: 6

      minIdle: 4

      maxIdle: 15

      maxActive: 22

      # 配置获取连接等待超时的时间

      maxWait: 60000

      # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒

      timeBetweenEvictionRunsMillis: 60000

      # 配置一个连接在池中最小生存的时间,单位是毫秒

      minEvictableIdleTimeMillis: 300000

      validationQuery: select 1 from dual

      testWhileIdle: true

      testOnBorrow: false

      testOnReturn: false

      3.修改启动类,增加@MapperScan("package-of-mapping")

      在application.java中加入@MapperScan("填写mapper路径")例如:

      @SpringBootApplication

      @MapperScan("com.demo.dao")

      public class Application{

      public static void main(String[] args){

      .......................

      }

      }

      4.添加Mybatis Mapping接口等

  • 相关阅读:
    AgularJS中Unknown provider: $routeProvider解决方案
    AngularJS依赖注入
    下面是Webstorm的一些常用快捷键:
    加载多张图片,判断加载完成状态
    JS控制图片显示的大小(图片等比例缩放)
    JS中两个重要的方法 call & apply 学习
    如何用微软雅黑显示自己网页的字体
    Dev-C++的一些使用技巧快捷键
    C C语言中 *.c和*.h文件的区别!
    HTML <!--...--> 注释 、CSS/JS //注释 和 /*.....*/ 注释
  • 原文地址:https://www.cnblogs.com/djw12333/p/12096432.html
Copyright © 2011-2022 走看看