markdown后端随笔
胡哨花里
这个作者很懒,什么都没留下…
展开
-
Spring JPA使用之快速阅览02 理解
1.在spring中引入配置 spring jpa的具体实现框架(mybatis或者hibernate)2.使用注解完成对ENTITY的一个成员域的映射3.对与查询方法的实现,使用自定义Interface+规范化命名方式实现CDRU所需的一些条件 底层实现会根据method的命名自动生成SQL语句4.使用@Version JPA就会帮你实现一个乐观锁(jpa有提供注解@Ver...原创 2019-07-23 22:18:31 · 122 阅读 · 0 评论 -
如何使用java生成excel报表并解决运行时三个class not found问题
1.先网上找个简易 简洁的基础案例https://blog.csdn.net/fanrenxiang/article/details/81066497试着CV 一下在新建的项目run一下好了,不出所料报错了报错一:Caused by: java.lang.ClassNotFoundException: org.apache.xmlbeans.XmlExceptionhttps://ww...原创 2019-08-13 21:41:25 · 1318 阅读 · 0 评论 -
守护线程
守护线程(即daemon thread),是个服务线程,准确地来说就是服务其他的线程,这是它的作用——而其他的线程只有一种,那就是用户线程。所以java里线程分2种,1、守护线程,比如垃圾回收线程,就是最典型的守护线程。2、用户线程,就是应用程序里的自定义线程。守护线程1、守护线程,专门用于服务其他的线程,如果其他的线程(即用户自定义线程)都执行完毕,连main线程也执行完毕,那么jvm...原创 2019-08-06 22:28:10 · 104 阅读 · 0 评论 -
简单例子看懂联合查询SQL
使用联合查询通常会比使用多表查询快:例子:select * from T1 ,T2 where T1.userid = T2.userid(其实这样的结果等同于select * from T1 inner join T2 on T1.userid=T2.userid )。把两个表中都存在userid的行拼成一行(即内联),但后者的效率会比前者高很多,建议用后者(内联)的写法。左联(lef...原创 2019-07-28 15:54:00 · 426 阅读 · 0 评论 -
String str = "str"和String str = new String("str")的区别
String str1 = “str1”:1、 在栈中创建str1的引用。2、 去常量池中查看是否有相同Unicode编码的字符串常量。如果有将str1指向该常量,如果没有则创建一个内容为”str1”的字符串常量,将str1的引用指向该常量。3、 如果str1进行了赋值str1= “123”,则栈中的str1的引用指向新的内容为“123”的字符串常量。4、 String str1 = “s...原创 2019-08-05 22:19:23 · 538 阅读 · 0 评论 -
索引在where处 从左到右兼容使用
对于复合索引:Mysql从左到右的使用索引中的字段,一个查询可以只使用索引中的一部份,但只能是最左侧部分。例如索引是key index (a,b,c).可以支持a | a,b| a,b,c 3种组合进行查找,但不支持 b,c进行查找当最左侧字段是常量引用时,索引就十分有效。...原创 2019-07-27 23:04:38 · 446 阅读 · 0 评论 -
TCP与UDP的一些知识点
Q:TCP如何保证可靠性?7种方式A:TCP通过校验和(判断这个数据的首部和数据本身有没有发生变化,有就不回复,等超时重传)超时重传(TCP发出一个段之后,他会启动一个定时器,等待目的端确定收到这个报文,如果不能及时收到一个确认回复,那么他会重发一个报文段)确认应答(收到之后,过很短一端时间,可能是做完包检验之后才发确认)序列号(通过序列号保证数据是正确的顺序交给应用层呢!)重发控制...原创 2019-07-31 20:32:57 · 208 阅读 · 0 评论 -
Spring JPA使用之快速阅览01 概览
1.值得注意:JPA 新增和修改用的都是save. 它根据实体类的id是否为0来判断是进行增加还是修改2.使用JPA实现CDRU以及分页功能的一个小案例3 =_=4.关于spring-data-jpa使用hibernate实现时,某个更新表结构的配置需要为nonehttps://www.cnblogs.com/feilong3540717/archive/2011/12/19/229303...原创 2019-07-22 23:23:33 · 102 阅读 · 0 评论 -
如何使用struts2之快速阅览01
1.在action类配置 @Action表明这是一个action了,使用其属性value表明其对应的URL映射,method方法对应要调用的哪个方法 使用@Result 的 name属性表明其方法调用完毕之后(也就是return 字符串A,这个字符串A的值跟name值做对比),根据此name 跳转到location属性配置的路径上2.在前端表单映射方面,struts2需...原创 2019-08-04 20:43:30 · 139 阅读 · 0 评论 -
CSRF跨站网站攻击+用springMVC拦截器拦截攻击
什么是跨站网站攻击?这种方式是利用网站对用户网页浏览器的信任实现的。例子:用户A不久前使用过网站B,然后点击到某个页面的连接C内,这个链接C是去访问网站B并且做一些A不知道的操作的。由于A不久前用过网站B,B以为这个A的真实操作,所以执行了。 这就是CSRF跨站网站攻击。具体说明在维基百科:https://zh.wikipedia.org/wiki/跨站请求伪造那么 如何使用spr...原创 2019-08-03 20:59:19 · 472 阅读 · 1 评论 -
数据库事务的隔离级别
未提交读–》可能产生脏读问题已提交度–》解决脏读问题,因为每个事务只能看到【 只能"看见"已经提交的事务所做的修改。】所以其他事物未提交前的修改他看不见(MYSQL不是这个级别,但很多其他的DB是默认这个)可重复读–》MYSQL默认这个级别在一个事务中,对于同一份数据的读取结果总是相同的,无论是否有其他事务对这份数据进行操作,以及这个事务是否提交。事务里面第一次select得到了10行,...原创 2019-07-30 20:59:56 · 137 阅读 · 0 评论 -
为什么我们要使用JNDI?
个人理解:就像某些配置如果我们嵌入到代码中,每当配置需要改动的时候就不得不改动代码重新编译,使用JNDI可以让我们使用外部配置的方式进行参数配置以实现其解耦。下面这个例子就是使用数据库驱动是否使用JNDI的解耦。直接使用JDBC或者通过JNDI引用数据源的编程代码量相差无几,但是现在的程序可以不用关心具体JDBC参数了。在系统部署后,如果数据库的相关参数变更,只需要重新配置 mysql...原创 2019-07-21 15:43:56 · 1941 阅读 · 4 评论 -
hibernate知识点的快速预览
hibernate的快速预览最近在工作中需要用到hibernate,且版本为hibernate3.x,总结一些hibernate的大体认知。1.对象在hibernate中 有三种状态 瞬时(管不了 自己new的) 持久 (跟hibernate相关联 修改POJO会导致表的修改) 托管(原本是跟hibernate拿的 现在不要hibernate的管制了 成为一个普通的jav...原创 2019-07-20 22:30:53 · 97 阅读 · 0 评论 -
session是什么?
session是一个类是客户端给服务端发送报文的时候自动生成的一个类对象这个类对象呢 是客户端第一次访问服务端的时候,由服务端生成的。服务端将这个session生成之后,就保留在服务器内直到客户端与服务端的连接断开。那么 下次的每次客户端访问服务端的时候,可以通过这个session获取一些既定/或者说是之前已经获取到、需要保留的信息。那么 服务器是如何知道客户端是不是...原创 2019-07-20 22:24:29 · 410 阅读 · 0 评论 -
如何实现文件的同步/异步上传
(JS使用的是JQuery)前端页面这么写就够了<!DOCTYPE html><html><head><meta charset="UTF-8"><title>上传excle表</title><script src="js/jquery-1.8.0.min.js"></script>&...转载 2019-07-24 15:02:22 · 1856 阅读 · 1 评论 -
Java的数组可以声明为volatile
Java的数组可以声明为volatileJava的数组可以声明为volatile以将任何数组声明为volatile,但是只有指向数组的引用会被volatile覆盖,对于单个数组元素的修改是不会被覆盖的http://yuanlei.me/2017/11/17/can-we-make-array-volatile-in-java/Java的volatile关键字是什么东西?volatile是...原创 2019-08-14 21:37:16 · 454 阅读 · 0 评论