`
文章列表
1. 在Eclipse 中修改项目名 没错这种方法跟你预料的一样简单,当项目已经导入到 Eclipse 之后,只需要做两个事情 1.1 改项目文件夹名称 选中项目,按 F12 ,改名。 多数人改项目名只做了这一步,但是后面发现并没有起到真正 ...
方法一:如果曾经的数据都不需要的话,可以直接清空所有数据,并将自增字段恢复从1开始计数 truncate table 表名   方法二: dbcccheckident ('table_name', reseed, new_reseed_value) 当前值设置为new_reseed_value。如果自创建表后没有将行插入该表,则在执行DBCC CHECKIDENT后插入的第一行将使用 new_reseed_value作为标识。否则,下一个插入的行将使用 new_reseed_value + 1。如果 new_reseed_value的值小于标识列中的最大值,以后引用该表时将产生26 ...
不重启Tomcat有两种方式:热部署、热加载。 热部署:容器在运行时重新部署整个项目。 这类环境下,一般整个内存会被清空,重新加载。这类方式有可能造成sessin丢失等问题。tomcat 6以上已解决该问题。 热加载:最好是在调试过程中使用,以免整个项目加载。Debug模式支持热加载。 容器在运行时重新加载编译后的类。在这类环境下,内存不会被清空,sessin不会丢失,但容易造成内存溢出,或者找不到方法。一般转变类的布局和模型就会有异常,在已经有的变量和方法中转变是不会出问题的。 热加载配置如下:在tomcat的server.xml中,
在实际项目中,每次修改完ftl文件,都要重新启动tomcat才可以看到所修改的内容。   一般来讲,模版文件改动不会很频繁,在一个流量非常大的网站中,如果频繁的读取模版文件会对系统造成极大负担,因此 FreeMarker 通过将模版文件的内容进行缓存,来降低模版文件读取的频次,降低系统的负载。   当处理某个模版时,FreeMarker 直接从缓存中返回对应的 Template 对象,并有一个默认的机制来保证该模版对象是跟模版文件同步的。freemarker.properties中,template_update_delay 用来指定更新模版文件的间隔时间,相当于多长时间检测一下是否 ...
本文介绍如何从GitHub上获取spring源码,并且使用Gradle的构建来构建项目。   1.安装GitHub 去GitHub官网上下载GitHub,windows系统的对应下载地址是:http://windows.github.com/,下载后双击安装。   2.安装Gradle 从http://www.gradle.org/downloads下载Gradle。下载后将文件解压到指定目录中,例如:D:\gradle-2.7,然后配置环境变量。 1)根据对应目录创建GRADLE_HOME系统变量,我这里的值为D:\gradle-2.7。 2)将%GRADLE_HOME%\bi ...
服务器架构 业务从发展的初期到逐渐成熟,服务器架构也是从相对单一到集群,再到分布式服务。 一个可以支持高并发的服务少不了好的服务器架构,需要有均衡负载,数据库需要主从集群,nosql缓存需要主从集群,静态文件需要上传cdn,这些都是能让业务程序流畅运行的强大后盾。 大致需要用到的服务器架构如下: 服务器 均衡负载(如:nginx,阿里云SLB) 资源监控 分布式 数据库 主从分离,集群 DBA 表优化,索引优化,等
在spring中,事务配置可以用注解的方式@Transactional,但是要想要真正发挥事务作用,还需要在配置文件中加如下配置: <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager" ...
Tomcat 日志分为5类 : catalina  Cataline引擎的日志文件,文件名catalina.日期.log; localhost  Tomcat下内部代码丢出的日志,文件名localhost.日期.log(jsp页面内部错误的异常,org.apache.jasper.runtime.HttpJspBase.service类丢出的,日志信息就在该文件!); manager   Tomcat下默认manager应用日志,文件名manager.日期.log; admin    host-manager   对应在logging.properties文件中 1cata ...
1. 登录Linux,切换到root用户 su root 获取root用户权限,当前工作目录不变(需要root密码)或sudo -i 不需要root密码直接切换成root(需要当前用户密码) 2. 在usr目录下建立java安装目录 cd /usrmkdir java 3.将jdk-8u60-linux-x64.tar.gz拷贝到jav ...
在生产环境中tomcat内存设置不好,很容易出现内存溢出。造成内存溢出的原因不一样,处理方式也不一样。 常见的一般会有下面三种情况: 1.OutOfMemoryError: Java heap space 2.OutOfMemoryError: PermGen space 3.OutOfMemoryError: unable to create new native thread. 对于前两种情况,在应用本身没有内存泄露的情况下可以用设置tomcat jvm 参数来解决。(-Xms -Xmx -XX:PermSize -XX:MaxPermSize) 最后一种可能需要调整操作系统 ...
APP端接口在影像上传时,直接返回500。但其他接口都是正常的,只有在上传影像的时候,才会500。而且在本地调试也都是正常的。起初怀疑是网络问题,是否是运维将这个请求禁掉了。在排除掉这种可能性之后,发现是测试服务端的磁盘满了。   使用命令df -hl查看系统磁盘占用率 [root@usr /]# df -hl Filesystem    Size  Used Avail Use% Mounted on/dev/xvda1    20G   20G  0  100% /tmpfs        1.9G     0  1.9G   0% /dev/shm/dev/xvdb1    2 ...
案例1: > 1. 用在应用服务器的日志记录,查找起来比文本灵活,导出也很方便。> 2. 用在一些第三方信息的获取或者抓取,因为MongoDB的schema-less,所有格式灵活,不用为了各种格式不一样的信息专门设计统一的格式,极大得减少开发的工作。 案例2> 主要用来存储一些监控数据,No schema 对开发人员来说,真的很方便,增加字段不用改表结构,而且学习成本极低。 案例3> 使用MongoDB做了O2O快递应用,将送快递骑手、快递商家的信息(包含位置信息)存储在 MongoDB,然后通过 MongoDB 的地理位置查询,这样很方便的实现了查找附近的商 ...
想要做到:一行命令直接部署到服务器。 首先要在Maven(POM.XML)中引入这个插件: <build> <plugins> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> ...
浏览器发起请求,Web服务器会开一个线程处理,该线程会等待处理结果,自身处于阻塞状态,处理完把处理结果返回浏览器。但是,因为请求处理线程的总数是有限的,如果类似的请求多了,所有的处理线程处于阻塞的状态,那新的请求也就无法处理了,也就所谓影响了服务器的吞吐能力。要更加好地发挥服务器的全部性能,就要使用异步。 异步请求最大的不同在于请求处理线程调用了之后直接返回,而不等待,这样请求处理线程就“自由”了,它可以接着去处理别的请求,当后端处理完成后,会钩起一个回调处理线程来处理调用的结果,这个回调处理线程跟请求处理线程也许都是线程池中的某个线程,相互间可以完全没有关系,由这个回调处理线程向浏览器返 ...
java.util.concurrent中主要包括三类工具,Executor Freamework,并发集合(Concurrent Collection),以及同步器(Synchronizer)。   Future接口表示异步计算的结果。计算完成后只能使用 get 方法来获取结果,如有必要,计算完成前可以阻塞此方法。取消则由 cancel 方法来执行。还提供了其他方法,以确定任务是正常完成还是被取消了。一旦计算完成,就不能再取消计算。如果为了可取消性而使用 Future 但又不提供可用的结果,则可以声明 Future<?> 形式类型、并返回 null 作为底层任务的结果。 ...
Global site tag (gtag.js) - Google Analytics