为了账号安全,请及时绑定邮箱和手机立即绑定

Spring Boot 2.0基础篇01

标签:
SpringBoot

2018-07-05

优效学院基于微服务的秒杀项目实战

Spring Boot 2.0基础篇01


[if !supportLists]1. [endif]介绍


主要解决的是在微服务的架构下简化配置(有快速配置)、前后端分离、快速开发

优点:

提供了快速启动入门

开箱即用、提供默认配置

内嵌容器化web项目

没有冗余代码生成和xml配置要求

2.运行Demo

访问http://start.spring.io/ 

生成下载demo.zip

Maven本地源配置

  

   

        nexus-aliyun

        *

        Nexus aliyun

        http://maven.aliyun.com/nexus/content/groups/public



Pom.xml

必须要继承的parnet


Pom.xml第一行报错


进入本地库

for /r %i in (*.lastUpdated) do del %i   

然后update

缺少或包错误


删掉重新update

找不到主类


所有错误都解决后

Jar方式运行 首先得有这个jar包

先clean package生成jar文件,然后再run main方法


找不到jdk



把jre的路径换成jdk的


启动后自动停止


sts

下载http://spring.io/tools

或者在eclipse上自己安装插件 spring tools

简单使用

修改banner

在resources目录下新建banner.txt

http://www.network-science.de/ascii/英文

https://www.degraeve.com/img2txt.php图片

application.properties

把所有的配置全放在这个文件里,方便统一管理,maven也可以做到

修改tomcat端口

server.port=90

修改项目路径

server.servlet.context-path=/demo 



多个入口main方法,打包之后找不到入库类


   

        

          org.springframework.boot  

          spring-boot-maven-plugin  

                  

                    com.yxxy.MyApp  




在Spring Boot中多个模块使用对应的配置文件

https://blog.csdn.net/cw_hello1/article/details/79639448


HelloWorld

RestController

RestController = @Controller+@ResponseBody


一个效果


@RestController


public class MyAppController {


@RequestMapping("/")

public Map  index() {

Map map = new HashMap<>();

map.put("aaa", "bbb");

map.put("aaa", "bbb");

map.put("aaa", "bbb");

map.put("aaa", "bbb");

return map;

}


使用thymeleaf模板引擎

Pom.xml引用

org.springframework.boot

spring-boot-starter-thymeleaf

Controller代码

@Controller

public class IndexController {


@RequestMapping("/")

public String index(ModelMap map) {


//加入一个属性,用来在模板中读取

map.addAttribute("msg", "nihao~");

return模板文件的名称,对应src/main/resources/templates/index.html


return "index";

}

模板文件代码


hi!



稍微复杂的restful api应用

UserRestfulController

@RequestMapping("/")

@RestController

public class UserRestfulController {


static Map users = Collections.synchronizedMap(new HashMap());

@RequestMapping(value="/User",method=RequestMethod.GET)

public List getUserList(){

ArrayList list = new ArrayList<>(users.values());

return  list;

}

@RequestMapping(value="User",method=RequestMethod.POST)

public String addUser(@ModelAttribute User user) {

users.put(user.getId(), user);

return "addUser Success";

}

}

User

public class User {


private Long id;

private String loginName;

private String password;

private String nickName;

注入Service

UserRestfulController


@Autowired

private UserService userSrv;

@RequestMapping(value="/User",method=RequestMethod.GET)

public List getUserList(){


return  userSrv.getUserList();

}

@RequestMapping(value="User",method=RequestMethod.POST)

public String addUser(@ModelAttribute User user) {

String msg = userSrv.addUser(user);

return msg;

}

UserService

@Service

public class UserService {

static Map users = Collections.synchronizedMap(new HashMap());


public List getUserList() {

ArrayList list = new ArrayList<>(users.values());

return list;

}


public String addUser(User user) {

users.put(user.getId(), user);

return "addUser Success";

}

}

前端模板显示

  

User list



  


      NAME

      loginName

      nickName


    "user : ${list}">

      "${user.id}">id

      "${user.loginName}">loginName

      "${user.nickName}">nickName




  

    "../home.html" th:href="@{/}">Return to home

  



Yr���s�)fQ������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

             




作者:A尚学堂Nancy老师
链接:https://www.jianshu.com/p/6a8668199830


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

举报

0/150
提交
取消