SpringBoot 配置Redis

1. Springboot是Spring mvc的升级版,没有必然的联系。

2. 特点:a简化配置  b是下一代框架 c入门级

3. Spring Boot配置文件application.properties

//配置数据库

spring.datasource.url=jdbc:oracle:thin:@//*.*.*.*/*    
spring.datasource.username=*
spring.datasource.password=*
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver
spring.datasource.testWhileIdle=true
spring.datasource.validationQuery=SELECT 1
spring.jpa.show-sql=true

//配置Redis
server.port=8080
spring.redis.host=*.*.*.*
spring.redis.password=
spring.redis.port=6379
spring.redis.pool.max-idle=100
spring.redis.pool.min-idle=0
spring.redis.pool.max-active=5000
spring.redis.pool.max-wait=500

//程序中的参数配置
list_sum_count=8
sku=10

real_list_count=4
real_per_count=2

real_list_count2=8
real_per_count2=4

//Spring 配置Mybatis
mybatis.typeAliasesPackage=com.ghs.recommeds.model
mybatis.mapperLocations=classpath:mapper/*.xml

Java 中调用Redis

 @Autowired
  private StringRedisTemplate template;

 String realtime_goodids = template.opsForValue().get(userId);


4. Spring Boot配置文件

application.properties 文件

server.port = 8080              端口

server.context-path=/girl   url前加的前缀

application.yml 文件

server:

 port: (加空格)8080  

 context-path: /girl

girl:

  cupSize: B

  age: 18

content:”cupSize:${cupSize}, age:${age}”

*.java 文件


@Value(“${ content }”) //实现配置内容的注入

private String content;

 


新建类:

@Component

@ConfigurationProperties(prefix=”girl”)

 public  class GirlProperties{

  private  String cupSize;

  private  Integer age;

  // Getter  and  Setter() 方法

}

使用

@Autowires

private GirlProperties  girlProperties;

多环境配置

application.yml 文件

Spring:

 profiles:

  active: dev(prod)

application-dev.yml (测试环境)

server:

 port: 8080

 girl:

  cupSize: B

  age:  18

application-prod.yml (生产环境)

port: 8081

 girl:

 cupSize: F

 age: 18

5. Controller的使用

@Controller 处理http的请求,不加http是无法请求的

@RestController Spring4之后新加的注解,原来返回json需要@ResponseBody配合@Controller也就是

@RestController=@ResponseBody +@Controller

@RequestMapping  配置url映射

若想用多个url同时访问一个方法。则:

@RestController

@RequestMapping(“/hello”)

@RequestMapping(value = {“/hello”,”/hi”},method=RequestMethod.GET)

public   String  say(){

}

处理url里的参数

@PathVariable 获取url中的数据

@RequestParam 获取请求参数的值

@GetMapping 组合注解


6. springboot配置Mybatis


pom.xml 配置

<!-- 使用数据源 -->  
        <dependency>  
            <groupId>com.alibaba</groupId>  
            <artifactId>druid</artifactId>  
            <version>1.0.14</version>  
        </dependency>      
        <!-- 配置oracle数据库 -->
        <dependency>
            <groupId>com.oracle</groupId>
            <artifactId>ojdbc14</artifactId>
            <version>10.2.0.3.0</version>
        </dependency>
        <!--集成mybatis  -->  
        <!-- 与数据库操作相关的依赖 -->  
        <dependency>  
            <groupId>org.springframework.boot</groupId>  
            <artifactId>spring-boot-starter-jdbc</artifactId>  
        </dependency>  
        
        <!-- mybatis -->  
        <dependency>  
            <groupId>org.mybatis</groupId>  
            <artifactId>mybatis</artifactId>  
            <version>3.2.8</version>  
        </dependency>  
        <dependency>  
            <groupId>org.mybatis</groupId>  
            <artifactId>mybatis-spring</artifactId>  
            <version>1.2.2</version>  
         </dependency>  
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-validator</artifactId>
            <version>5.2.4.Final</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
        </dependency>

MybatisConfig.java

package com.ghs.recommend.common;
import java.util.Properties; 
import javax.sql.DataSource; 
import org.apache.ibatis.session.SqlSessionFactory;  
import org.mybatis.spring.SqlSessionFactoryBean;  
import org.mybatis.spring.annotation.MapperScan;  
import org.springframework.beans.factory.annotation.Autowired;  
import org.springframework.context.annotation.Bean;  
import org.springframework.context.annotation.Configuration;  
import org.springframework.core.env.Environment;  
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;  
import com.alibaba.druid.pool.DruidDataSourceFactory;  
 
/**  
 * springboot集成mybatis的基本入口  
 * 1)创建数据源  
 * 2)创建SqlSessionFactory  
 */  
@Configuration    //该注解类似于spring配置文件  
@MapperScan(basePackages="com.ghs.recommend.mapper")  
public class MybatisConfig{  
      
    @Autowired  
    private Environment env;  
      
    /**  
     * 创建数据源  
     * @Primary 该注解表示在同一个接口有多个实现类可以注入的时候,默认选择哪一个,而不是让@autowire注解报错   
     */  
    @Bean  
    //@Primary  
    public DataSource getDataSource() throws Exception{  
        Properties props = new Properties();  
        props.put("driverClassName", env.getProperty("spring.datasource.driver-class-name"));  
        props.put("url", env.getProperty("spring.datasource.url"));  
        props.put("username", env.getProperty("spring.datasource.username"));  
        props.put("password", env.getProperty("spring.datasource.password"));  
        return DruidDataSourceFactory.createDataSource(props);  
    }  
 
    /**  
     * 根据数据源创建SqlSessionFactory  
     */  
    @Bean  
    public SqlSessionFactory sqlSessionFactory(DataSource ds) throws Exception{  
        SqlSessionFactoryBean fb = new SqlSessionFactoryBean();  
        fb.setDataSource(ds);//指定数据源(这个必须有,否则报错)  
        //下边两句仅仅用于*.xml文件,如果整个持久层操作不需要使用到xml文件的话(只用注解就可以搞定),则不加  
        fb.setTypeAliasesPackage(env.getProperty("mybatis.typeAliasesPackage"));//指定基包  
        fb.setMapperLocations(new PathMatchingResourcePatternResolver().getResources(env.getProperty("mybatis.mapperLocations")));//指定xml文件位置  
          
        return fb.getObject();  
    }  
 

UserMapper.xml

<?xml version="1.0" encoding="UTF-8" ?>  
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">  

<!-- 指定工作空间,要与接口名相同,源代码没有去看,猜测应该是通过"这里的namespace.下边方法的id"来定位方法的 -->  
<mapper namespace="com.ghs.recommend.mapper.UserMapper">  
      
   <sql id="Base_Column_List" >
     id,price,name,sku,duration
    </sql>
    <!-- 查询一条记录 -->
    <select id="selectInfo" resultType="com.ghs.recommend.model.User">
        select id,price,name,sku,duration from temp_product
    </select>
      
</mapper>

UserDao.java

package com.ghs.recommend.dao;

import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;  
import org.springframework.stereotype.Repository;  
import com.ghs.recommend.mapper.UserMapper;
import com.ghs.recommend.model.User;
 
 
@Repository  
public class UserDao {  
        @Autowired  
        private UserMapper userMapper;  
          
        public List<User> selectUser(){  
            return userMapper.selectInfo();  
        }  
          
 
}  

UserService.java

package com.ghs.recommend.service;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;  
import org.springframework.stereotype.Service;  

import com.ghs.recommend.model.User;
import com.ghs.recommend.dao.UserDao;
@Service  
public class UserService {  
    @Autowired  
    private UserDao userDao;  
      
    public List<User> selectUser(){  
        return userDao.selectUser();  
    }  
      
}


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值