zoukankan      html  css  js  c++  java
  • springboot --- 之SSM框架整合

    1.pom依赖:
    即:spring-boot的基本jar ---- 内置springmvc和spring
    Thymeleaf jar
    热部署 jar ---方便二次加载 ctrl+f9再次编译
    Mybatis jar
    Mysql jar
    
    <dependency>
     	<groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    
    <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-thymeleaf</artifactId>
    </dependency>
    
    <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-tomcat</artifactId>
    </dependency>
    
    <!--热部署-->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <optional>true</optional> <!-- 这个需要为 true 热部署才有效 -->
    </dependency>
    <!-- mybatis -->
    <dependency>
        <groupId>org.mybatis.spring.boot</groupId>
        <artifactId>mybatis-spring-boot-starter</artifactId>
        <version>1.1.1</version>
    </dependency>
    <!-- mysql -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.21</version>
    </dependency>
    
    
    2.application的配置:
    #thymeleaf 配置
    spring.thymeleaf.mode=HTML5
    spring.thymeleaf.encoding=UTF-8
    spring.thymeleaf.content-type=text/html
    #缓存设置为false, 这样修改之后马上生效,便于调试
    spring.thymeleaf.cache=false
    #上下文
    server.context-path=/thymeleaf
    #视图层控制
    #spring.mvc.view.prefix=classpath:/templates/
    #spring.mvc.view.suffix=.html
    #spring.mvc.static-path-pattern=/static/**
    #数据库
    spring.datasource.url=jdbc:mysql://127.0.0.1:3306/how2java?characterEncoding=UTF-8
    spring.datasource.username=root
    spring.datasource.password=
    spring.datasource.driver-class-name=com.mysql.jdbc.Driver
    
    
    
    3.mapper层 以及非常简单的entity层:
    @Mapper
    @Repository
    // 加上Repository注解,即可自动bean
    public interface CategoryMapper {
    
        @Select("select * from category_ ")
        public List<Category> findAll();
    
    }
    
    4.service层 --- 以及serviceImpl实现层
    @Service
    public class CategoryServiceImpl implements CategoryService {
        @Autowired
        CategoryMapper;
    
        @Override
        public List<Category> selectAll() {
            return categoryMapper.findAll();
        }
    }
    5.controller层:
    这个里面加了pagehelper,可以忽略
    @Controller
    public class CategoryController {
        @Autowired
        CategoryService categoryService;
        
        @RequestMapping("/listCategory")
        public String showList(Model model,
                               @RequestParam(value = "start", defaultValue = "0") int start,
                               @RequestParam(value = "size", defaultValue = "5") int size)
                                throws Exception{
            PageHelper.startPage(start,size);
            List<Category> list = categoryService.selectAll();
            PageInfo<Category> page = new PageInfo<>(list);
            model.addAttribute("page",page);
            return "listCategory";
        }
    }
    
    6.Thymeleaf --- 渲染模板:  有点类似于EL表达式的写法
    <table border="1px">
        <tr>
            <th>id</th>
            <th>name</th>
        </tr>
        <tr th:each="l:${page.list}">
            <td th:text="${l.id}"></td>
            <td th:text="${l.name}"></td>
        </tr>
    </table>
    <a th:href="@{/listCategory(start=0)}">[首  页]</a>
    <a th:href="@{/listCategory(start=${page.pageNum-1})}">[上一页]</a>
    <a th:href="@{/listCategory(start=${page.pageNum+1})}">[下一页]</a>
    <a th:href="@{/listCategory(start=${page.pages})}">[末  页]</a>
    

      

  • 相关阅读:
    SpringBoot集成Redis
    独享锁 & 共享锁
    公平锁与非公平锁
    如何上传本地代码到码云
    SpringBoot+Mybatis+Pagehelper分页
    SpringBoot集成Mybatis(0配置注解版)
    高并发下接口幂等性解决方案
    SpringBoot全局配置文件
    干货
    Spring读取外部的资源配置文件—@PropertySource和@Value实现资源文件配置
  • 原文地址:https://www.cnblogs.com/kkzhilu/p/9595492.html
Copyright © 2011-2022 走看看