- 浏览: 29989 次
最新评论
-
tester_lo:
可以用,谢谢分享
Eclipse+Maven+jetty开发第一个web工程(下篇)
文章列表
最近这半年多的时间做App服务端比较多(产品日活在百万级,易观国际移动App月份排名稳定在100~200之间),加上在上一家公司也重构过App服务端,所以在App服务端开发方面也积累了一些经验。不过我的职业生涯最初是做纯Web的服务端开发,二者在开发流程、架构设计、后期维护都存在一定差异。最近想了解和借鉴业界最流行的App采用的一些技术方案,这里面又包括两层意思,一是哪些App属于业界最流行的App,二是技术方案的范畴具体指什么。
第一,业界最流行App的判断标准。这里所谓的业界最流行,指的是用户数最多的App,原因在于用户数最多的App
return和finally的执行顺序问题
- 博客分类:
- Java
一、引言
当try里面有return,finally里面也有return时会有怎么的结果呢?
二、代码
话不多说,直接用代码进行测试。测试代码如下,
public class FinallyTest {
private static final FinallyTest instance = new FinallyTest("instance");
/**
* @param value
*/
private FinallyTest(String value) {
super();
...
Java类锁和对象锁实践
- 博客分类:
- Java
一、前言
之前对类锁和对象锁是否是互斥的不是太确定,因此决定编写相关的程序进行实践一下。编写前对相关定义约定约定如下:
1. 类锁:在代码中的方法上加了static和synchronized的锁,或者synchronized(xxx.class)的代码段,如下文中的increament();
2.对象锁:在代码中的方法上加了synchronized的锁,或者synchronized(this)的代码段,如下文中的synOnMethod()和synInMethod();
3.私有锁:在类内部声明一个私有属性如private Object lock,在需 ...
JDK源码阅读(序)
- 博客分类:
- JDK源码
最近想加深对JDK方面的了解,所以准备花点时间来阅读JDK的源码。主要阅读java.*开头的包的部分,从包名来看,主要分为这十二个部分:
一). java.applet.*:提供创建 applet 所必需的类和 applet 用来与其 applet 上下文通信的类
二). java.awt.*:包含用于创建用户界面和绘制图形图像的所有类。
三). java.beans.*:包含与开发 beans 有关的类,即基于 JavaBeansTM 架构的组件
四). io相关
1)java.io.*:通过数据流、序列化和文件系统提供系统输入和输出。 除非另有说明,否则向 ...
一、.内部类:成员式内部和局部式内部类
1. 成员式内部类:包括静态内部类和成员类别类
1) 静态内部类:
package abc;
class Outter{
static class Inner{
}
}
完整类名是abc.Outter.Inner,编译后是Outter$Inner.class。外部类加载时 ...
终端输入crontab -e,加入下面一行代码:
find /usr/local/backup -mtime +6 -name “*.sql” -exec rm -rf {} \;
表示删除/usr/local/backup目录下6天外的*.sql文件
Hibernate小结
- 博客分类:
- hibernate
一、get和load的区别
1). 使用get方法获取持久化对象时,首先找session缓存(Hibernate一级缓存)是否有该对象,如果有,则获取该对象;如果没有,就从数据库去取。如果数据库中没有,返回null;
2) load方法:同样先在session缓存查找是否有该对象,如果找不到则在sessionfactory缓存(Hibernate二级缓存)查找,再找不到则从数据库去取。如果数据库没有,则抛出ObjectNotFoundException(在访问该对象的非主键属性时抛出,不是在创建对象时抛出)
二、复合主键
1).复合主键必须是一个实现Serializa ...
一、环境:
操作系统:windows 7旗舰版 64bit
IDE:eclipse Luna Release (4.4.0)
创建第一个HIbernate+Maven工程时,遇到如下异常:
hibernate-core: 3.5.4-Final
(1)hibernate.cfg.xml路径问题:
Exception in thread "main" org.hibernate.HibernateException: /hibernate.cfg.xml not found
原因主要是HIbernate的默认配置文件hibernate.cfg.xml路径不可变 ...
1. 首选项中没有web子项
今天在网上下载了一个eclipes 4.4.0的luma的版本,准备修改jsp的默认编码,打开windows-->Preferenecs却没有web子项,根据下面的百度知道链接
http://zhidao.baidu.com/question/373594717.html?fr=qrl&index=1&qbl=topic_question_1&word=eclipse%20%CA%D7%D1%A1%CF%EE%C0%EF%C3%BB%D3%D0web
通过如下操作步骤添加了子项:
单击“H ...
20131015与经理谈话整理
- 博客分类:
- 职业生涯
1. 技术人员大概分为五个方向:
(1)架构师;
---外面的招聘描述中,需要哪些技能,逐步提高,
---对新技术敏感;
(2)转产品;
(3)项目管理;
(4)技术管理;
(5)创业;
2. 你做一件事,比别人做同一件事的优势在哪里?
一件普通平凡的事,如何做得更优秀,更不同寻常,更有效率?
如果在公司里,你和同等/类似岗位的同事相比,有什么优势?和刚入职的同等年限的同事相比,如果优势仅仅在于对系统更熟悉一点,那么是值得反思的;
安排下来的工作,无需多作 ...
1、运行期
虚拟机会把“热点代码”编译成与本地平台相关的机器码,并进行各种层次的优化,完成这个任务的编译器称为即时编译器(Just In Time Compiler,JIT)。
所谓“热点代码”,是指:(1)被多次调用的方法;(2)被多次执行的循环体(依然会以整个方法为编译对象)。
由于HotSpot虚拟机使用基于计数器的热点探测方法,存在热度衰减(Counter Decay)和半衰周期。只要系统运行时间足够长,绝大部分方法都会被编译成本地代码。
2、解释器与编译器
HotSpot虚拟机同时包含解释器和编译器。事实上,HotSpot内置了两个即时编译器:Clie ...
1、编译期
定义:把*.java文件转换成*.class文件的过程。
虚拟机设计团队把对性能的优化集中到了后端的即时编译器中,这样可以让那些不是由Javac产生的Class文件(如JRuby、Groovy等语言的Class文件)也同样能享受到编译器优化所带来的好处。
可以说,Java中即时编译器在运行期的优化过程对于程序运行来说更重要,而前端编译器在编译期的优化过程对于程序编译来说关系更加密切(如编译器的“语法糖”)。
2、常量折叠 P265
形如int a = 1 + 2;
在编译期间进行了常量折叠, ...
1、Class文件以何种格式存储,类型何时加载、如何连接,以及虚拟机如何执行字节码指令等都是由虚拟机直接控制的行为;能通过程序进行操作的,主要是字节码生成与类加载器这两部分的功能。
2、Web服务器的类加载的特性:
(1)部署在同一个服务器上的两个web应用程序所使用的Java类库可以实现相互隔离;
(2)部署在同一个服务器上的两个Web应用程序所使用的Java类库可以互相共享;
(3)服务器所使用的类库应该与应用程序的类库互相独立;
(4)支持JSP
1、Java虚拟机的执行引擎都是一致的:输入的字节码文件,处理过程是字节码解析的等效过程,输出的是执行结果。
2、栈帧
(1)每个方法从调用开始到执行完成的过程,就对应着一个栈帧在虚拟机栈里面从入栈到出栈的过程。栈帧存储了方法的局部变量表、操作数栈、动态连接和方法返回地址等信息。
(2)方法返回地址:只要本方法的异常表中没有搜索到匹配的异常处理器,那么将不会给它的上层调用者产生任何返回值。
3、方法调用
一切方法调用在Class文件里面存储的都只是符号引用,而不是方法在实际运行时内存布局中的入口地址(即直接引用),在类加载期间甚至到运行期间才能确定目标方法的直接引用。 ...
1、类的生命周期
2、虚拟机规范严格控制规定了有且只有四种情况必须立即对类进行“初始化”(而加载、验证、准备自然需要在这些之前开始)。
(1)使用new关键字实例化对象、读取或设置一个类的静态字段 ...