- 浏览: 11159 次
- 性别:
- 来自: 西安
最新评论
文章列表
1.spring 注解aop配置
类:
@Aspect
public class ChangeTimeAspect {
@Autowired
private ChangeTimeBo changeTimeBo;
@Pointcut("execution(* com.zhaohuan.back.game.menuInfo.bo.MenuInfoBo.*MenuInfo(..)) ")
public void pointcutMenu(){
}
@AfterReturning(pointcut = "pointcu ...
正确做法:
1.基础Test类
@ContextConfiguration(locations={"classpath:applicationContext.xml"})
@TransactionConfiguration(defaultRollback=false)
public class TestBase extends AbstractTransactionalJUnit4SpringContextTests{
@Override
@Resource(name="gameDataSource")
public void setDataS ...
使用sitemesh装饰器时,如果有JSP页面不需要被装饰,则需要在WEB-INF下面的decorators.xml中配置改页面不需要装饰<excludes><pattern>/result.jsp*</pattern></excludes>
否则改JSP页面会出现只能显示一部分的问题。
1.简介:
apache --web服务器只能处理静态文件。在处理静态页面、处理大量网络客户请求、支持服务的种类以及可配置方面都有优势,高速并且强壮。
tomcat --app服务器可以处理静态文件,也可以处理动态。技术先进、性能稳定、开源免费。
2.apache+tomcat整合的好处:
1)提升对静态文件处理的性能
2)利用web服务器来做负载均衡和容错
3)减少应用服务器开销
4)安全-应用服务器端口不会暴露在外
3.图:
参考:
http://blog.csdn.net/lifetragedy/article/details/7698555
ht ...
http://www.ibm.com/developerworks/cn/java/j-lo-jta/#ibm-pcon
转:ibatis解决sql注入问题
- 博客分类:
- 持久层
对于ibaits参数引用可以使用#和$两种写法,其中#写法会采用预编译方式,将转义交给了数据库,不会出现注入问题;如果采用$写法,则相当于拼接字符串,会出现注入问题。
例如,如果属性值为“' or '1'='1 ”,采用#写法没有问题,采用$写法就会有问题。
对于like语句,难免要使用$写法,
1. 对于Oracle可以通过'%'||'#param#'||'%'避免;
2. 对于MySQL可以通过CONCAT('%',#param#,'%')避免;
3. MSSQL中通过'%'+#param#+'% 。
如下3种SQL语句:
[html] view pl ...
hibernate真的还是比较花费学习成本的,最近查阅了大量的资料,总算有所收获。在此,总结分享一下令众多初学者晕眩的lazy,inverse,cascade和fetch。lazy,就是延时加载。以最简单的parent和child为例子:一个parent可以有多个child,一个 ...
数据库中的表一般都是相互关联的,它们通过foreign key产生关系。
定义foreign key约束时可以指定三种引用行为:delete cascade、delete set null、delete no action,默认是delete on action。它们的含义是:
1、delete cascade : 删除主表的同时也删除子表有关的记录
这个行为适合主从表关系较为紧密的情况,比如菜单和子菜单。当主表的记录不存在时,从表的数据已经没有意义,存在也是多余,所以当删除主表时,从表相关记录也一同删除。
2、delete set null : 删除主表时将子 ...
在做web开发时,很大一部分时间都是浪费在代码改变的项目重新部署上,最近使用了JRebel的插件感觉很不错,可以快速实现热部署,节省大量的重启时间,提高开发效率。
JRebel的使用很简单,首先要下载一个jrebel.jar包,可以在网上下载破解版,放到某个目录下比如D:\work;然后进行参数的设置,
选择eclipse Window-》tomcat JVM Settings,加入以下的参数:
-Drebel.spring_plugin=true 支持spring框架
-Drebel.aspectj_plugin=true 支持aspectj
-Drebel.strut ...
1.新建项目
2.src目录下新建 Hibernate Configuration File(cfg.xml)
3.填入需要的配置信息,选择finish完成
4.选择Window->Show view->Hibernate Configurations 打开后可以看到数据库信息
5.打开Hibernate Code Generation Configurations
选择Setup,选择该项目的src目录,点击next
点击刷新,即可看到所有的数据库表的信息,如果要选择需要生成的表点击include即可,最后finish完成。
6.最后在Hibernate Code G ...
通常情况下,我们会遇到这种情况,action中处理请求时,请求不满足要求,这时需要提示用户操作不合理或者有错误。例如,用户登录系统,密码输入错误,那我们需要提醒用户密码错误,将提示信息显示到页面。简单的可以在action设置errorMsg属性实现get/set方法直接在页面显示就可以了。
另外,我们还可以通过定义拦截器的方式实现。首先定义一个异常类,用于action请求错误时抛出。然后定义struts2拦截器配置信息,创建拦截器。拦截器中使用try..catch方式可以获得action抛出的异常并取得异常信息,然后将异常信息set到action中的errorMsg属性中。
...
公司项目中很多地方都要用到取当前根目录,每次都去取这样做会比较麻烦,所以可以建一个taglib.jsp文件其中用EL表达式定义好得到当前根目录,即<c:set var="ctx" value="${pageContext.request.contextPath}"/>。
然后某个jsp页面需要的时候就可以include该taglib.jsp,直接使用${ctx}即为当前目录,如果项目中用到装饰器,则只需在装饰器页面中引入被装饰的页面都可以使用${ctx}取值。当js中也需要得到当前目录时,则可以定义var ctx='${ctx ...
eclipse中安装hibernate插件,可以通过eclipse中的install new software 来安装,另外也可以通过手动安装来实现。
1.首先下载Hibernate tools http://www.jboss.org/tools/download/stable
2.下载完成解压出两个文件夹分别是features 和 plugins ,把两个文件夹放到指定的位置,如放在D:\eclipse\hibernatetools中。
3.在eclipse安装目录下间links文件夹,若已存在则不需创建,在links文件夹建一个hibernatetools.link文件,用记事本打开后 ...