zoukankan      html  css  js  c++  java
  • 随笔

    这篇文章记录下课程设计遇到的问题

    首先是在用ajax的时候遇到的问题

    以前用ajax的时候,是在输入框失去焦点的时候就执行的,比如输入邮箱后,验证输入的邮箱是否已经存在,如果存在就在页面上显示存在,但是我感觉这样还是存在一个问题,就算提示了邮箱已经存在,但是如果无视提示,还是去点击提交的话,这个时候做不做判断呢?如果还是做一次判断那么就重复判断了,为什么不在提交的时候在判断输入,验证通过再提交表单,否则就阻止表单提交。

    我这次就是这样做的,在点击提交的时候进行验证,除了对格式的验证外还有ajax对输入的邮箱进行判断是否存在

    首先出的问题是ajax的回调函数根本就没运行,但是后台却接受到了那个验证的请求,后来我就进行调试,发现情况确实是这样的,得到了数据,触发后台的action,但是没执行回调函数

    因为没执行回调函数,所以那段验证代码就被跳过了,所以验证通过,执行了表单的提交操作,

    在断点调试的时候看日志没有任何问题,但是我没调试的时候,再看日志发现了个奇怪的显示,

    后台有两个action被调用了,这是正确的,但是第一个action的日志没打印完,也就是说这个action没执行完下个action就来了,再后来有一次一个特殊的情况,回调函数突然执行了一次,但是只有一次,之后的几次测试还是刚开始的情况

    我刚开始以为是自己后台的代码出问题了,但是看了下代码,发现里面没有可能抛异常的情况,再经过几次断点调试后,突然想到了一个问题

    ajax  Asynchronous Javascript And XML

    第一个A 就是代表着异步,我突然意识到这个问题了,之前再用ajax的时候根本就没有想到这个问题,我用ajax一般就是认为不跳转页面在原页面上修改,

    但是ajax是一个异步操作,也就是说,它向后台发起了一个请求,但是不会停止动作来等待这个返回结果,当有结果返回的时候才会触发回调函数,这就解释后台两个action其中前一个只执行了一半的情况了,然后我就查找ajax能不能同步调用,发现确实可以 加上async:false 就可以了,这个修改后一切都没问题了

    说了这么多 总结起来就一点,我注意到了ajax的异步调用特性了,之前一直没注意

    第二个就是spring boots redis 的使用

    在pom中添加依赖

            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-redis</artifactId>
            </dependency>

    然后在配置类中配置redis

        @Bean
        public JedisConnectionFactory jedisConnFactory() {
            JedisConnectionFactory factory = new JedisConnectionFactory();
            factory.setPassword("luolei");
            return factory;
        }
    
        @Bean
        public RedisTemplate redisTemplate() {
            RedisTemplate template = new RedisTemplate();
            template.setConnectionFactory(jedisConnFactory());
            return template;
        }

    使用的时候用注解注入就可以了

        @Resource
        private RedisTemplate<String,User> redisTemplate;
  • 相关阅读:
    Condition Variables
    Cocos2d-x执行时错误:Cocos2d: Get data from file(xxx.xxx) failed!
    HDU
    Android context空指针异常
    linux c server and client 简单的通信
    UVM:8.4.3 用factory 机制创建实例的接口
    5.4 桥接模式(4.2)
    rac安装_grid安装校验报错之grid未建立信任关系
    git 使用ss5代理
    convmv 解决GBK 迁移到 UTF-8 ,中文 文件名乱码
  • 原文地址:https://www.cnblogs.com/luolei/p/4779547.html
Copyright © 2011-2022 走看看