美文网首页SpringBoot极简教程 · Spring Boot Java编程
Mybatis+Thymeleaf开发遇到的几个问题笔录

Mybatis+Thymeleaf开发遇到的几个问题笔录

作者: smileNicky | 来源:发表于2018-11-03 12:28 被阅读20次

    我的开发工具是IntelliJ IDEA,然后在SpringBoot集成Mybatis,前端用模块引擎Thymeleaf的过程中遇到几个问题,不过也花了点时间,现在记录下来,作为笔记记录。

    Invalid bound statement异常

    开发中经常遇到,下面给出我的两种方法
    Invalid bound statement (not found):
    ①Mapepr.xml文件中文nameapce没有和mapper接口发生映射
    ②有可能是在IDEA编辑器运行的项目,需要project structure设置mybatis的xml文件夹为resource

    Thymeleaf前端显示时间格式不规范

    解决方案是写个配置类

    package com.muses.taoshop.manager.config;
    
    import org.springframework.beans.BeansException;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.ApplicationContextAware;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.format.FormatterRegistrar;
    import org.springframework.format.FormatterRegistry;
    import org.springframework.format.datetime.DateFormatter;
    import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
    
    import java.text.DateFormat;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    import java.util.Locale;
    
    /**
     * <pre>
     * Thymeleaf模板引擎配置
     * </pre>
     *
     * @author nicky
     * @version 1.00.00
     * <pre>
     * 修改记录
     *    修改后版本:     修改人:  修改日期: 2018.09.22 10:50    修改内容:
     * </pre>
     */
    @Configuration
    public class ThymeleafConfig extends WebMvcConfigurerAdapter implements ApplicationContextAware{
    
        @Override
        public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
    
        }
    
        @Override
        public void addFormatters(final FormatterRegistry registry){
            super.addFormatters(registry);
            registry.addFormatter(dateFormatter());
        }
    
        @Bean
        public DateFormatter dateFormatter(){
            return new MyDateFormatter();
        }
    
        class MyDateFormatter extends DateFormatter {
            @Override
            public String print(Date date, Locale locale) {
                //return super.print(date, locale);
                return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date);
            }
        }
    }
    
    

    获取后台timestamp类型数据,页面得到一串unix long类型数据

    获取后台timestamp类型数据,页面得到一串unix long类型数据,解决方案是用fastjson的@JSONField注解可以解决

     @JSONField(format ="yyyy-MM-dd HH:mm:ss")
         private Date createTime;
    
    

    相关文章

      网友评论

        本文标题:Mybatis+Thymeleaf开发遇到的几个问题笔录

        本文链接:https://www.haomeiwen.com/subject/oljkxqtx.html