maven+Springboot+mybits+thymeleaf整合

1、Springboot整合mybits的大致流程
1、引入依赖mybits-spring-boot-stater  mysql  druid(阿里巴巴)
2、必须在入口类上@mapperScan注解 扫描DAO接口所在的包
3、建表
4、开发实体类
5、DAO和mapper配置文件开发
6、开发Service和ServiceImpl
7、开发controller
8、开发页面进行测试
2、项目的开发目录结构

在这里插入图片描述

3、编写配置文件application.properties

在这里插入图片描述

//配置端口号 项目名
server.port=8989    
server.servlet.context-path=/springboot_day6   

//thymeleaf模板的配置
//映入前缀   后缀  编码  受否缓存(配合dev) 相应类型   templates static可以直接访问
spring.thymeleaf.prefix=classpath:/templates/   //
spring.thymeleaf.suffix=.html
spring.thymeleaf.encoding=UTF-8
spring.thymeleaf.cache=false
spring.thymeleaf.servlet.content-type=text/html
spring.resources.static-locations=classpath:/templates/,classpath:/static/


//数据源的配置
//连接池 驱动 数据库 用户名 密码
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/sm
spring.datasource.username=root
spring.datasource.password=root

//日志文件的配置
logging.level.root=info
logging.level.com.baizhi.dao=debug
logging.level.com.baizhi.controller=debug

//mybits相关设置
配置文件的路径   别名
mybatis.mapper-locations=classpath:/com/baizhi/mapper/*.xml
mybatis.type-aliases-package=com.baizhi.entity
4、引入依赖 pom.xml
 <name>springboot_day6 Maven Webapp</name>
  <!-- FIXME change it to the project's website -->
  <url>http://www.example.com</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.7</maven.compiler.source>
    <maven.compiler.target>1.7</maven.compiler.target>
  </properties>


  <!--继承springboot的父项目-->
  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.2.5.RELEASE</version>
  </parent>
  <dependencies>


    <!--引入web支持包-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>


    <!--引入thymeleaf的依赖-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-thymeleaf</artifactId>
    </dependency>


    <!--引入lombok-->
    <dependency>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok</artifactId>
      <version>1.18.12</version>
      <scope>provided</scope>
    </dependency>


    <!--引入mybatis依赖-->
    <dependency>
      <groupId>org.mybatis.spring.boot</groupId>
      <artifactId>mybatis-spring-boot-starter</artifactId>
      <version>2.1.1</version>
    </dependency>

    <!--mysql-->
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.38</version>
    </dependency>


    <!--druid-->
    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>druid</artifactId>
      <version>1.1.19</version>
    </dependency>


    <!--springboot热部署devtools-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-devtools</artifactId>
      <optional>true</optional>
    </dependency>


    <!--切面编程的依赖-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-aop</artifactId>
    </dependency>

  </dependencies>

  <build>
    <finalName>springboot_day6</finalName>
    <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
      <plugins>
        <plugin>
          <artifactId>maven-clean-plugin</artifactId>
          <version>3.1.0</version>
        </plugin>
        <!-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging -->
        <plugin>
          <artifactId>maven-resources-plugin</artifactId>
          <version>3.0.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>3.8.0</version>
        </plugin>
        <plugin>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>2.22.1</version>
        </plugin>
        <plugin>
          <artifactId>maven-war-plugin</artifactId>
          <version>3.2.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-install-plugin</artifactId>
          <version>2.5.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-deploy-plugin</artifactId>
          <version>2.8.2</version>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>
</project>
5、编写入口程序

在这里插入图片描述

@SpringBootApplication
@MapperScan("com.baizhi.dao")   //mapper自动扫描
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class,args);
    }
}
6、建表

在这里插入图片描述

7、开发实体类

在这里插入图片描述

import java.util.Date;

@Data     //  get ,set方法
@AllArgsConstructor    //生成有参构造
@NoArgsConstructor    //无参构造
@ToString
public class User {
    private String id;
    private String name;
    private Integer age;
    private Date bir;
}
8、开发DAO接口

在这里插入图片描述

public interface UserDAO {

    void save(User user); 

    List<User> findAll();
}
9、开发映射文件

在这里插入图片描述

<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.baizhi.dao.UserDAO">

    <!--save-->
    <insert id="save" parameterType="User">
        insert into t_user values (#{id},#{name},#{age},#{bir})
    </insert>

    <!--findAll-->
    <select id="findAll" resultType="User">
        select id,name,age,bir from t_user
    </select>
</mapper>
10、开发业务层 Service 和ServiceImpl

在这里插入图片描述

public interface UserService {

    void save(User user);

    List<User> findAll();
}
@Service
@Transactional    //控制事务
public class UserServiceImpl implements UserService {

    @Autowired  //注入
    private UserDAO userDAO;

    @Override   
    public void save(User user) {
        user.setId(UUID.randomUUID().toString());   //id生成策略
        userDAO.save(user);
    }

    @Override
    public List<User> findAll() {
        return userDAO.findAll();
    }
}
11、开发控制器

在这里插入图片描述


@Controller
@RequestMapping("/user")
public class UserController {

    @Autowired
    private UserService userService;


    //findAll
    @GetMapping("/findAll")
    public String findAll(Model model){
        List<User> users = userService.findAll();
        model.addAttribute("users",users);
        return "showAll";
    }


    //save
    @GetMapping("/save")
    public String save(User user){
        userService.save(user);
        return "redirect:/user/findAll";
    }
}
12、编写html页面

在这里插入图片描述

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>ShowAll</title>
</head>
<body>



    <ul th:each="user,userStat:${users}">
        <li><span th:text="${userStat.index}"/><span th:text="${user.id}"/></li>
        <li><span th:text="${user.name}"/></li>
        <li><span th:text="${user.age}"/></li>
        <li><span th:text="${#dates.format(user.bir,'yyyy-MM-dd')}"/></li>
    </ul>


    <h1>this is dev tools</h1>
</body>
</html>
13、访问方法

http://localhost:8989/springboot_day6/user/findAll
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值