• 项目中琐碎知识 (一)


    1 关于#号和$的区别
      # 号
      1使用#号传参有预编译效果 ,有效防止sql注入攻击  (PrepreadStatement 有预编译效果,防止sql注入攻击)
      2为参数添加一对""号
      约定:能用#号不用$
      $ 号
      只有以字段的名称为参数时(就是和数据库表中的字段名称一样时),才用$符


    2 不同的数据库对于大小写,有不同的要求
      操作系统中,windows不区分大小写,但是linux中严格区分
      严格区分大小写,保持一致统统小写(不然会出现你在windows中没有错,部署到LINUX上连服务器都起不来)


    3 Mybatis的mapper接口不允许多值传输
      思路:
      将多值封装为单值
      1 将值封装到对象中pojo
      2 将值封装为集合 数组array/List集合/Map集合


    4 Ecilipse中快捷键的使用
      ctrl+shift+y 大写 转 小写
      ctrl+shift+x 小写 转 大写


    5 limit使用方法(两个参数)
      limit在较大数据量的情况下,分页查询效率较高,因为它只查询当前页的数据
      limit (起始位置,查询记录数)


    6 项目中编码问题
      @ResponseBody进行数据解析时,如果解析的是对象(pojo/vo/List/Map..)
      默认格式都采用utf-8格式解析.
      如果解析的数据是String类型,则按照iso-8859-1格式进行解析.


    7 Spring创建代理对象的原则

      如果被代理者实现了接口,则采用JDK代理

      如果没有实现接口,则采用CGLIB代理

      特点:只有CGLIB可以强制使用, 强制使用JDK代理有风险


  • 相关阅读:
    JDK的几种分析工具
    心理价值
    通过Proxool辅助数据库优化
    人生缄言
    grep 用法
    多服务器快速定位
    RandomAccessFile读取远程系统日志
    20101116 视频处理几个常用指令
    Flickr架构
    JAVA正则表达式语法
  • 原文地址:https://www.cnblogs.com/misscai/p/9885486.html
Copyright © 2020-2023  润新知