[置顶] Java Web学习(33): 阶段小项目使用MVC模型实现购物车效果

项目概述        前面的时候我写过一个商品浏记录的小例子,这一次我们使用实现购物车效果。前面的例子是: http://blog.csdn.net/erlian1992/article/details/52047258。这一次在此基础上来采用的是MVC三层模型实现 (JSP+Servlet+dao)来实现这个小项目。       三层架构:       JSP视图层      ...
阅读(4167) 评论(72)

mybatis在xml文件中处理大于号小于号的方法

背景:在mybatis映射文件中书写sql语句,where子句中经常会用到大于小于号,如果直接用大于小于号就会报错 问题:在xxxMapper.xml中的sql语句中,不能直接用大于号和小于号,需要使用转义字符如果用小于号会报错误如下:org.apache.ibatis.builder.BuilderException: Error creating documentinstance.  Caus...
阅读(298) 评论(0)

Spring Boot干货系列:常用属性汇总

原文地址:http://tengj.top/2017/02/28/springbootconfig/       附录A.常用应用程序属性摘自:http://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html       可以在application.properties...
阅读(365) 评论(0)

数据库连接池性能比对

和哥们讨论SpringBoot默认配置的时候,想到也是使用Spring默认数据源进行配置,想到了自己配置几种数据库连接池,他推荐给我的一篇好文章!原文:背景对现有的数据库连接池做调研对比,综合性能,可靠性,稳定性,扩展性等因素选出推荐出最优的数据库连接池 。     NOTE: 本文所有测试均是mysql库测试结论   1:性能方面 hikariCP>druid>tomcat-jdbc>dbcp>...
阅读(115) 评论(1)

用Maven自动生成带有sh和bat启动脚本的java应用

java做web开发,导致很多人不知道使用Java如何开发普通的项目,这里我们做个简单的介绍。 java项目一般都是使用脚本启动,比如windows上的bat文件和linux上的sh文件,而要写这些文件常常需要花费不少精力,很多人肯能会改这种文件,但是要凭空写一个就比较费劲。现在有maven插件帮我们解决这个问题,效果也是不要不要的,具体步骤如下: 第一步:使用maven自带骨架maven-arc...
阅读(304) 评论(0)

使用windows操作系统bat脚本运行打包好的可运行的jar包

今天群里问怎么使用bat文件运行打包好的可运行的jar包,在学习基础的时候学过很多Java中的命令,比如将.java源文件编译为.class字节码文件的javac命令,也学习过使用java命令运行类文件(也就是前面使用javac编译成功的类文件),也用过使用java -jar运行那些已经打包好的可运行jar文件,还接触过使用javap进行字节码文件反编译,可能后来我们使用Linux服务器后也会用到...
阅读(432) 评论(0)

分布式锁2 Java非常用技术方案探讨之ZooKeeper

前言:      由于在平时的工作中,线上服务器是分布式多台部署的,经常会面临解决分布式场景下数据一致性的问题,那么就要利用分布式锁来解决这些问题。以自己结合实际工作中的一些经验和网上看到的一些资料,做一个讲解和总结。之前我已经写了一篇关于分布式锁的文章: 分布式锁1 Java常用技术方案 。上一篇文章中主要写的是在日常项目中,较为常见的几种实现分布式锁的方法。通过这些方法,基本上可以解决我们日常...
阅读(143) 评论(0)

分布式锁1 Java常用技术方案

前言:      由于在平时的工作中,线上服务器是分布式多台部署的,经常会面临解决分布式场景下数据一致性的问题,那么就要利用分布式锁来解决这些问题。所以自己结合实际工作中的一些经验和网上看到的一些资料,做一个讲解和总结。希望这篇文章可以方便自己以后查阅,同时要是能帮助到他人那也是很好的。 =======================================================...
阅读(196) 评论(0)

分布式锁的多种实现方式

目前几乎很多大型网站及应用都是分布式部署的,分布式场景中的数据一致性问题一直是一个比较重要的话题。分布式的CAP理论告诉我们“任何一个分布式系统都无法同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance),最多只能同时满足两项。”所以,很多系统在设计之初就要对这三者做出取舍。在互联网领域的绝大多数的场景中,都需要牺牲强一致...
阅读(494) 评论(0)

谈谈Spring IOC是怎么实现解耦的

最近在看一些东西,突然想到一个面试的问题, SpringIOC是怎么实现解耦的?自己理解的并不好!!那么首先想到的是什么是耦合?怎么做才是解耦?我们都知道在进行软件设计式都遵循一个原则:高内聚,低耦合那么到底什么是内聚?什么耦合?怎么实现高内聚?怎么实现低耦合?以下偶都是从网上搜集的资料而已,整理一下。第一篇:java 高内聚,低耦合的理解 耦合:一个软件结构内不同模块之间互连程度的度量(耦合性...
阅读(368) 评论(0)

Union和Union All的区别

假设我们有一个表Student,包括以下字段与数据: [c-sharp] view plain copy drop table student;    create table student  (  id int primary key,  name nvarchar2(50) not null,  score number not null  );    insert into student...
阅读(295) 评论(0)

SQL语句优化技巧

1、应尽量避免在 where 子句中使用!=或2、对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。3、应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num列没有null值,然后这...
阅读(357) 评论(0)

mysql乐观锁总结和实践

上一篇文章《MySQL悲观锁总结和实践》谈到了MySQL悲观锁,但是悲观锁并不是适用于任何场景,它也有它存在的一些不足,因为悲观锁大多数情况下依靠数据库的锁机制实现,以保证操作最大程度的独占性。如果加锁的时间过长,其他用户长时间无法访问,影响了程序的并发访问性,同时这样对数据库性能开销影响也很大,特别是对长事务而言,这样的开销往往无法承受。所以与悲观锁相对的,我们有了乐观锁,具体参见下面介绍: 乐...
阅读(290) 评论(0)

mysql悲观锁总结和实践

最近学习了一下数据库的悲观锁和乐观锁,根据自己的理解和网上参考资料总结如下: 悲观锁介绍(百科):悲观锁,正如其名,它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此,在整个数据处理过程中,将数据处于锁定状态。悲观锁的实现,往往依靠数据库提供的锁机制(也只有数据库层提供的锁机制才能真正保证数据访问的排他性,否则,即使在本系统中实现了加锁机制,也无法保证...
阅读(277) 评论(0)

Mycat从入门到放弃

1.非分片字段查询Mycat中的路由结果是通过分片字段和分片方法来确定的。例如下图中的一个Mycat分库方案:根据 tt_waybill 表的 id 字段来进行分片分片方法为 id 值取 3 的模,根据模值确定在DB1,DB2,DB3中的某个分片如果查询条件中有 id 字段的情况还好,查询将会落到某个具体的分片。例如:MySQL>select * from tt_waybill where id ...
阅读(201) 评论(0)

Linux kill, killall, kill -9

1) 查看进程的方法: ps -ef  或者 ps auxroot     15087  0.0  0.0      0     0 ?        S    23:31   0:00 [kworker/1:1]root     15219  0.0  0.0      0     0 ?        S    23:36   0:00 [kworker/1:0]root     15460 ...
阅读(185) 评论(0)

IDEA集成Git版本控制工具—分享项目到Git私服上和从Git私服克隆项目到IDEA

如果使用的是Git私服,那么大概的流程和上面相似的。只说一下有所区别的地方:将IDEA中的项目推送到Git私服上在菜单上选择VCS,选择Import into Version Control,选择Create Git repository选择要上传的项目,点击OK我们创建成功后,可以去项目目录中查看,下面便是一个本地仓库了同时IDEA中弹出下面提示,我们选择右上角的绿色+号点击Configure选...
阅读(426) 评论(0)

IDEA集成Git版本控制工具—分享项目到GitHub上和从GitHub克隆项目

首先我们分享项目到GitHub上在菜单上选择VCS,在下拉列表中选择Import into Version Control,再选择Share project on Github输入仓库的描述信息,点击Share选择要提交的文件,忽略不需要提交的文件,填写注释,点击OK勾选,不添加vcs.xml,选择No我们可以看一下我们提交时忽略信息创建成功后,我们到GitHub上查看点击springboot,可...
阅读(356) 评论(0)

IDEA集成Git版本控制工具—配置Git和GitHub

IDEA配置GIt版本控制工具在配置之前,需要先说明的是本机已经安装好了git版本控制工具。在菜单上上选择File,在下拉菜单上选择Settings在左侧列表中选择Version Control,在下面选择Git选择git安装目录中的bin目录下的git.exe配置完毕之后,点击后面的Test,进行测试下面是测试成功的,可以看到本地git的版本号其实这一步已经是配置好了Git版本控制工具,但是ID...
阅读(391) 评论(0)

Java创建和解析Json数据方法(三)——json-lib包的使用

(三)json-lib包的使用        这篇笔记主要介绍json-lib包的创建和解析json数据的方式,主要是的JSONObject、JSONArray和Java对象:beans, maps, collections, java arrays等的转换。1.简介        json-lib包是一个构造和解析json的类库,提供将Java对象:beans, maps, collection...
阅读(742) 评论(0)

Java创建和解析Json数据方法(四)——Google Gson包的使用

(五)Google Gson包的使用1.简介Gson包中,使用最多的是Gson类的toJson()和fromJson()方法:        ①toJson():将java对象转化为json数据(一般为json格式的字符串)  (序列化)        ②fromJson():从json数据(json格式字符串)转为java对象   (反序列化)也可以使用JsonObject和JsonArray类...
阅读(784) 评论(0)
569条 共29页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:1029745次
    • 积分:16466
    • 等级:
    • 排名:第662名
    • 原创:465篇
    • 转载:101篇
    • 译文:0篇
    • 评论:528条
    博客专栏
    新浪微博