- 浏览: 15922 次
- 性别:
- 来自: 上海
最新评论
文章列表
数据库锁行的另一种方式
update操作,若指定主键,只有一条记录,则锁行。若不指定,则锁表。
实际测试:
事务没有提交之前没有行改动
打开另一个会话,执行相同语句,等待一段时间后,提示如下错误。
回到第一个会话,提交事务
提交事务后,数据实际改动,另一个会话因为该行有其他事务没有提交所以在等待状态,直到超时后无法执行。
参考帖子:http://blog.csdn.net/winy_lm/article/details/50403264
举个例子: 假设商品表单products 内有一个存放商品数量的quantity ,在订单成立之前必须先确定quantity 商品数量是否足够(quantity>0) ,
然后才把数量更新为1。不安全的做法:SELECT quantity FROM products WHERE id=3;
UPDATE products SET quantity = 1 WHERE id=3;为什么不安全呢?少量的状况下或许不会有问题,但是大量的数据存取「铁定」会出问题。如 ...
参考:AndroidStudio 巧用 码云 + sourceTree 实现版本控制
首先用eclipse创建一个项目
再去码云上创建一个项目,得到一个仓库地址
打开SourceTree,clone码云提供的仓库地址,并选择本地仓库路径
克隆完成,会在本地路径看见项目
把第一步创建的java项目导出到刚才本地仓库路径下
然后打开SourceTree推送到码云上
推送完成后,用eclipse导入这个项目,完成
接下来的代码提交主要交给SourceTree来管理
eclipse修改访问的项目名
- 博客分类:
- java
转自:http://blog.csdn.net/louyingyuan/article/details/70169224
eclipse中Tomcat导入项目并且修改了项目名字,把项目add到Tomcat上面,发现现在的项目后面带了个括号显示原来项目的名字,并且在访问的时候也只能用原来的项目名访问,怎么办呢?
遇到这个问题,我也是在CSDN博客中找答案的,但是根据答案去实践,发现并不全面,以下给出比较全面的解决办法,个人实践得出,可能环境不相同或者情况不一样稍有偏差,但不妨一试
1.打开你的项目目录,找到一个.project文件,打开后修改<name> te ...
转自:http://blog.csdn.net/defonds/article/details/47974269
Eclipse Maven 开发一个 jee 项目时,编译时遇到以下错误:DescriptionResourcePathLocationTypeDynamic Web Module 3.0 requires Java 1.6 or newer.bdpline 1Maven Java EE Configuration ProblemDescriptionResourcePathLocationTypeOne or more constraints have not been ...
转自:http://blog.csdn.net/foreverling/article/details/51385128
1 基本介绍
每一个Java程序员都知道日志对于任何一个Java应用程序,尤其是服务端程序是至关重要的,而很多程序员也已经熟悉各种不同的日志库如java.util.logging、Apache log4j ...
<properties>
<springframework.version>4.3.6.RELEASE</springframework.version>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
...
Hibernate配置:
数据库连接配置文件,路径随意
名称为hibernate.cfg.xml
// 读取默认配置文件
cfg = new Configuration().configure();
名称为自定义
// 读取自定义配置文件
cfg = new Configuration().configure("自定义.xml");
hibernate.cfg.xml文件示例
<?xml version="1.0" encoding="UTF-8"?>
...
1、Linux环境变量:
第一步:vi + /etc/
JAVA_HOME=/usr/java/jdk1.8.0_131
JRE_HOME=/usr/java/jdk1.8.0_131/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH
第二步:
[root@localhost ~]# source ...
Hibernate模拟sql注入
不使用?占位符以及其他set之类的防止注入的方法,直接字符串拼接。不支持多语句hibernate会产生异常,异常类型:org.hibernate.QueryException: unexpected char: ';'
Mybatis模拟sql注入
不使用#{} ,而使用${},${}不参与sql编译并且不会加’’,和hibernate同
JavaScript是一种描述型脚本语言,它不同于java或C#等编译性语言,它不需要进行编译成中间语言,而是由浏览器进行动态地解析与执行。如果你不能理解javaScript语言的运行机制,或者简单地说,你不能掌握javascript的执行顺序,那你就犹如伯乐驾驭不了千里马,让千里马脱缰而出,四处乱窜。
那么JavaScript是怎么来进行解析的吗?它的执行顺序又是如何的呢?在了解这些之前,我们先来认识几个重要的术语:
1、代码块
JavaScript中的代码块是指由<script>标签分割的代码段。例如:
Java中的类可以是static吗?答案是可以。在java中我们可以有静态实例变量、静态方法、静态块。类也可以是静态的。
java允许我们在一个类里面定义静态类。比如内部类(nested class)。把nested class封闭起来的类叫外部类。在java中,我们不能用static修饰顶级类(top level class)。只有内部类可以为static。
静态内部类和非静态内部类之间到底有什么不同呢?下面是两者间主要的不同。
(1)内部静态类不需要有指向外部类的引用。但非静态内部类需要持有对外部类的引用。
public class Zi{
p ...
/****
* 根据经纬度 获取数据 工具类
* @author xuli
*
*/
public class LngLatDistanceUtils {
private static final Logger log = LoggerFactory.getLogger(LngLatDistanceUtils.class);
/***
* 经纬度计算距离
* @author xuli
*
* @param lat1 纬度1
* @param lng1 经度1
* @param lat2 纬度2
* @para ...
火星坐标和地球坐标的转换
- 博客分类:
- 地图
/****
* 坐标转换工具类
* @author wanwenjun
*
*/
public class TransLocationUtil {
private static double pi = 3.14159265358979324D;// 圆周率
private static double a = 6378245.0D;// WGS 长轴半径
private static double ee = 0.00669342162296594323D;// WGS 偏心率的平方
/**
* 中国坐标内
*
* @param lat ...
引起乱码原因为spring mvc使用的默认处理字符串编码为ISO-8859-1,具体参考org.springframework.http.converter.StringHttpMessageConverter类中public static final Charset DEFAULT_CHARSET = Charset.forName("ISO-8859-1");
第一种方法:
对于需要返回字符串的方法添加注解,如下:
/***
* 返回类型是string需要用produces进行转码,并格式化
* json格式化 可以用Gso ...