- 浏览: 46272 次
最新评论
文章列表
java代码优化提点
- 博客分类:
- javaweb
http://blog.csdn.net/boonya/article/details/13622169
下面文字来自《疯狂java讲义》:
1.类的加载、连接和初始化
当系统主动使用某个类,如果该类还未加载到内存中,系统会加载、连接、初始化三个步骤。1.类的加载将类的Class文件读入内存中,并为之创建一个java.lang.Class对象。Class文件的来源:(1)从本地加载class文件(2)从jar包中加载(系统api)(3)从网络加载2.类的连接:连接阶段负责将类的二进制数据合并到JRE中。3.类的初始化类的初始化时机:(1)创建类的实例:new操作符、反射创建实例、通过反序列化;(2)调用某个类的静态方法;(3)访问某个类的静态属性(final属性除外)。
2.new操作符和n ...
jdk配置环境变量的集中方法
- 博客分类:
- server
1. ~/.bashrc 文件
2. /etc/environment 文件
3. /etc/profile文件
Maven 确确实实是个好东西,用来管理项目显得很方便,但是如果是通过 Maven 来远程下载 JAR 包的话,我宿舍的带宽是4兆的,4个人共用,有时候用 Maven 来远程下载 JAR 包会显得很慢,一般我发现下载速度不明显的时候,我就 Ctrl + C 来终止它的下载。然后改用手动来下载,因为用迅雷一类的工具来下载会快很多。我机子上 Maven 的本地仓库的很多 JAR 包我都是手动下载的。手动下载的话就会带来一个问题,就是,怎么样手动将下载下来的 JAR 包添加到 Maven 的本地仓库。关于这个,网上也有很多资料。我说下我的做法。
1、表的主键、外键必须有索引;2、数据量超过300的表应该有索引;3、经常与其他表进行连接的表,在连接字段上应该建立索引;4、经常出现在Where子句中的字段,特别是大表的字段,应该建立索引;5、索引应该建在选择性高的字段上;6、索引应该建在小字段上,对于大的文本字段甚至超长字段,不要建索引;7、复合索引的建立需要进行仔细分析;尽量考虑用单字段索引代替:A、正确选择复合索引中的主列字段,一般是选择性较好的字段;B、复合索引的几个字段是否经常同时以AND方式出现在Where子句中?单字段查询是否极少甚至没有?如果是,则可以建立复合索引;否则考虑单字段索引;C、如果复合索引中包含的字段经常单独出现在 ...
序列使用cache值的缺陷
- 博客分类:
- database
列cache的默认值是20,使用cache的好处是:可以加快获得序列值。但坏处是如果非正常关库时,保存在内存中的所有用户的序列值,全部丢失,导致序列值跳跃。甚至把cache值保持到sharepool中,异常关机照样会丢失序列值。所以,shut abort慎用,或者用之前使用以下sql,把序列cache值不为0的改为0,等库重启后,再改为原值。sys用户下执行:SQL> set pages 9000SQL> set lines 400SQL> spool seq_cache.txtSQL> select 'alter sequence '||sequence_owner| ...
Oracle重建索引 约束
- 博客分类:
- database
rebuild索引
alter index indexname rebuild online;
同时删除oracle中有主外键关系的两张表select constraint_name from user_constraints WHERE table_name ='表名';--得到约束名字----先删除约束,然后删除表alter table table_name drop constraint 约束名(cascade);----使约束暂时无效alter table table_name disable/enable constraint constraint_name;无效以后也 ...
查看Linux配置信息
- 博客分类:
- os
linux如何查看CPU,内存,机器型号,网卡信息
做性能测试需要记录性能测试机器的硬件信息,现将需要的命令总结如下:查看CPU信息(型号)# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c 8 Intel(R) Xeon(R) CPU E5410 @ 2.33GHz(看到有8个逻辑CPU, 也知道了CPU型号)# cat /proc/cpuinfo | grep physical | uniq -c 4 physical id : 0 4 physical id ...
怎样证明HashMap不是线程安全的
- 博客分类:
- javaweb
HashMap用在方法内部并且不传到方法外面可以用HashMap,如果HashMap作为类的成员变量或静态属性
要为HashMap加线程安全锁Collections.synchronizedMap(new HashMap());
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
public class Test {
public static final Map<String, String> hashMap = Collections.synchro ...
linux中使用密钥远程连接的配置
- 博客分类:
- server
服务器端设置
使用公钥认证需要对服务器进行一些设置。修改 /etc/sshd_config 的以下配置。
RSAAuthentication yes # 启用 RSA 认证PubkeyAuthentication yes # 启用公钥认证PasswordAuthentication no # 禁止密码认证
然后重新启动 sshd。
/et ...
为GlassFish配置多个Domain
- 博客分类:
- server
在开发的过程中,我们可能需要将生产环境和调试环境分开来,这样才能保证安全性,但是安装两个glassfish又不太可能,因为它太庞大了。另外做为一个工程发布也不太方便,每次都要将工程名改来改去,并且绑定的EJB在同一个域内里是不能同名的。这样的话,要改变的东西实在是太多了。 我们可有以第三种方法,那就是为glassfish添加另外的domain,一个domain跑我们的真实环境,一个domain跑我们的测试环境,因为是同一个glassfish,所以也不会存在从测试到真实环境的移植问题。以后只要改一个domain就可以了。我们在安装glassfish的 ...
LoadRunner测试步骤
- 博客分类:
- javaweb
1.打开HP Virtual User Generater
<1>File-->New 弹出New Virtual User框;
<2>选择Web(HTTP/HTML) 弹出一个对话框,点取消,在页面上开始写脚本,并保存到指定位置;
<3>选择Vuser-->Compile 编译、运行;
<4>选择Tools-->Create Controller Scenario...,指定并发用户数以及相关配置,点击ok,选择保存
场景(.lrs格式文件)。
2.打开HP LoadRunne ...
*****************
文件操作命令
*****************
===========start和@
说明:运行sql脚本
案例:sql>@ d:\a.sql 或者 sql>START d:\a.sql
===========edit
说明:该命令可以编辑指定的sql脚本
案例:sql>edit d:\a.sql
===========spool
说明:该命令可以将sql*plus屏幕上的内容输出到指定的文件中去
******************
登录操作命令
******************
=== ...
Xcode4.6快捷键
- 博客分类:
- ios
cmd键(键盘ctrl和alt中间的那货) option键就是Alt键常用1. cmd + c 复制2. cmd + v 粘贴3. cmd + z 撤销编译1. cmd + b 编译但不运行
2. cmd + r 编译并直接运行
注释和提示1.cmd + / 注释和反注释2.esc 提示功能,提示函数参数等(推荐)
3.tab或空格 自动完成提示
代码编辑:
1.option+左箭头 上一单词
2.option+右箭头 下一单词
3.ctrl+a 行首
4.ctrl+e 行末
5.文件开头 HOME
6.文件结束 END
...
创建一个简单的Java工程:mvn archetype:create -DgroupId=com.mycompany.example -DartifactId=Example
创建一个java的web工程:mvn archetype:create -DarchetypeGroupId=org.apache.maven.archetypes -DarchetypeArtifactId=maven-archetype-webapp -DgroupId=com.mycompany.app -DartifactId=my-webapp
打包:mvn package
编 ...