GET 和 POST 的区别? get参数通过url传递,post放在request body中. get请求在url中传递的参数是有长度限制的,而post没有. get比post更不安全,因为参数直接暴露在url中,所以不能用来传递敏感信息. GET和POST本质上就是TCP链接,并无差别.但是由于HTTP的规定和浏览器/服务器的限制,导致他们在应用过程中体现出一些不同. GET产生一个TCP数据包:POST产生两个TCP数据包. 对于GET方式的请求,浏览器会把http header和dat…
Mysql的主键选择(主键自增,UUID,snowflake)? 使用自增长做主键的优点:1.很小的数据存储空间2.性能最好3.容易记忆使用自增长做主键的缺点:1.如果存在大量的数据,可能会超出自增长的取值范围2.很难(并不是不能)处理分布式存储的数据表,尤其是需要合并表的情况下3.安全性低,因为是有规律的,容易被非法获取数据使用GUID做主键的优点:1.它是独一无二的,出现重复的机会少2.适合大量数据中的插入和更新操作,尤其是在高并发和分布式环境下3.跨服务器数据合并非常方便4.安全性较高使用…
项目中用到的不常见sql语法 1:空值不在前的排序 select a.* from WZX_SCZY A order by SCZY_START_TIME desc nulls last (不加nulls last的时候 空值会在前面)      --oracle 2:Oracle数据库查询两个表中差异值的优秀解法(MINUS) 表A中记录为1 2 3 9 表B中记录为2 3 4 5 现在要查询出1 9,可以用下面三个语句 (1)select a.num from A a where a.num…
如果一个接口有2个不同的实现, 如何Autowire某一个指定的实现? 1.通过增加@Qualifier(实现类的名字): @Autowired @Qualifier("GirlStudentImpl") private Student student; 2.也可以通过@Resource(name=”*“)装配,则编程更加简洁: @Resource(name="GirlStudentImpl") private Student student; Spring注解(a…
为什么说Mybatis是半自动ORM映射工具?它与全自动的区别在哪里? Hibernate属于全自动ORM映射工具,使用Hibernate查询关联对象或者关联集合对象时,可以根据对象关系模型直接获取,所以它是全自动的.而Mybatis在查询关联对象或关联集合对象时,需要手动编写sql来完成,所以,称之为半自动ORM映射工具. 物理分页和逻辑分页的区别?  mybatis自带的分页RowBounds;//逻辑分页 Java:            RowBounds rb=new RowBound…
先附一张JAVA虚拟机内存结构图: 其中JAVA虚拟机的线程问题<为什么JAVA虚拟机分为线程共享和非线程共享?>一文中已经有详细介绍,本文从面试中常问的一些JAVA虚拟机问题出发,主要从 堆空间的内存分配 JVM class类加载机制 JVM中的GC垃圾回收机制 三个大方面进行详细说明 堆空间的内存分配 HotSpot JVM①把年轻代分为了三部分:1个Eden区和2个Survivor区(分别叫from和to).默认比例为8:1,为啥默认会是这个比例,接下来我们会聊到.一般情况下,新创建的对…
1.0转义符 \n:换行 ,\n的作用和print后面的ln相同,可酌情使用 \t:一个制表位(一系列空格) 例: public class Schedule{ public static void main(String[] args){ System.out.println("\t\t*课程表*"); System.out.println("--------------------------------------------------"); System.…
Servlet属于线程安全的吗? Servlet不是线程安全的! 谈谈转发和重定向的区别 请求转发: request.getRequestDispatcher("/king_l2lu.jsp").forward(request,response); 重定向: response.sendRedirect(request.getContextPath + "/king_l2lu.jsp"); 谈谈jsp的9大内置对象 1.request对象 request 对象是 ja…
sleep和wait的区别? sleep()来自Thread类,和wait()来自Object类.调用sleep()方法的过程中,线程不会释放对象锁.而 调用 wait 方法线程会释放对象锁 sleep()睡眠后不出让系统资源,wait让其他线程可以占用CPU sleep(milliseconds)需要指定一个睡眠时间,时间一到会自动唤醒.而wait()需要配合notify()或者notifyAll()使用 notify()和notifyAll()有什么区别? 如果线程调用了对象的 wait()…
简单介绍一下 Linux 文件系统? 在Linux操作系统中,所有被操作系统管理的资源,例如网络接口卡.磁盘驱动器.打印机.输入输出设备.普通文件或是目录都被看作是一个文件. 也就是说在LINUX系统中有一个重要的概念:一切都是文件.其实这是UNIX哲学的一个体现,而Linux是重写UNIX而来,所以这个概念也就传承了下来.在UNIX系统中,把一切资源都看作是文件,包括硬件设备.UNIX系统把每个硬件都看成是一个文件,通常称为设备文件,这样用户就可以用读写文件的方式实现对硬件的访问. 文件类型与…