SpringBoot 微框架解析以及在IDEA开发工具上如何搭建一个简单的SpringBoot项目

1.springBoot是个基于服务编程(SOA)微服务框架,底层架构基于SpringMVC框架

2.使用微服务框架的好处

    1.把一个大的项目 拆分成若干小模块,模块之间互相可以调用,减少代码冗余。

    2.模块之间互不干扰,单独模块崩溃之后不影响其他模块使用 (大优势)

    3.对请求用户进行分流,让不同需求的用户访问不同模块(项目,类似京东网站)

    4.开发简单,使用纯注解模式,没有配置文件  (开发速度快,减少开发风险)

3.使用idea搭建springboot项目

   1.首先选中File--New-project  选中Spring Initializr

2.点击next进行下一步操作,此操作必须在有网环境下运行,否则报错,进入下一步之后,选中需要使用的JDK和项目管理工具,项目名称不能使用英文大小写混合

3.设置好上述选项之后,点击next进入下一步,选中对应的springBoot版本以及需要使用的组件(jar包),这里我只搭建一个简单的SpeingBoot框架,所以我只需要点web,点击next进入下一步创建成功

4.springBoot框架使用

pom文件jar支持

<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            //jar包依赖
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

1.创建springBoot启动类 springBoot是通过main方法启动,springBoot项目默认集成Tomcat。

   使用SpringBootApplication中的run方法 启动springboot项目,启动类如下图

SpringBootApplication类详情解释

/**
 * SpringBoot项目启动类
 * SpringBoot内部集成了tomcat
 * 所以不需要外部tmocat支持就可以启动项目
 */
@SpringBootApplication   //SpringBoot坏境注解,相当于Spring-MVC中web.xml的Spring监听
                         //扫描当前包及其自包下的所有注解,此启动类必须放在父级包目录中
                         //识别Spring中的注解,加载Spring中的运行环境                     
public class SpringbootdemoApplication {

    //通过main方法启动
    public static void main(String[] args) {
        //通过SpringApplication的run方法启动SpringBoot项目
        //参数为当前启动类的类名
        //SpringApplication.run为固定方法,是不变的,如果自己生成SpringBootApplication类需要手写
        SpringApplication.run(SpringbootdemoApplication.class, args);
    }

}

  启动类必须放在父级包目录中,否则,扫描不到,需要加一个属性scanBasePackages = "com.jk",相当于spring-common.xml

新建测试类测试SpringBoot框架是否搭建成功

@Controller
@RequestMapping("order")
public class OrderController {

    @RequestMapping("test")
    public void test(){
        System.out.println("成功接收到请求!");
    }
}

回到SpringBootApplication启动类启动内部tomcat

如出现下图,则表示tomcat启动成功,并无报错,8080为你的端口号

浏览器访问http://localhost:8080(我的端口号)/order/test(我的方法名) (不需要加后缀)

出现下图侧表示访问成功,之所以会报404是因为我测试类返回值为void并没有页面并不是访问失败。

控制台成功输出!

接下来做一个简单的查询,先不连接数据库

注入Service

 @Autowired
 private OrderService orderService;

这里注入可能会报错,需要手动设置一下,默认是error设置成Warining就不会报错了

Controller层

    @RequestMapping("queryOrderList")
    @ResponseBody
    public List<Map<String,Object>> queryOrderList(){
        return orderService.queryOrder();
    }

Service层

 List<Map<String,Object>> queryOrder ();

ServiceImpl层,注意别忘了@Service注解呀

    @Override
    public List<Map<String, Object>> queryOrder() {
        List<Map<String, Object>> maps = new ArrayList<>();
        HashMap<String, Object> map1 = new HashMap<>();
        map1.put("orderInfo","家电类商品");
        HashMap<String, Object> map2 = new HashMap<>();
        map2.put("orderInfo","3C类商品");
        maps.add(map1);
        maps.add(map2);
        return maps;
    }

我们再来启动一下访问方法去页面看下效果

数据是不是展示了呢?

到此为止SpringBoot框架已经搭建成功,接下来连接自己的数据库,我连的是自己的MySql

1.在resources下的application.properties中配置数据连接信息,其中server.port是你的端口号,spring.datasource.url是你的数据库链接地址,serverTimezone为所在时区,这个是必填的否则数据会有问题。

#server.servlet.application-display-name= 设置访问项目名
server.port=8080
spring.datasource.driverClassName=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/math?serverTimezone=Hongkong&useUnicode=true&characterEncoding=utf-8  
spring.datasource.username=root
spring.datasource.password=root

2.pom文件中需要引入为连接数据库和Spring集成的jar包,注意mySql的jar包版本!!要符合自己的数据库版本,太高会启动报错!!<version>你的数据库版本</version>

        <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
            <version>5.1.4</version>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.3.2</version>
        </dependency>

3.以配置mapper层扫描 在启动类上添加@MapperScan("com.jk.mapper")注解,扫描mapper层。

试一下是否可以连接成功

创建实体Bean

public class OrderBean {

    private Integer orderId;
    private String orderName;
    private String orderPrice;
    private String orderInfo;

    public Integer getOrderId() {
        return orderId;
    }

    public void setOrderId(Integer orderId) {
        this.orderId = orderId;
    }

    public String getOrderName() {
        return orderName;
    }

    public void setOrderName(String orderName) {
        this.orderName = orderName;
    }

    public String getOrderPrice() {
        return orderPrice;
    }

    public void setOrderPrice(String orderPrice) {
        this.orderPrice = orderPrice;
    }

    public String getOrderInfo() {
        return orderInfo;
    }

    public void setOrderInfo(String orderInfo) {
        this.orderInfo = orderInfo;
    }

    @Override
    public String toString() {
        return "OrderBean{" +
                "orderId=" + orderId +
                ", orderName='" + orderName + '\'' +
                ", orderPrice='" + orderPrice + '\'' +
                ", orderInfo='" + orderInfo + '\'' +
                '}';
    }
}

Controllrt层创建查询方法

    /**
     * 查询
     */
    @RequestMapping("findOrderList")
    @ResponseBody
    public List<OrderBean> findOrderList(){
        return orderService.findOrderList();
    }

Service层

List<OrderBean> findOrderList();

ServiceImpl层

    @Override
    public List<OrderBean> findOrderList() {
        return orderMapper.findOrderList();
    }

Mapper层

     @Select("select * from t_order")
    List<OrderBean> findOrderList();

启动项目成功

如果启动报错请注意你的数据库版本号!以及数据库jar包和spring.datasource.driverClassName连接方试,如果版本太高,改成com.mysql.cj.jdbc.Driver试试。

去网站看下展示成功

我的MySql数据如下

接下来springBoot集成thymeleaf

resources文件包下有两个子包,一个叫static是放自己的js文件等,一个叫templates是放你的html页面(模板)。

thymeleaf是springBoot推荐的静态模板。

    1.导入thymeleaf的相关jar包

        <!--thymeleaf所需要的jar包-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>

  2.templates下创建html模板,html标签中引入xmlns

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <span>成功跳转到网页</span>
</body>
</html>

 3.在核心配置文件application中配置thymeleaf的相关配置

  --设置当前页面为HTML5格式

  spring.thymeleaf.mode=HTML5

 --设置页面编码为UTF-8

   spring.thymeleaf.encoding=UTF-8

  --设置转换格式为HTML格式

   spring.thymeleaf.servlet.content-type=text/html

  --是否开启缓存 开发状态下设置为false 上线状态下设置为true

   spring.thymeleaf.cache=false

#设置页面编码为UTF-8
spring.thymeleaf.encoding=UTF-8
#设置转换格式为HTML格式
spring.thymeleaf.servlet.content-type=text/html

4.Controller写一个方法看看能不能成功跳转页面

    /**
     * 跳转页面
     */
    @RequestMapping("toApp")
    public String toAppInfo(){
        return "appInfo";
    }

跳转成功了

springBoot集成thymeleaf完成!

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

听风动

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值