zoukankan      html  css  js  c++  java
  • JAVAEE学习笔记

    以后创建常量有三个名字:Constant   SystemParas   StaticValue

    上限或者下限命名      max_    min_

    包含的范围命名     first      last

    包含/排除范围命名  begin  end

    由于海外数据商偶尔会出现网络不稳定情况,HttpClient请求无限超时,导致定时任务下一次执行阻塞
     解决:设置httpclient超时时间,本次任务超时不会影响下次任务正常执行
    // nba quartz 开始更新

    JAVA中间件:

    1>远程过程调用和对象访问中间件:主要解决分布式环境下应用的互相访问问题,这也是支撑我们介绍应用服务化的基础。

    2>消息中间件:解决应用之间的消息传递、解耦异步的问题。

    3>数据访问中间件:主要解决应用访问数据库的共性问题的组件。

    SSH小问题集锦:

    1>大大简化mapper.xml写法之一:
     <sql id="Base_Column_List" >
             id, createdatetime, modifydatetime, name, pwd, create_time, update_time
      </sql>
     
     <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.String" >
            select 
            <include refid="Base_Column_List" />
            from tuser
            where id = #{id,jdbcType=VARCHAR}
      </select>
     
    2><servlet-mapping>
      /*是拦截所有请求,包括视图解析后跳转的.jsp页面,/则不会拦截视图解析后的.jsp页面!,但是其他的静态资源是比拦截的,直接映射到servlet中,
    然而servlet没有响应的路径,故404,但我觉的其实jsp是被拦截到了一个默认的servlet进行了解析~~~
     
    3>

     


    ByteArrayHttpMessageConverter: 负责读取二进制格式的数据和写出二进制格式的数据;
    StringHttpMessageConverter: 负责读取字符串格式的数据和写出二进制格式的数据;
    MappingJacksonHttpMessageConverter: 负责读取和写入json格式的数据;
    ResourceHttpMessageConverter:负责读取资源文件和写出资源文件数据;
    FormHttpMessageConverter: 负责读取form提交的数据(能读取的数据格式为 application/x-www-form-urlencoded,不能读取multipart/form-data格式数据);

                  负责写入application/x-www-from-urlencoded和multipart/form-data格式的数据;

    spring.factories文件里每一个xxxAutoConfiguration文件一般都会有下面的条件注解:
    @ConditionalOnBean:当容器里有指定Bean的条件下(仅仅在当前上下文中存在某个对象时,才会实例化一个Bean)
    @ConditionalOnClass:当类路径下有指定类的条件下(某个class位于类路径上,才会实例化一个Bean)
    @ConditionalOnExpression:基于SpEL表达式作为判断条件(当表达式为true的时候,才会实例化一个Bean)
    @ConditionalOnJava:基于JV版本作为判断条件
    @ConditionalOnJndi:在JNDI存在的条件下差在指定的位置
    @ConditionalOnMissingBean:当容器里没有指定Bean的情况下(仅仅在当前上下文中不存在某个对象时,才会实例化一个Bean)
    @ConditionalOnMissingClass:当类路径下没有指定类的条件下(某个class类路径上不存在的时候,才会实例化一个Bean)
    @ConditionalOnNotWebApplication:当前项目不是Web项目的条件下(不是web应用)
    @ConditionalOnProperty:指定的属性是否有指定的值
    @ConditionalOnResource:类路径是否有指定的值
    @ConditionalOnSingleCandidate:当指定Bean在容器中只有一个,或者虽然有多个但是指定首选Bean
    @ConditionalOnWebApplication:当前项目是Web项目的条件下。
    上面@ConditionalOnXXX都是组合@Conditional元注解,使用了不同的条件Condition

    hosts切换不能立即生效原因:

    发现日常开发/测试 中需要频繁切换hosts,尝试了HostAdmin、SwitchHosts!, HostManager等工具,但都不满意, 他们都有一个很大的问题:切换后不能立即生效,

    需要重启浏览器或者手动断开sockets才会生效。 这个 问题对我造成了很大的困扰, 因为日常工作中我会打开很多个tab,而重启浏览器意味着这些tab我都找不回来了;

    而手动断开sockets, 相当繁琐,有时候往往因为忘了手动去断开导致发现了很多"bug", 通过观察,发现浏览器不能立即生效是因为很多服务端为了性能使用了TCP复用,

    当hosts文件 被修改后,接着刷新浏览器页面,此时浏览器作为客户端继续重用之前的TCP连接, 因此无法生效。

    了解原因后解决方案就比较简单了:我只要在切换后断开相应的TCP连接即可:1、获取当前系统所有进程信息 2、获取当前系统所有的TCP连接 3、根据PID断开 某些TCP连接。

  • 相关阅读:
    智能问答系统构思(持续更新)
    软件测试
    Android实现智能问答机器人(四) -----连接我们的系统
    软件架构模式---分层架构V2.0
    软件架构模式---分层架构
    PHP文件上传示例
    PHP文件上传常见类型checklist
    PHP操作Mysql数据库查询数据实例
    PHP操作Mysql数据库更新数据实例
    PHP 操作Mysql数据库删除数据示例
  • 原文地址:https://www.cnblogs.com/cangqiongbingchen/p/4726347.html
Copyright © 2011-2022 走看看