• springboot整合mybatis


    springboot整合mybatis

    1.pom文件

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    	<modelVersion>4.0.0</modelVersion>
    	<parent>
    		<groupId>org.springframework.boot</groupId>
    		<artifactId>spring-boot-starter-parent</artifactId>
    		<version>2.1.4.RELEASE</version>
    		<relativePath/> <!-- lookup parent from repository -->
    	</parent>
    	<groupId>com.cykj</groupId>
    	<artifactId>ycapp</artifactId>
    	<version>0.0.1-SNAPSHOT</version>
    	<name>ycapp</name>
    	<packaging>war</packaging>
    	<description>Demo project for Spring Boot</description>
    
    	<properties>
    		<java.version>1.8</java.version>
    	</properties>
    
    	<dependencies>
    		<!--引入web场景-->
    		<dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-starter-web</artifactId>
    		</dependency>
    
    		<!--springboot的jdbc场景启动器-->
    		<dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-starter-jdbc</artifactId>
    		</dependency>
    		<!--springboot的mybatis启动器-->
    		<dependency>
    			<groupId>org.mybatis.spring.boot</groupId>
    			<artifactId>mybatis-spring-boot-starter</artifactId>
    			<version>2.0.1</version>
    		</dependency>
    		<!--引入mysql的jar包-->
    		<dependency>
    			<groupId>mysql</groupId>
    			<artifactId>mysql-connector-java</artifactId>
    			<version>5.1.30</version>
    			<scope>runtime</scope>
    		</dependency>
    
    		<!--引入lombok依赖-->
    		<dependency>
    			<groupId>org.projectlombok</groupId>
    			<artifactId>lombok</artifactId>
    			<version>1.16.18</version>
    		</dependency>
    
    		<!--热部署-->
    		<dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-devtools</artifactId>
    			<optional>true</optional>
    			<scope>true</scope>
    		</dependency>
    		<dependency>
    			<groupId>com.vaadin.external.google</groupId>
    			<artifactId>android-json</artifactId>
    			<version>0.0.20131108.vaadin1</version>
    		</dependency>
    
    		<!--POI-->
    		<dependency>
    			<groupId>org.apache.poi</groupId>
    			<artifactId>poi</artifactId>
    			<version>3.16</version>
    		</dependency>
    		<dependency>
    			<groupId>org.apache.poi</groupId>
    			<artifactId>poi-ooxml</artifactId>
    			<version>3.14</version>
    		</dependency>
    
    		<!--文件上传-->
    		<dependency>
    			<groupId>commons-fileupload</groupId>
    			<artifactId>commons-fileupload</artifactId>
    			<version>1.3.1</version>
    		</dependency>
    		<dependency>
    			<groupId>commons-io</groupId>
    			<artifactId>commons-io</artifactId>
    			<version>2.4</version>
    		</dependency>
    
    		<!--引入fastjson依赖-->
    		<dependency>
    			<groupId>com.alibaba</groupId>
    			<artifactId>fastjson</artifactId>
    			<version>1.2.47</version>
    		</dependency>
    
    		<!--shiro依赖-->
    		<dependency>
    			<groupId>org.apache.shiro</groupId>
    			<artifactId>shiro-core</artifactId>
    			<version>1.4.0</version>
    		</dependency>
    		<dependency>
    			<groupId>org.apache.shiro</groupId>
    			<artifactId>shiro-spring</artifactId>
    			<version>1.4.0</version>
    		</dependency>
    		<dependency>
    			<groupId>org.apache.shiro</groupId>
    			<artifactId>shiro-ehcache</artifactId>
    			<version>1.4.0</version>
    		</dependency>
    
    		<!--json-->
    		<dependency>
    			<groupId>net.sf.json-lib</groupId>
    			<artifactId>json-lib</artifactId>
    			<version>2.2.3</version>
    			<classifier>jdk15</classifier><!-- jdk版本 -->
    		</dependency>
    
    		<!--springboot的test场景-->
    		<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>
    				<configuration>
    					<!--发布项目时,该配置必须-->
    					<fork>true</fork>
    					<mainClass>com.cykj.ycapp.YcappApplication</mainClass>
    
    				</configuration>
    				<executions>
    					<execution>
    						<goals>
    							<goal>repackage</goal>
    						</goals>
    					</execution>
    				</executions>
    			</plugin>
    		</plugins>
    	</build>
    
    </project>
    
    

    2.application.yml

    #	配置数据库
    spring:
      datasource:
        url: jdbc:mysql://10.150.153.300:3306/ycapp?useUnicode=true&amp;characterEncoding=utf-8     #服务器IP:10.150.151.100
        username: user
        password: 123456
        driver-class-name: com.mysql.jdbc.Driver	#mysql版本为5.1时
    
    logging:
      level:
        com.cykj.ycapp.mapper: debug  # 打印sql
    #    org.springframework.web: TRACE  # 打印API
    
    

    3.application.properties

    # 对xml中实体对象引用的配置
    mybatis.type-aliases-package=com.cykj.ycapp.domain
    # 指定xml路径,xml在resources目录的位置
    mybatis.mapper-locations=classpath:mybatis/*.xml
    # mybatis的核心配置文件路径
    #mybatis.config-location=
    
    server.port=8002
    #server.servlet.context-path=/pa
    

    4.application启动类

    package com.cykj.ycapp;
    
    import com.alibaba.fastjson.serializer.SerializerFeature;
    import com.alibaba.fastjson.support.config.FastJsonConfig;
    import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;
    import org.mybatis.spring.annotation.MapperScan;
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    import org.springframework.boot.autoconfigure.http.HttpMessageConverters;
    import org.springframework.context.annotation.Bean;
    import org.springframework.http.converter.HttpMessageConverter;
    
    import java.nio.charset.Charset;
    
    @SpringBootApplication
    @MapperScan(basePackages = {"com.cykj.ycapp.mapper"})
    public class YcappApplication {
    
    	public static void main(String[] args) {
    		SpringApplication.run(YcappApplication.class, args);
    	}
    
    	//使用@Bean注入fastJsonHttpMessageConvert
    	@Bean
    	public HttpMessageConverters fastJsonHttpMessageConverters(){
    		//1. 需要定义一个converter转换消息的对象
    		FastJsonHttpMessageConverter fasHttpMessageConverter = new FastJsonHttpMessageConverter();
    
    		//2. 添加fastjson的配置信息,比如:是否需要格式化返回的json的数据
    		FastJsonConfig fastJsonConfig = new FastJsonConfig();
    		fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
    
    		//3. 在converter中添加配置信息
    		fasHttpMessageConverter.setFastJsonConfig(fastJsonConfig);
    		// 解决中文乱码问题
    		fasHttpMessageConverter.setDefaultCharset(Charset.forName("UTF-8"));
    		HttpMessageConverter<?> converter = fasHttpMessageConverter;
    		return new HttpMessageConverters(converter);
    	}
    
    }
    

    5.MyWebMvcConfig.java文件

    package com.cykj.ycapp.config;
    
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;
    import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
    
    import java.io.File;
    
    @Configuration
    public class MyWebMvcConfig implements WebMvcConfigurer{
        //  所有的WebMvcConfigurer组件都会一起起作用
        @Bean
        public WebMvcConfigurer webMvcConfigurer(){
            WebMvcConfigurer configurer = new WebMvcConfigurer() {
                @Override
                public void addViewControllers(ViewControllerRegistry registry) {
                    registry.addViewController("/").setViewName("main");
                    registry.addViewController("/main").setViewName("main");
                    registry.addViewController(File.separator+"main").setViewName("main");
                    registry.addViewController(File.separator+"login").setViewName("login");
                    registry.addViewController(File.separator+"data_rule").setViewName("data_rule");
                    registry.addViewController("/data_rule").setViewName("data_rule");
    //                registry.addViewController("machine_sel").setViewName("machine_sel");
    
                }
    
            };
            return configurer;
        }
    }
    
  • 相关阅读:
    python字典
    python中List添加、删除元素的几种方法
    python数据处理之基本函数
    python批量处理
    python正则表达式
    python模块学习:os模块
    Hough transform(霍夫变换)
    MODBUS TCP/IP协议规范详细介绍
    Linux下run文件的直接运行
    双边滤波和引导滤波的原理
  • 原文地址:https://www.cnblogs.com/itzlg/p/11287099.html
Copyright © 2020-2023  润新知