在dao层通常会抛出一个DaoException如下
class UserDao{
public void insert(User user)throws DAOException{
//dao code
}
}
在业务层调用时应该怎样处理这个DAOException呢?
个人认为用两种方式 第一种方式: 不进行处理直接抛给web层 第二种方式 转换成某种业务异常
第一种的缺点是将底层的异常暴露给了客户端 优点是web层可以明确感知到dao层发生异常并告知浏览器用户
第二种正好跟第一种相反: 缺点是web层不知道发生了dao异常,catch到 ...
业务层应该不应该出现事务控制代码 这个问题已经在业界达成共识:业务层绝对不应该出现事务控制代码,严格的说不应该出现与业务无关的代码。
在aop没有出现以前是怎样控制的呢?
似乎没有很好的方法
但是随着spring的出现aop的风靡 这个问题得到了比较优雅的解决
例如
有业务方法
bizMethod(){
//business code
dao.insert();
&n ...
- 10:09
- 浏览 (602)
- 评论 (0)
用跨域cookie实现sso 是比较简单的 主要用两个操作:登陆和登出
登陆操作 --- SSOLoginServlet来实现
用户输入用户名密码
Sso server验证其正确性
将用户名加密后写入cookie
Cookie cookie = new Cookie(SSOConst.SSOID_KEY, ssoid);
cookie.setMaxAge(maxAge);
&nb ...
Jboss3.2.3实现的SSO是基于客户端cookie和服务器端session的工作的。 基本工作流程是: 在${JBOSS_HOME}/server/default/deploy/jbossweb-tomcat41.sar/META-INF/jboss-service.xml中配置一个SSO的Valve,在待使用SSO的虚拟主机下加入如下代码: 启动Jboss时,Jboss会加载该Valve,创建一个org.jboss.web.tomcat.tc4.authenticator.SingleSignOn的实例(以下简称该实例为ourSSO)。 ourSSO实例会维护两个HashMap,分别为 ...
- 11:57
- 浏览 (902)
- 评论 (0)
sso中首先要解决的问题就是多个应用之间的身份传递,即应用A中的登录信息怎么传到应用B中呢? 跨域Cookie是一种解决方法
跨域cookie是指在几个应用之间共享一个Cookie,这样在各个应用之间切换时就可以通过获取这个公用的cookie来检查用户是否登录过。
那么cookie中的数据是否需要加密呢? 我们来看一个例子
sso.ecc.com
A.ecc.com
B.ecc.com
这三个应用共享一个Cookie('loginId', '1234');
如果是这样简单的明文那么别人可以很容易的在自己的应用中写这么一个
很多人说共享cookie不安全 它到底不安全在哪儿呢?
思考中。。。
- 17:40
- 浏览 (822)
- 评论 (1)
正常的cookie只能在一个应用中共享,即一个cookie只能由创建它的应用获得。
1.可在同一应用服务器内共享方法:设置cookie.setPath("/");
本机tomcat/webapp下面有两个应用:cas和webapp_b,
1)原来在cas下面设置的cookie,在webapp_b下面获取不到,path默认是产生cookie的应用的路径。
2)若在cas下面设置cookie的时候,增加一条cookie.setPath("/");或者cookie.setPath("/webapp_b/");就可以在webapp_b下面获取到cas设置的cookie了。
...
- 浏览: 88146 次
- 性别:

- 来自: 北京

- 详细资料
搜索本博客
我的相册
u=3528569133,1587051000&gp=38.jpg
共 2 张
共 2 张
最新评论
-
webwork ww:iterator 标签 ...
多谢!解决了一个问题~~
-- by huguohuan -
sso研究1-------跨域cook ...
你这不能算跨域,老大
-- by willfcareer2 -
刚上班一个月 遭遇新公司 ...
找工作的确不好受!现在想想找工作的那段时光都头大!
-- by ttxiangyou -
Js 事件冒泡
又受教了……不错,学习学习……
-- by xieboxin -
刚上班一个月 遭遇新公司 ...
够损,哈哈,加油~
-- by jizhuayazhua






评论排行榜