背景吐槽:想要让自己进阶一下,一定要有个可以拿出来秀的东西,所以要尝试写一个属于自己的网站或者平台。因此,我大概的看了一下springboot+Mybatis-plus+...

框架介绍

通常 SSM(Spring+SpringMVC+MyBatis)框架集由Spring、SpringMVC、MyBatis三个开源框架整合而成,常作为数据源较简单的web项目的框架。

Spring     是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。(通俗解释:底层框架)
SpringMVC  分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。(通俗解释:使前后端分离的底层框架的优化与进阶),SSM框架的核心
MyBatis     是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。(通俗的解释:自动生成代码的工具)
 
而SpringBoot 推荐零配置,更符合我这种不喜欢xml配置的人~,而且用起来十分便捷。
 
MyBatis-plus  扩展
图示:
框架构成-1:核心及运行代码
common:一些工具类和基础应用类
model:M-jopo类,各种参数的getter、setter、toString、有参/无参构造器;
controller:C-前端控制器-用来控制输出webView,以@Controller和@RequestMapping(“/”)为开头使用
dao:BaseMapper的接口M,用来调用数据(写sql)
service:服务逻辑层,用来书写和实现Mapper接口;
框架配置-2:参数配置
 
prublic.error:存储一些报错的静态页面配置,以html文件为主
sqlscript:用来存放sql脚本
static:通常用来存放静态页面,图片以及css样板
templates:动态页面的存储
application文件:用来配置各种环境的
关于Banner.txt的作用,可以用来修改运行主程序时显示的banner样式,在 Banner生成站 中生成即可

框架学习,随笔记录

1 Application运行类编写:

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

2 Controller类的编写:

@Controller
public class UserController {

  @Get
Mapping("/test")
  @ResponseBody
  public String test(){
    return “hello springboot”
  }
}

3 Entity类(model/Pojo)编写:

@Component
public class user(){
private String name;
private Integer age; //getter/setter/tostring
}

4 配置文件,SpringBoot允许使用properties文件,yaml文件,和命令参数作为外部配置,

  4.1 常规配置-命名默认application.yml (属性和参数间有空格)
server:
port: 8081
user:
 name: 瓦尔克莉
 age: 22

以上配置,可以在Entity/model的类中添加注解来获取如:

@ConfigurationProperties(prefix = "user")
@Component
public class User { private String name;
private Integer age; }

然后修改controller类来实体化这个类并获取数据

@Controller
public class UserController {
@Autowired  // 实体化
private User user;   @GetMapping("/test") //通过ip:port/test访问该信息
  @ResponseBody
  public String test(){
    return “我叫”+user.getName()+"今年"+user.getAge()+“岁”
  }
}

运行结果  :

  4.2 命令行运行,springboot基于jar运行,若需要修改运行接口,如下:
java -jar XXX.jar --server.port=9090
  4.3 使用xml配置,虽然不太喜欢用,但是有些时候还是要的
@ImportResource({"classpath:some-content.xml","classpath:another-content.xml"})
  4.4  日志配置,SpringBoot支持java Util Logging,Log4j,Log4j2和Logback等作为日志框架,且默认使用Logback(我觉得默认的就OK)
# 日志输出路径
logging.path=output/logs/
# 日志输出级别 logging.level.包名=xx
logging.level.xx=debug

Springboot日记——核心编码篇的更多相关文章

  1. SpringBoot日记——Web开发篇

    准备开始实战啦!~~~~ 我们先来看,SpringBoot的web是如何做web开发的呢?通常的步骤如下: 1.创建springboot应用,指定模块: 2.配置部分参数配置: 3.编写业务代码: 为 ...

  2. SpringBoot日记——日志框架篇

    在项目的开发中,日志是必不可少的一个记录事件的组件,所以也会相应的在项目中实现和构建我们所需要的日志框架. 而市面上常见的日志框架有很多,比如:JCL.SLF4J.Jboss-logging.jUL. ...

  3. SpringBoot日记——Cache缓存篇

    通常我们访问数据的情况如下图,数据存缓存就取缓存,不存缓存就取数据库,这样可以提升效率,不用一直读取数据库的信息: 开始记录: 关于SpringBoot缓存的应用 1. 首先在pom.xml文件中添加 ...

  4. 源码学习系列之SpringBoot自动配置(篇二)

    源码学习系列之SpringBoot自动配置(篇二)之HttpEncodingAutoConfiguration 源码分析 继上一篇博客源码学习系列之SpringBoot自动配置(篇一)之后,本博客继续 ...

  5. SpringBoot系列教程web篇之自定义异常处理HandlerExceptionResolver

    关于Web应用的全局异常处理,上一篇介绍了ControllerAdvice结合@ExceptionHandler的方式来实现web应用的全局异常管理: 本篇博文则带来另外一种并不常见的使用方式,通过实 ...

  6. springboot中的编码设置

    在springboot中编码配置可以通过filter也可以通过springboot的核心配置文件application.properties中配置如下信息: #配置字符编码spring.http.en ...

  7. Zend Framework学习日记(2)--HelloWorld篇(转)

    Zend Framework学习日记(2)--HelloWorld篇 这一篇主要演示如何用zf命令行工具建立一个基于Zend Framework框架的工程,也是我初学Zend Framework的小练 ...

  8. SpringBoot学习(五)-->SpringBoot的核心

    SpringBoot的核心 1.入口类和@SpringBootApplication Spring Boot的项目一般都会有*Application的入口类,入口类中会有main方法,这是一个标准的J ...

  9. SpringBootTest单元测试实战、SpringBoot测试进阶高级篇之MockMvc讲解

    1.@SpringBootTest单元测试实战 简介:讲解SpringBoot的单元测试 1.引入相关依赖 <!--springboot程序测试依赖,如果是自动创建项目默认添加--> &l ...

随机推荐

  1. springmvc 拦截器的使用小结

    /** * * * * 拦截器的作用: * 每个请求到达Controller之前,或者每个响应到达view之前,都可以进行拦截. * 1.全局日志(谁提交了请求,要做什么事) * 2.权限管理(每个请 ...

  2. 映射函数map

    映射函数map 语法: map(function, iterable) 迭代对象中 的每一个元素进行映射, 分别执行function函数 例子:  ls =[1,2,3,4,5,6] def func ...

  3. Session攻击

    1.简介 Session对于Web应用无疑是最重要的,也是最复杂的.对于web应用程序来说,加强安全性的第一条原则就是 – 不要信任来自客户端的数据,一定要进行数据验证以及过滤,才能在程序中使用,进而 ...

  4. 我的Java之旅——答答租车系统的改进

    之前的答答租车系统虽然可以实现项目的要求,但是没有用Java面向对象,今天用面向对象的三大特性封装.继承和多态来改进原来的代码.题目和之前的代码参考上篇博客,这里不再述说. 改进后的代码: Vehic ...

  5. 获取URL网页信息

    static string GetHtml(string url) {string strHTML = ""; WebClient myWebClient = new WebCli ...

  6. 前端面试总结——http、html和浏览器篇

    1.http和https https的SSL加密是在传输层实现的. (1)http和https的基本概念 http: 超文本传输协议,是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和 ...

  7. Java虚拟机18:Java对象大小、对象内存布局及锁状态变化

    一个对象占多少字节? 关于对象的大小,对于C/C++来说,都是有sizeof函数可以直接获取的,但是Java似乎没有这样的方法.不过还好,在JDK1.5之后引入了Instrumentation类,这个 ...

  8. 1217. [HNOI2003]消防局的设立【贪心】

    Description 2020年,人类在火星上建立了一个庞大的基地群,总共有n个基地.起初为了节约材料,人类只修建了n-1条道路来 连接这些基地,并且每两个基地都能够通过道路到达,所以所有的基地形成 ...

  9. 【转】 Class.forName()用法及与new区别 详解

    平时开发中我们经常会发现:用到Class.forName()方法.为什么要用呢? 下面分析一下: 主要功能Class.forName(xxx.xx.xx)返回的是一个类Class.forName(xx ...

  10. 2018年1月12日--微信小程序----出错报告(40kb的原因)---并解决方法

    一. 报错的原因是因为,图片的文件太大了,已经超过了40kb...不能超过40kb. 在这里查看图片文件的大小: