springboot 配置前后缀 suffix(springboot配置数据源)
Springboot基础知识及整合mybatis
Springboot基础
Springboot的设计初衷是解决spring各版本配置工作过于繁重的问题,简化初始搭建流程,降低开发难度,使开发人员只需要关注应用程序的功能也业务逻辑实现,而不用在配置上花费太多时间。
Springboot使用“默认大于配置”的理念,提供了很多已经集成好的方案,以便程序员开发程序时做到零配置或者极简配置。同时,为了不失灵活性,它也支持自定义操作。
搭建springboot项目
第一步:create Module,此处service URL:https://start.aliyun.com/
第二步:配置项目基本信息
第三步:选择需要的插件
第四步:确定文件夹信息,注意文件夹路径,名称不要错
1.2 springboot项目结构分析
- main/java:入口(启动)类及程序的开发目录,在这个目录下进行业务开发、创建实体层、控制器层、数据连接层等。
- Main/resources: 资源文件目录,主要用于存放静态文件和配置文件。
- Static:用于存放静态资源,如层叠样式表css文件,js文件,图片等。
- Templates:用于存放模板文件。
- Application.properties: 用于配置项目运行所需的配置数据。如果用yaml方式管理配置,也在这个目录中。
- Test/java: 测试程序所在的目录。
- Pom.xml: 项目配置文件,添加需要的依赖和配置信息。
代码自动生成工具generator的使用
- 引入MyBatis Generator的maven插件
<!– mybatis generator 自动生成代码插件–> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.2</version> <configuration> <configurationFile>${basedir}/src/main/resources/generator/generatorConfig.xml</configurationFile> <overwrite>true</overwrite> <verbose>true</verbose> </configuration> </plugin> |
- 在resources目录下创建generator文件夹,并在该目录下创建generatorConfig.xml文件,文件夹如下:
- generatorConfig.xml内容如下,可根据自己需求自定义
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> <generatorConfiguration> <!– 数据库驱动:选择你的本地硬盘上面的数据库驱动包–> <classPathEntry location="C:Usersliyanrong.m2repositorymysqlmysql-connector-java8.0.23mysql-connector-java-8.0.23.jar"/> <context id="DB2Tables" targetRuntime="MyBatis3"> <commentGenerator> <property name="suppressDate" value="true"/> <!– 是否去除自动生成的注释 true:是 : false:否 –> <property name="suppressAllComments" value="true"/> </commentGenerator> <!–数据库链接URL,用户名、密码 –> <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://127.0.0.1/rongtong?serverTimezone=UTC" userId="root" password="123456"> <property name="nullCatalogMeansCurrent" value="true"/> </jdbcConnection> <javaTypeResolver> <property name="forceBigDecimals" value="false"/> </javaTypeResolver> <!– 生成模型的包名和位置–> <javaModelGenerator targetPackage="com.lyr.mybatisxml.entity" targetProject="src/main/java"> <property name="enableSubPackages" value="true"/> <property name="trimStrings" value="true"/> </javaModelGenerator> <!– 生成映射文件的包名和位置–> <sqlMapGenerator targetPackage="com.lyr.mybatisxml.mapper" targetProject="src/main/java"> <property name="enableSubPackages" value="true"/> </sqlMapGenerator> <!– 生成DAO的包名和位置–> <javaClientGenerator type="XMLMAPPER" targetPackage="com.lyr.mybatisxml.mapper" targetProject="src/main/java"> <property name="enableSubPackages" value="true"/> </javaClientGenerator> <!– 要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名–> <table tableName="users" domainObjectName="Users" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table> </context> </generatorConfiguration> |
- 运行
springboot快速集成mybatis
2.1 application.properties文件配置
- 配置application.properties文件中配置数据源
# 应用名称 spring.application.name=mybatisdemo # 数据库驱动: spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver # 数据源名称 spring.datasource.name=defaultDataSource # 数据库连接地址 spring.datasource.url=jdbc:mysql://localhost:3306/rongtong?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=UTF-8 # 数据库用户名&密码: spring.datasource.username=root spring.datasource.password=123456 |
- application.properties文件中配置mybatis
mybatis.type-aliases-package=com.lyr.mybatisdemo.entity |
- application.properties文件中配置thymeleaf模板
# THYMELEAF (ThymeleafAutoConfiguration) # 开启模板缓存(默认值: true ) spring.thymeleaf.cache=true # 检查模板是否存在,然后再呈现 spring.thymeleaf.check-template=true # 检查模板位置是否正确(默认值 :true ) spring.thymeleaf.check-template-location=true #Content-Type 的值(默认值: text/html ) spring.thymeleaf.content-type=text/html # 开启 MVC Thymeleaf 视图解析(默认值: true ) spring.thymeleaf.enabled=true # 模板编码 spring.thymeleaf.encoding=UTF-8 # 要被排除在解析之外的视图名称列表,?逗号分隔 spring.thymeleaf.excluded-view-names= # 要运?于模板之上的模板模式。另? StandardTemplate-ModeHandlers( 默认值: HTML5) spring.thymeleaf.mode=HTML5 # 在构建 URL 时添加到视图名称前的前缀(默认值: classpath:/templates/ ) spring.thymeleaf.prefix=classpath:/templates/ # 在构建 URL 时添加到视图名称后的后缀(默认值: .html ) spring.thymeleaf.suffix=.html |
2.2 pom.xml 文件中配置
由于maven工程在默认情况下src/main/java目录下的mapper文件是不发布到target目录下的。
解决办法:需要在你的xxxx项目的pom.xml的<build></build>里面添加一下配置
<resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> </resource> <resource> <directory>src/main/resources</directory> </resource> </resources> |
2.3 编写mapper包文件,注意注释
@Repository @Mapper public interface UsersMapper { int deleteByPrimaryKey(Integer id); int insert(Users record); int insertSelective(Users record); Users selectByPrimaryKey(Integer id); int updateByPrimaryKeySelective(Users record); int updateByPrimaryKey(Users record); } |
2.3 controller中调用
@Controller public class UsersController { @Autowired UsersService us; @RequestMapping("/hello") public String usersByid(Model model,Integer id){ Users u=us.selectById(1); List<Users> list=us.listAll(); model.addAttribute("users",u); model.addAttribute("list",list); return "hello"; } @RequestMapping("/add") public void usersAdd(HttpServletRequest request, HttpServletResponse response, Users u) throws IOException { int i=us.add(u); response.getWriter().write("添加成功dfafadsd"); } } |
2.4 模板输出文件
在templates文件夹下创建hello.html文件,内容如下:
<!DOCTYPE html> <html lang="en" xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="UTF-8"> <title th:text="${users.username}"></title> </head> <body> <!—–获取后台传过来的对象值—–> <div th:object="${users}"></div> <!—–获取后user对象的sex值—–> <div th:text="${users.getUsername()}"></div> <!—–th:value 将user对象的name属性赋值给value属性—-> <input type="text" th:value="${users.password}" name="id" /> <!—–th:field:绑定后台对象数据,但是在这儿用getName()取不到值—> <input type="text" id=“title” th:field="${users.phone}" /> </body> </html> |
如发现本站有涉嫌抄袭侵权/违法违规等内容,请联系我们举报!一经查实,本站将立刻删除。