- 浏览: 33275 次
- 性别:
- 来自: 上海
最新评论
-
hip0216:
大哥,能把配置文件给贴出来吗
关于在后台实现前台表单的格式验证设计(Annotation+spring AOP)
文章列表
1、先上图,看下实现效果
2、整类实现
class Page {
private $total; //总数量
private $limit; //返回mysql的limit语句
private $pageStart; //开始的数值
private $pageStop; //结束的数值
private $pageNumber; //显示分页数字的数量
private $page; //当前页
private $pageSize; //每页显示的数量
private $pageToatl; //分页的总数量
private $page ...
在网站http://www.bs86.com上做了一个基于http协议上传的小程序
需要的jar包:
1.httpclient-4.1.1.jar
2.httpclient-cache-4.1.1.jar
3.commons-logging.jar
4.commons-io-2.0.1.jar
5.commons-codec-1.3.jar
package com.fileUpload;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
im ...
基本知识:一般而言,不变类没有状态。单例类不同,单例类含有状态,而且含有非常重要的状态,一般是需要共享的资源,譬如系统的配置信息等。
在Java中,一个类有100个实例,会导致状态有100个拷贝,但方法在内存中只存储一次。一个不变类无论有多少个实例,它所含有的方法代码只会出现在内存中一次而已。
如果一个Class没有成员变量,只有成员方法,那么这个对象在内存中应该是1Byte。方法在内存中只存储一次。所以,这样的类,在创建和销毁上的开销可以忽略不计,完全交给JVM就可以了。
Effective Java中的建议:不要作优化。我们的设计思路还是应该遵循简单的、易于理解的思路。
...
负载均衡
web服务器
缓存服务器(静态资源缓存服务器,数据缓存服务器)
静态资源服务器
应用服务器(横向模块划分)
数据服务器(横向与纵向切分,按用户id,按功能块)
Lighttpd+Squid+Apache搭建高效率Web服务器
架构原 ...
特性一:
看一个构造的简单事例:
(此示例来与网上,这里借用下)
public class Father {
private String name="FATHER";
public Father(){
whoAmI();
tellName(name);
}
public void whoAmI(){
System.out.println("Father says, I am " + name);
}
public void tellName(S ...
Hibernate屏蔽不同的数据库差异,JPA屏蔽不同的ORM差异。
关于DDD理解:
应用领域驱动设计原因:
1.简化开发
2.解耦
3.符合敏捷开发的思想
5.延长软件的生命周期(简化后期维护)
说白了,中心思想就是简化(维护聚合根)
我们在设计的时候,抓住类之间的高聚合性,以减少类之间的耦合,而我们之后需要维护的只是聚合根
领域驱动设计把业务层分为应用层和领域层。应用层只是一种指挥的角色,无状态转换,无实体的层。而领域层包含po,vo,service。
开发设计中需要做的:
1.遵循敏捷开发的思想(迭代开发),把每块功能独立出来(最佳实现模式:工厂方法模式)
如:权限、缓存、加密算法、日志、安全登录验证,对象操作可单独实现,不依靠任何其它类,实现与其 ...
1.目录结构
2.java测试码
package com.test.main;
import java.net.URL;
import org.slf4j.ILoggerFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext ...
- 2009-11-22 18:51
- 浏览 5227
- 评论(0)
关于在后台实现前台表单的格式验证:
因为对于一个web工程来说,安全是比较重要的,view中实现的js验证,对于一个hacker或者说是一个专业的破坏者来说是不会起到任何作用的,最直接的,它可以完全的自编浏览器,跳过js的验证,丢入n多不合规则的数据,那带来的安全隐患时巨大的,如何在后台实现完美的验证,而不必要写太多的代码是极其重要的。
1.思路结构图
2.源码实现
Annotation
package com.test.main;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementT ...
- 2009-11-22 18:44
- 浏览 2670
- 评论(1)
因为token本人不是很喜欢,忘更多的朋友提出自己的宝贵见解
1、struts中的重复提交问题可以说是一个很大的缺点,由于没有实在的去研究过struts,但是觉得完全可以把request对象继续往下传递,即产生了一种解决办法就是在进行action请求时,在像下请求一个action路径,储存上个action传来的request对象,而不需要进行任何插入或删除操作,避免了重复提交产生的问题
2、用redirect=“true”的配置
因为是结合struts的配置文件,故此方法有明显的缺点,request并不会向下传递,所以此方法只有在不传递参数的时候使用
- 2009-10-24 23:22
- 浏览 898
- 评论(0)
今天在url重写后碰到页面布局混乱,即路径不对了:
为了不改动之前的代码太大,用了以下办法,在jsp文件里加上<base href="<%=basePath%>">
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
...
- 2009-10-24 23:08
- 浏览 6144
- 评论(0)
运行环境:mysql 5.x,选择5.0及以上版本
/*----------------储存过程1,取出数据库中所有表信息-------------------------*/
/*author:henry
procedure name:sys_tables
create_date:20091023
*/
create procedure sys_tables(in databasename varchar(20))
begin
/*declare tmp_id int;*/
/*create temporary #table_field(id,fieldname) ...
- 2009-10-24 23:01
- 浏览 5469
- 评论(0)
大家知道,后台程序通常情况下无法与js进行交互,而我们一般通过组成XML的形式来传递我们想要的数据,或者说用ajax,dwr等,这里只是介绍其中的一种方法,可能不是最好的,但至少能很快的解决问题:
1.所需要取到的数据结构形为:
var object={
"strArr1":[{
"brandId":"1"},{"brandName":"三星"},{"childs":[{"phoneType":"N870"},{}]
}],
" ...
- 2009-09-03 22:09
- 浏览 871
- 评论(0)
今天写了一个oracle的语句:(以前没用过oracle)
语句A:
select w.* from tbl_Win_List w,tbl_Game_Issue g,tbl_Game m where g.game_id=m.id and g.id=w.issue_id and m.gameid=3 and g.id=(select min(p.id) from (select e.id from tbl_Game_Issue e,tbl_Game a,tbl_Win_List i where e.game_id=a.id and i.issue_id=e.id and gameid=3 and ...
- 2009-08-26 15:47
- 浏览 3525
- 评论(0)