Search in sources :

Example 11 with Person

use of com.xiaolyuh.entity.Person in project spring-boot-student by wyh-spring-ecosystem-student.

the class PersonServiceImpl method findOne1.

@Override
@Cacheable(value = "people1", key = "#person.id", depict = "用户信息缓存1", enableFirstCache = false, firstCache = @FirstCache(expireTime = 4, timeUnit = TimeUnit.MINUTES, expireMode = ExpireMode.ACCESS), secondaryCache = @SecondaryCache(expireTime = 15, preloadTime = 8, forceRefresh = true))
public Person findOne1(Person person) {
    Person p = personRepository.findOne(Example.of(person));
    logger.info("为id、key为:" + p.getId() + "数据做了缓存");
    return p;
}
Also used : Person(com.xiaolyuh.entity.Person)

Example 12 with Person

use of com.xiaolyuh.entity.Person in project spring-boot-student by wyh-spring-ecosystem-student.

the class PersonServiceImpl method findOne.

@Override
@Cacheable(value = "'people' + ':' + #person.id", key = "#person.id", depict = "用户信息缓存", enableFirstCache = false, firstCache = @FirstCache(expireTime = 4, timeUnit = TimeUnit.MINUTES), secondaryCache = @SecondaryCache(expireTime = 15, preloadTime = 8, forceRefresh = true, timeUnit = TimeUnit.HOURS))
public Person findOne(Person person) {
    Person p = personRepository.findOne(Example.of(person));
    logger.info("为id、key为:" + p.getId() + "数据做了缓存");
    return p;
}
Also used : Person(com.xiaolyuh.entity.Person)

Example 13 with Person

use of com.xiaolyuh.entity.Person in project spring-boot-student by wyh-spring-ecosystem-student.

the class ExprotController method exportCsv.

@GetMapping("/csv")
public void exportCsv(HttpServletResponse response) throws IOException {
    String fileName = "PersonInfo";
    List<String> titles = Arrays.asList("ID", "名称", "年龄", "地址");
    List<Person> list = new ArrayList<>();
    list.add(new Person(1L, "姓名1", 28, "地址1"));
    list.add(new Person(2L, "姓名2", 29, "地址2"));
    List<List<Object>> dataList = list.stream().map(person -> {
        List<Object> data = new ArrayList<>();
        data.add(person.getId());
        data.add(person.getName());
        data.add(person.getAge());
        data.add(person.getAddress());
        return data;
    }).collect(Collectors.toList());
    OutputStream os = response.getOutputStream();
    CsvExportUtil.responseSetProperties(fileName, response);
    CsvExportUtil.doExportByList(dataList, titles, os);
    CsvExportUtil.doExportByList(dataList, null, os);
}
Also used : OutputStream(java.io.OutputStream) Arrays(java.util.Arrays) HttpServletResponse(javax.servlet.http.HttpServletResponse) SimpleDateFormat(java.text.SimpleDateFormat) IOException(java.io.IOException) RestController(org.springframework.web.bind.annotation.RestController) Collectors(java.util.stream.Collectors) CsvExportUtil(com.xiaolyuh.utils.CsvExportUtil) ArrayList(java.util.ArrayList) List(java.util.List) Person(com.xiaolyuh.entity.Person) ExcelExportUtils(com.xiaolyuh.utils.ExcelExportUtils) GetMapping(org.springframework.web.bind.annotation.GetMapping) OutputStream(java.io.OutputStream) ArrayList(java.util.ArrayList) ArrayList(java.util.ArrayList) List(java.util.List) Person(com.xiaolyuh.entity.Person) GetMapping(org.springframework.web.bind.annotation.GetMapping)

Example 14 with Person

use of com.xiaolyuh.entity.Person in project spring-boot-student by wyh-spring-ecosystem-student.

the class PersonServiceImpl method semaphore.

@Override
@SentinelResource(entryType = EntryType.IN)
public Result semaphore(String arg) {
    Person person = new Person();
    person.setAge(18);
    person.setId(2L);
    person.setName("名称semaphore");
    person.setAddress("地址semaphore");
    logger.info(JSON.toJSONString(person));
    return Result.success(person);
}
Also used : Person(com.xiaolyuh.entity.Person) SentinelResource(com.alibaba.csp.sentinel.annotation.SentinelResource)

Example 15 with Person

use of com.xiaolyuh.entity.Person in project spring-boot-student by wyh-spring-ecosystem-student.

the class SpringBootStudentSentinelApplicationTests method testParse.

@Test
public void testParse() {
    Person p = new Person();
    p.setId(11L);
    p.setAge(32);
    // 表达式解析
    ExpressionParser expressionParser = new SpelExpressionParser();
    Expression expression = expressionParser.parseExpression("#person.age+\":\"+#person.id");
    StandardEvaluationContext context = new StandardEvaluationContext();
    context.setRootObject(p);
    logger.info("[SpELTest - testParse ] {} ", expression.getValue(context));
    Field[] fields = p.getClass().getDeclaredFields();
    for (Field field : fields) {
        try {
            System.out.println("name:" + field.getName());
            field.setAccessible(true);
            System.out.println("value:" + field.get(p));
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        }
    }
}
Also used : Field(java.lang.reflect.Field) SpelExpressionParser(org.springframework.expression.spel.standard.SpelExpressionParser) StandardEvaluationContext(org.springframework.expression.spel.support.StandardEvaluationContext) Expression(org.springframework.expression.Expression) ExpressionParser(org.springframework.expression.ExpressionParser) SpelExpressionParser(org.springframework.expression.spel.standard.SpelExpressionParser) Person(com.xiaolyuh.entity.Person) Test(org.junit.Test) SpringBootTest(org.springframework.boot.test.context.SpringBootTest)

Aggregations

Person (com.xiaolyuh.entity.Person)21 Field (java.lang.reflect.Field)6 Test (org.junit.Test)6 SpringBootTest (org.springframework.boot.test.context.SpringBootTest)6 Expression (org.springframework.expression.Expression)6 ExpressionParser (org.springframework.expression.ExpressionParser)6 SpelExpressionParser (org.springframework.expression.spel.standard.SpelExpressionParser)6 StandardEvaluationContext (org.springframework.expression.spel.support.StandardEvaluationContext)6 Cacheable (org.springframework.cache.annotation.Cacheable)5 SimpleDateFormat (java.text.SimpleDateFormat)2 ArrayList (java.util.ArrayList)2 Transactional (org.springframework.transaction.annotation.Transactional)2 GetMapping (org.springframework.web.bind.annotation.GetMapping)2 RequestMapping (org.springframework.web.bind.annotation.RequestMapping)2 SentinelResource (com.alibaba.csp.sentinel.annotation.SentinelResource)1 Location (com.xiaolyuh.entity.Location)1 CsvExportUtil (com.xiaolyuh.utils.CsvExportUtil)1 ExcelExportUtils (com.xiaolyuh.utils.ExcelExportUtils)1 IOException (java.io.IOException)1 OutputStream (java.io.OutputStream)1