SpringBoot 框架整合

代碼地址以下:<br>http://www.demodashi.com/demo/12522.htmlcss

1、主要思路

  1. 使用spring-boot-starter-jdbc集成Mybatis框架
  2. 經過spring-boot-starter-cache集成EhCache
  3. 使用WebServlet集成Druid監控

2、程序實現

#####1. POM 文件html

<?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>

		<groupId>com.geek</groupId>
		<artifactId>SpringBootInit</artifactId>
		<version>1.0-SNAPSHOT</version>


		<parent>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-parent</artifactId>
			<version>1.5.9.RELEASE</version>
		</parent>

		<properties>
			<mybatis.version>3.4.5</mybatis.version>
			<mybatis.spring.version>1.3.1</mybatis.spring.version>
			<druid.version>1.1.6</druid.version>
			<ehcache.version>3.4.0</ehcache.version>
			<mysql.connector.version>5.1.45</mysql.connector.version>
		</properties>



		<dependencies>
			<!-- SpringBoot -->
			<dependency>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-starter-web</artifactId>
			</dependency>
			<dependency>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-starter-jdbc</artifactId>
			</dependency>
			<dependency>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-starter-cache</artifactId>
			</dependency>
			<dependency>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-starter-logging</artifactId>
			</dependency>
			<!-- Mybatis -->
			<dependency>
				<groupId>org.mybatis.spring.boot</groupId>
				<artifactId>mybatis-spring-boot-starter</artifactId>
				<version>1.3.0</version>
			</dependency>
			<dependency>
				<groupId>org.mybatis</groupId>
				<artifactId>mybatis-spring</artifactId>
				<version>${mybatis.spring.version}</version>
			</dependency>
			<!-- MySQL -->
			<dependency>
				<groupId>mysql</groupId>
				<artifactId>mysql-connector-java</artifactId>
				<version>${mysql.connector.version}</version>
			</dependency>
			<!-- MySQL Druid -->
			<dependency>
				<groupId>com.alibaba</groupId>
				<artifactId>druid</artifactId>
				<version>${druid.version}</version>
			</dependency>
			<!-- EhCache -->
			<dependency>
				<groupId>org.ehcache</groupId>
				<artifactId>ehcache</artifactId>
				<version>${ehcache.version}</version>
			</dependency>
		</dependencies>

	</project>

#####2. 集成Mybatisjava

mybatis:
	  mapper-locations: classpath:mappers/*.xml
	  type-aliases-package: com.geek.*.dto

#####3. 集成EhCachemysql

<?xml version="1.0" encoding="UTF-8"?>
	<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
			 xsi:noNamespaceSchemaLocation="http://ehcache.org/ehcache.xsd"
			 updateCheck="false">

		<defaultCache
				eternal="false"
				maxElementsInMemory="1000"
				overflowToDisk="false"
				diskPersistent="false"
				timeToIdleSeconds="0"
				timeToLiveSeconds="600"
				memoryStoreEvictionPolicy="LRU"/>
		<cache
				name="users"
				eternal="false"
				maxElementsInMemory="100"
				overflowToDisk="false"
				diskPersistent="false"
				timeToIdleSeconds="0"
				timeToLiveSeconds="300"
				memoryStoreEvictionPolicy="LRU"/>
	</ehcache>

java中使用註解web

@Override
    @Cacheable(value="users",key="'user_'+#id")
    public User getUserById(Long id) {
        return userMapper.selectByPrimaryKey(id);
    }

    @Override
    @CacheEvict(value="users",allEntries=true)
    public int saveUser(User user) {
        return userMapper.insertSelective(user);
    }

#####4. durid 使用spring

WebServlet 配置sql

@WebServlet(urlPatterns = "/druid/*",
        initParams={
                @WebInitParam(name="allow",value=""),// IP白名單 (沒有配置或者爲空,則容許全部訪問, 逗號分隔)
                @WebInitParam(name="deny",value=""),// IP黑名單 (存在共同時,deny優先於allow)
                @WebInitParam(name="loginUsername",value="admin"),// 用戶名
                @WebInitParam(name="loginPassword",value="admin"),// 密碼
                @WebInitParam(name="resetEnable",value="false")// 禁用HTML頁面上的「Reset All」功能
        })
public class DruidController extends StatViewServlet {

}

Filter 配置apache

@WebFilter(filterName="druidWebStatFilter",urlPatterns="/*",
        initParams={
                @WebInitParam(name="exclusions",value="*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico,/druid/*")// 忽略資源
        })
public class DruidStatFilter extends WebStatFilter {
}

3、效果圖以下:

增長數據 mybatis

第一次執行 app

第二次執行

4、程序目錄結構

5、其餘補充

springBoot介紹 百度百科:https://baike.baidu.com/item/Spring%20Boot/20249767?fr=aladdin spring官方:https://projects.spring.io/spring-boot/ SpringBoot 框架整合

代碼地址以下:<br>http://www.demodashi.com/demo/12522.html

注:本文著做權歸做者,由demo大師代發,拒絕轉載,轉載須要做者受權

相關文章
相關標籤/搜索